我需要在IIS中的站点上要求客户端证书,以获取不是来自本地网络的任何请求。任何本地请求都不应要求客户端证书。有没有办法在IIS中执行此操作?我正在考虑配置IIS以允许客户端证书但不要求它们,然后使用自定义HttpModule来检查原始IP地址并回送不是来自本地网络但不包含客户端证书的任何内容。
那会有用吗?你会如何解决这个问题?
答案 0 :(得分:0)
我有几种方法可以解决这个问题。你可以选择你喜欢的东西:
复制网站。一个应该要求客户端SSL而另一个不应该。第二个应禁用外部访问。
为本地计算机安装客户端ssl。这可能是最简单的,除非您在获取客户端证书时遇到一些基础结构问题。
当IIS需要客户端SSL时,它会响应所有带有“need client ssl”类型消息的HTTP请求。然后,客户端(例如浏览器)通过传递所需的证书来更新其请求(例如,显示证书的IE对话框)。您可以使用HttpModule为本地请求捕获这些消息。