使用反向代理的客户端证书认证

问题描述:

我为我的客户端和服务器使用SSL相互认证。现在我想添加一个反向代理。据我所知,反向代理无法将客户端证书转发到后端Web服务器。我能解决这个缺点吗?例如。我的反向代理服务器可以将客户端信息发送到我的后端Web服务器,以便让我的服务器知道客户端正在使用哪种证书?使用反向代理的客户端证书认证

我使用IIS 7.5。

如果您在意:是的,您可以:Piotr Walat在他的伟大文章中解释了它的工作原理。

http://www.piotrwalat.net/client-certificate-authentication-in-asp-net-web-api-and-windows-store-apps/

如果你得到一个403.7回来检查是否安装客户端证书。

如果它仍然不起作用,您的CA列表可能太长(http://support.microsoft.com/kb/933430)。最简单的解决方案是在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL的服务器注册表中添加名为SendTrustedIssuerList的DWORD(不是QWORD!),并将其设置为0。这将阻止服务器发送一个列表,让客户端从任何已安装的客户端证书中进行选择。

+0

我不认为链接解释了有关反向代理场景的任何内容。 – ragche