c#-请解释WCF中的客户证书的概念
作者:互联网
我是WCF和Web安全的新手,因此,我非常感谢您对以下概念进行清晰的解释:
我了解,如果要创建与网站的安全连接,则需要具有来自可信授权机构的SSL证书,例如Verisign,Thawte等
现在,我正在编写一个具有中央Web服务的SaaS应用程序,以及与该中央Web服务连接的许多客户端应用程序.我想安全地进行客户端和服务器之间的所有通信,因此我的服务器上有一个SSL证书.
但是WCF现在带有“客户端证书”的概念,这似乎是验证我的服务器端证书所必需的,而我完全不理解.该客户端将由世界各地的一些匿名家伙下载.我不知道他会或不会安装什么证书-也不在乎!我想要的只是为了确保客户端和服务器之间的通信安全.我应该以某种方式在客户端上安装自己的证书吗?
有人可以向我解释这些概念吗?
(当您使用它时,我有一个相关的问题here,上面有赏金.)
解决方法:
不用担心-不需要客户端证书来验证服务器证书.只要您要实现的目标就是确保客户端知道他(她)正在与您的服务器通信,并且没有其他人可以窃听或更改通信,那么您只需要服务器证书即可.但是,正如我在对您的相关问题的回答中所描述的那样,客户端确实需要信任服务器证书(这可能是您的问题所在).
当服务器希望以比使用密码更安全的方式验证客户端身份时,客户端证书开始起作用. SSL / TLS(包括HTTPS,简称为HTTP over SSL / TLS)确实支持客户端证书,通常被称为“双面SSL”或“具有客户端身份验证的SSL”.所有主要的浏览器都支持此功能,WCF客户端也支持此功能,但是正如我之前所说,它不是必需的(除非服务器明确要求).
标签:ssl-certificate,wcf,c 来源: https://codeday.me/bug/20191102/1994894.html