c# - 如何发送客户端特定的受信任证书颁发机构来决定用户可以在 asp.net web 表单站点上使用哪些客户端证书

标签 c# asp.net security iis ssl

我想创建一个使用 ssl 客户端证书的 asp.net web 表单应用程序。我理解它的方式(可能是错误的)是在 ssl 握手期间,服务器向客户端发送受信任的证书颁发机构列表。客户端然后使用此列表来查看它也信任哪个 CA,然后 Web 浏览器询问用户它想要使用哪个客户端证书(如果有超过 1 个匹配的 CA)。

有没有一种方法可以将代码添加到 ASP.NET Web 应用程序,以便仅将 1 个特定的 CA 作为可信的发送下来?我假设服务器将拥有许多受信任的流行 CA,并将它们全部发送出去;但我只想将特定的发送给客户。

最佳答案

客户端证书的协商发生在 ASP.Net 参与请求之前。配置位于 HTTP.sys 监听器上 Certificate Trust Lists .

但是,IIS 5, 6, and 7 会忽略此行为,并且一直是disabled by default on Windows 8 / 2012 and later .

关于c# - 如何发送客户端特定的受信任证书颁发机构来决定用户可以在 asp.net web 表单站点上使用哪些客户端证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31728649/

相关文章:

c# - 验证方法访问权限的最优雅方法是什么 (C#.Net)

security - 贵公司如何做 "Enterprise"密码管理?

c# - Google Play服务-不能再与IL2CPP一起正常使用

c# - 在 .NET 中从 PDF 中读取文本

c# - 在 Visual Studio 2012 调试期间,CSS 未显示在 ASP.Net MVC4 上

c# - 防止表单在服务/控制台中显示

c# - 将网格绑定(bind)到匿名 LINQ 结果,然后将更改提交到数据库?

asp.net - 扩展器不能位于与它扩展 asp.net 的控件不同的 UpdatePanel 中

asp.net - 路由到另一个页面上的 anchor

python - mpld3 的数据安全