WCF - 是否需要服务证书来验证客户端?

use*_*265 9 wcf certificate client-certificates

我认为我的WCF身份验证模型存在差距,希望有人可以帮我填写.

所以,我正在创建一个WCF服务,并希望客户端使用证书和消息级安全性进行身份验证.我希望使用链信任来验证这些服务,以便我不需要在服务上安装每个客户端证书.目前,我对服务验证客户端不感兴趣.

以下是我对需要做什么的理解:

  1. 客户端需要由服务端信任的CA签署的证书.
  2. 该服务需要为该CA安装CRL.
  3. 服务配置应启用消息安全性,指定clientCredentialType ="Certificate"和链信任以进行客户端证书验证.
  4. 客户端配置应启用消息安全性,指定clientCredentialType ="Certificate",以及告知如何在商店中查找客户端证书的端点行为.

客户端向服务发出请求,发送其证书.该服务发现客户端的证书由其受信任的CA签名并允许请求通过.

现在,我发现的这个过程的所有演练还包括为服务创建证书的步骤.他们都没有解释这是什么,这是在扔我.如果我只想验证客户端,为什么需要服务证书?

Yar*_*veh 9

你是对的.理论上,不需要服务器证书,实际上wcf强制您使用一个.好消息是您应该为服务器使用虚拟证书,并将ProtectionLevel设置为SignOnly.我建议阅读这篇文章,该文章讨论了类似的情况并且大部分都是相关的.