Wcf X509证书实施最佳实践
首先,感谢所有那些耐心的技术人员试图帮助不知名的人 第二,我有一个wcf服务,应该只由我们公司已知的几个客户(10)使用。此wcf服务具有X509证书“CN=ABCD”。现在,它希望依次从客户端接收证书以使用此服务。下面是设计问题Wcf X509证书实施最佳实践,wcf,wcf-security,x509certificate2,Wcf,Wcf Security,X509certificate2,首先,感谢所有那些耐心的技术人员试图帮助不知名的人 第二,我有一个wcf服务,应该只由我们公司已知的几个客户(10)使用。此wcf服务具有X509证书“CN=ABCD”。现在,它希望依次从客户端接收证书以使用此服务。下面是设计问题 我应该创建一个证书吗 “CN=ABCD”,然后右键单击它 并导出为pfx文件和 分发给客户 有人说要在代码和 有人说要在配置中验证 更好吗 我怎么知道哪个客户是 作为证书调用具有相同的 我的公司的名字 分发 两者的区别是什么 文件和.pfx文件 将证书传递给 客户,我
但由于很多挫折,我想征求开发人员的意见,因为我无法获得正确的信息
- 否您必须为该服务拥有单独的证书,并且您应该为每个客户端拥有一个证书。一旦您共享了服务的私钥,您的安全性就消失了
- 您可以将客户端证书的公钥安装到机器\受信任的人(具有任何受信任证书的客户端都可以访问您的服务),也可以使用自定义证书验证器(仅消息安全性-根据您的需要,您可能使用消息安全性)仅验证这10个证书
- 只有在为每个客户端创建单独的证书时,这才是可能的。也可以将证书与支持用户名和密码结合起来,但它需要非常高级的WCF配置,并且仍然在多个客户端之间共享单个证书是一个错误的决定
- 证书只是一些信息的容器——用于非对称加密的密钥。cer仅包含可自由分发的公钥-您可能必须在客户端之间分发服务证书的.cer文件。pfx包含公钥和私钥,并且必须尽可能地加以保护。一旦.pfx文件被破坏,证书将不再安全,必须更换。因此,您必须保留服务的.pfx(安装在证书凭据存储中),并且每个客户端必须保留其.pfx
- 如果您为客户端创建证书,您将至少向它们传递.pfx。显然,一旦您通过不安全的电子邮件发送此类证书,就会严重损害安全性
- 如果一个客户端过期,您将从受信任证书中删除其证书。如果您有自己的证书颁发机构(如果要为客户端创建证书,您应该拥有该机构)
- 如果您的服务位于fdfd.org上,您可能可以使用它,但只能用于该服务