【发布时间】:2014-11-09 09:12:17
【问题描述】:
当使用服务器和客户端证书保护 WCF 服务时,有一种简单的方法可以确保服务提供商证书(服务器证书)的身份,方法是将发件人证书的公钥或指纹与预期值进行比较。
在http://msdn.microsoft.com/en-us/library/ff648360.aspx 上,这在第 8 步中进行了说明。您可以在端点部分中使用身份元素配置 app.config 文件,您可以在其中传递服务器证书的预期编码指纹值。接收到的服务证书和预期值之间的比较确保我正在与预期的服务器通信。
但现在我考虑服务器的观点。服务器的证书存储中可以有多个 RootCA 证书。如果从请求者发送的客户端证书由这些 RootCA 之一颁发(并签名),我的服务将信任此客户端证书。如何确保我的服务仅信任由一个确定的 RootCA 颁发的证书?以及如何配置一个受信任的 RootCA?
(我认为这可能是某种等效的证书固定方式,用于在 RootCA 上颁发的客户端证书)
【问题讨论】:
标签: wcf https ssl-certificate digital-certificate client-certificates