我有一个WCF客户端应用程序在Windows 2008 Server R2上运行在IIS 7.5下运行的WCF Web服务。我有一个"客户"客户端计算机上的证书,以及"服务器"服务器计算机上的证书。我已成功配置IIS和客户端应用程序以直接使用" 1-way" SSL。但是,我无法获得" 2-way" SSL(需要客户端证书的SSL)才能工作。
我已获取客户端证书,导出为Base-64,格式化生成的文本字符串,并将其作为IIS服务器上的IIS客户端证书映射下的条目添加。我将此绑定到Windows用户,并且允许用户访问运行Web服务的文件夹。我已经在IIS管理器下的站点级别完成了所有这些配置。
当我禁用匿名身份验证时,问题就出现了。如果我这样做,那么IIS给我一个500的返回码和一个伴随的错误,告诉我必须启用匿名身份验证。这不是我想要的。如果我重新启用匿名身份验证,则使用有效客户端证书的任何客户端都可以进行Web服务调用。我想限制只能向那些提供我已映射到Windows用户的客户端证书的客户端调用服务的能力。
还有其他人遇到过这个吗?
谢谢!
布赖恩