如何配置WCF以使用HTTP与客户端证书?

时间:2012-12-14 11:14:52

标签: c# asp.net wcf ssl transport

如何配置WCF使用HTTP(不带ssl)和客户端证书?

在服务方面,我尝试了以下方法:

<bindings>
            <basicHttpBinding>
                <binding name="binding1">
                    <security mode="TransportCredentialOnly">
                        <transport clientCredentialType="Certificate"></transport>
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings

但它抱怨说:

Certificate-based client authentication is not supported in TransportCredentialOnly security mode. Select the Transport security mode. 

谢谢,

2 个答案:

答案 0 :(得分:0)

我认为我完全不了解你的问题。

如果要配置绑定的安全性(basicHttpBinding)以使用客户端证书(对客户端进行身份验证),据我所知,在http上执行此操作的唯一方法是使用消息安全性,您可以找到wcf samples中的示例。

如结果异常所述,以及on a Distributed Services Support Team blog

  

注意:使用TransportCredentialOnly模式,您无法使用基于证书的客户端身份验证:    TransportCredentialOnly安全模式不支持基于证书的客户端身份验证。

答案 1 :(得分:0)

我从您的问题中了解到您希望使用CA(证书颁发机构)尚未颁发的自定义证书。

在这种情况下,您需要在服务器上安装相同的内容,如果您在.NET中使用它们,同样也需要在IIS中附加您的网站。

希望这有效