【问题标题】:WCF - Is a service certificate needed to authenticate clients?WCF - 验证客户端是否需要服务证书?
【发布时间】:2012-06-13 18:10:00
【问题描述】:

我认为我的 WCF 身份验证心智模型存在差距,希望有人能帮我填补。

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

这是我对执行此操作所需的理解:

  1. 客户端需要一个由服务端信任的 CA 签名的证书。
  2. 该服务需要为该 CA 安装 CRL。
  3. 服务配置应启用消息安全性,指定 clientCredentialType="Certificate",并为客户端证书验证指定链式信任。
  4. 客户端配置应启用消息安全性,指定 clientCredentialType="Certificate",以及告诉如何在存储中查找客户端证书的端点行为。

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

现在,我发现此过程的所有演练还包括为服务创建证书的步骤。他们都没有解释这是为了什么,这让我很生气。如果我只想对客户端进行身份验证,为什么需要服务证书?

【问题讨论】:

    标签: wcf certificate client-certificates


    【解决方案1】:

    你是对的。理论上不需要服务器证书,实际上 wcf 强制您使用一个。好消息是您应该为服务器使用一个虚拟证书,并将 ProtectionLevel 设置为 SignOnly。我建议阅读this article,它讨论了类似的场景并且最相关。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 2010-11-19
      • 1970-01-01
      • 1970-01-01
      • 2011-04-09
      • 2013-10-07
      相关资源
      最近更新 更多