我们在IIS中托管了一个wcf服务。我们希望将客户端调用者限制为已知客户端,因此我们实现了自定义X509CertificateValidator。该服务配置了WSHttpBinding绑定,IIS设置为SSL并需要客户端证书。一切都按预期工作。
但是,我们发现我们在同一站点内托管了其他不需要客户端证书的aspx页面。它打破了我们的使用模式。
我读到将IIS设置从Required Client Certificate转为Accept Client证书不起作用。我尝试了这一点,同时仍然从客户端传递客户端证书,它似乎调用我的自定义验证器。但是,使用wcf代理库,我无法在没有客户端证书的情况下调用它来验证是否未通过。
如果"接受客户证书"不是一种选择,最好的选择是什么?添加某种类型的消息检查器?
非常感谢。