1

对于任何不是来自本地网络的请求,我需要在 IIS 的站点上要求客户端证书。任何本地请求都不应要求客户端证书。有没有办法在 IIS 中做到这一点?我正在考虑将 IIS 配置为允许客户端证书但不需要它们,然后使用自定义 HttpModule 来检查原始 IP 地址并回退任何不来自本地网络且不包含客户端证书的内容。

那会奏效吗?你会如何解决这个问题?

4

1 回答 1

0

我有几种方法可以解决这个问题。你可以选择你喜欢的:

  1. 复制网站。一个应该要求客户端 SSL,另一个则不需要。第二个应该禁用外部访问。

  2. 为本地机器安装客户端 ssl。这可能是最简单的,除非您在获取客户端证书时遇到一些基础架构问题。

  3. 当 IIS 需要客户端 SSL 时,它会使用“需要客户端 ssl”类型的消息来响应所有 HTTP 请求。客户端(例如浏览器)然后通过传递所需的证书来更新其请求(例如显示 IE 证书对话框)。您可以使用 HttpModule 为本地请求捕获这些消息。

于 2009-09-02T02:50:20.213 回答