当 ServiceCertificate.Authentication.CertificateValidationMod



我正在使用WCF生成的客户端来使用Apache Axis(我认为(Web服务。为了使通信正常工作,我必须设置很多规范配置、自定义绑定、证书等。

好吧,为了执行身份验证(使用 SOAP 标头(,我牢记的内容:我用我的私钥对某些东西(我认为是令牌(进行签名,并使用我的公钥返回端点检查(我必须首先将我的公钥发送到服务(。服务端点也是如此:服务必须使用我的公钥检查身份验证。

因此,他们给了我他们的公共证书密钥,以检查端点是否是它声称的身份。设置"服务证书.身份验证.证书验证模式"中有一个选项,所以我的问题是如果我将此选项设置为"无"会发生什么?设置此选项时可能会出现哪些特定风险? 例如:如果连接是由代理建立的,则此代理是否有可能取代我要向其发送请求的服务?

提前感谢,

如果禁用证书验证,通过将ServiceCertificate.Authentication.CertificateValidationMode设置为none,则应用程序(客户端(将容易受到"中间人"攻击。 如果不进行验证,应用程序将无法确定服务器的身份,因此客户端无法确定终结点是否为真实站点。

您可能希望将CertificateValidationMode设置为PeerOrChainTrust,而不是禁用 SSL 证书验证,其中"如果证书位于受信任的人存储中,或者如果链构建到受信任的根存储中的证书颁发机构,则证书有效"。 这样,如果证书来自有效的第三方 (威瑞信(,您可以依靠证书链来验证根证书。否则,可以将服务器证书导入到证书存储的"受信任人"中。

相关内容

  • 没有找到相关文章

最新更新