我是WCF的新手,并且很难理解证书身份验证和加密 .
我有一个使用clientcredentialtype =“Certificate”的WCF服务 .
我使用makecert工具生成了CA证书,服务器和客户端证书 .
该服务托管在IIS中 .
当我为我的网站使用SSl时,我收到了一个安全性异常:
Could not establish trust relationship for the SSL/TLS secure channel with authority 'fqdn;.
System.Net.webException: The underlying connection was closed:
Could not establish trust relationship for the SSL/TLS secure channel. --->
System.Security.Authentication.AuthenticationException: The remore
certificate is invalid according to the validation procedure.
SSl证书和WCF证书来自不同的证书颁发机构 .
为什么抛出安全异常?
如何在客户端和服务器之间进行通信以及使用哪些证书?我真的很困惑 . 任何帮助将不胜感激 .
1 回答
MakeCert 工具创建自签名证书,默认情况下不受信任,因为证书颁发机构没有签名证明证书信息的合法性 .
当您的客户端进行连接时,除非禁用证书验证或您推出自己的检查方案,否则使用典型的验证过程将失败 . 也就是说,根CA通过证书信任链不信任您的证书 .