Wcf X509证书实施最佳实践

Wcf X509证书实施最佳实践,wcf,wcf-security,x509certificate2,Wcf,Wcf Security,X509certificate2,首先,感谢所有那些耐心的技术人员试图帮助不知名的人 第二,我有一个wcf服务,应该只由我们公司已知的几个客户(10)使用。此wcf服务具有X509证书“CN=ABCD”。现在,它希望依次从客户端接收证书以使用此服务。下面是设计问题 我应该创建一个证书吗 “CN=ABCD”,然后右键单击它 并导出为pfx文件和 分发给客户 有人说要在代码和 有人说要在配置中验证 更好吗 我怎么知道哪个客户是 作为证书调用具有相同的 我的公司的名字 分发 两者的区别是什么 文件和.pfx文件 将证书传递给 客户,我

首先,感谢所有那些耐心的技术人员试图帮助不知名的人

第二,我有一个wcf服务,应该只由我们公司已知的几个客户(10)使用。此wcf服务具有X509证书“CN=ABCD”。现在,它希望依次从客户端接收证书以使用此服务。下面是设计问题

  • 我应该创建一个证书吗 “CN=ABCD”,然后右键单击它 并导出为pfx文件和 分发给客户
  • 有人说要在代码和 有人说要在配置中验证 更好吗
  • 我怎么知道哪个客户是 作为证书调用具有相同的 我的公司的名字 分发
  • 两者的区别是什么 文件和.pfx文件
  • 将证书传递给 客户,我会同时给他们吗 和.pfx文件
  • 我怎么能只赢一场 客户端是否过期
  • 我的公司已经有证书了 比如*.fdfd.org。我能用这个当礼物吗 我的X509证书,而不是 生成一个
  • 很多问题
    但由于很多挫折,我想征求开发人员的意见,因为我无法获得正确的信息

    • 您必须为该服务拥有单独的证书,并且您应该为每个客户端拥有一个证书。一旦您共享了服务的私钥,您的安全性就消失了
    • 您可以将客户端证书的公钥安装到机器\受信任的人(具有任何受信任证书的客户端都可以访问您的服务),也可以使用自定义证书验证器(仅消息安全性-根据您的需要,您可能使用消息安全性)仅验证这10个证书
    • 只有在为每个客户端创建单独的证书时,这才是可能的。也可以将证书与支持用户名和密码结合起来,但它需要非常高级的WCF配置,并且仍然在多个客户端之间共享单个证书是一个错误的决定
    • 证书只是一些信息的容器——用于非对称加密的密钥。cer仅包含可自由分发的公钥-您可能必须在客户端之间分发服务证书的.cer文件。pfx包含公钥和私钥,并且必须尽可能地加以保护。一旦.pfx文件被破坏,证书将不再安全,必须更换。因此,您必须保留服务的.pfx(安装在证书凭据存储中),并且每个客户端必须保留其.pfx
    • 如果您为客户端创建证书,您将至少向它们传递.pfx。显然,一旦您通过不安全的电子邮件发送此类证书,就会严重损害安全性
    • 如果一个客户端过期,您将从受信任证书中删除其证书。如果您有自己的证书颁发机构(如果要为客户端创建证书,您应该拥有该机构)
    • 如果您的服务位于fdfd.org上,您可能可以使用它,但只能用于该服务

    太棒了……这超出了需要。谢谢你精彩的解释。我很感激。谢谢你,钱德