0

在 IIS 7 中,我为站点创建了一个 https 绑定,并且我想要求 https 的客户端证书并仍然保留我的 http 端点。

也就是说,我想为我的 https 端点要求客户端证书,而不需要全面使用 SSL 并且不允许访问我的 http 端点(通过 SSL 设置中的“需要 SSL”)。这可能吗?

4

1 回答 1

1

客户端证书通常用于 2-way SSL,因此不仅服务器而且客户端也使用其私钥加密流量。

如果您不想全面执行 https,那么您可以尝试的一件事是接受客户端证书(请参阅 SSL 设置),然后在您的应用程序中实施证书验证。

有关详细信息,请参阅 MSDN 上的 Request.ClientCertificate

if (HttpContext.Current.Request.IsSecureConnection)
{
// it's SSL, so check the client cert
bool authorized = IsClientCertAuthorized(HttpContext.Current.Request.ClientCertificate)
}

然后根据需要实现该方法。

注意:我还没有测试过,所以如果你尝试过,请评论。

于 2012-10-03T04:15:17.847 回答