我一直在处理连接到不同客户端提供的URL的Web服务,到目前为止,所有这些都是使用单向身份验证完成的。现在我被要求为其中一个客户端启用双向(相互)身份验证。我做了很多研究和阅读,但仍然对很多事情感到困惑。
我可以按照各种不同文章的说明在我的本地机器上成功测试。但问题是现在将其部署在生产中。
这是我为测试所做的:我创建了一个测试Web服务主机并为其分配了一个自签名证书,并创建了一个客户端来测试它。在此之后,我使用makecert创建了一个客户端证书,并验证它是通过MMC安装的。然后我修改了我的主机应用程序,只允许拥有证书并且从客户端测试的客户端看到由于未提供客户端证书而拒绝连接。然后我修改了客户端应用程序中的绑定以包含证书名称,并且我能够成功连接到主机。所以这就完成了本地托管。
现在真正的问题。技术团队将在服务器上的“cert store”中创建证书。我需要再次测试以确保一切按预期工作。我们有一些不同的开发人员都希望在他们的机器上测试他们的本地代码。我们都可以以某种方式使用相同的证书吗?我不认为我们会被允许导入证书,但我可以给他们什么建议,以便我们所有人都可以使用相同的证书?
我也对Windows证书和IIS证书之间的差异等问题感到困惑。 IIS证书有哪些优势?
感谢您的帮助!
编辑:在IIS上安装之间的区别之一可能是通过SSL连接访问托管网站吗?这意味着如果它只是一个客户端证书,我们真的不需要在IIS上安装。这是对的吗?