2012-06-13 177 views
8

我认为我的WCF验证思维模型存在差距,希望有人可以帮我填写它。WCF - 是否需要验证客户端的服务证书?

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

这是我做这个什么需要了解:

  1. 客户端需要通过对服务端信任的CA签名的证书。
  2. 服务需要为该CA安装CRL。
  3. 服务配置应打开消息安全性,指定clientCredentialType =“证书”和客户端证书验证的链信任。
  4. 客户端配置应该打开消息安全性,指定clientCredentialType =“Certificate”以及告知如何在存储中查找客户端证书的端点行为。

客户端向服务器发送请求,发送其证书。该服务看到客户的证书由其可信任的CA签署并通过请求。

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

回答

7

你说得对。理论上,不需要服务器证书,实际上wcf会强制你使用一个证书。好消息是您应该为服务器使用虚拟证书并将ProtectionLevel设置为SignOnly。我建议阅读this article,其中谈到了类似的情况并且主要是相关的。

+0

太棒了,谢谢 - “因为WCF这么说”适合我。 =) – user1454265

+0

你是上帝......感谢那篇文章 – DdW

相关问题