我正试图将WCF Web服务引用添加到C#项目中,其中WSDL在客户端证书后面是安全的。我已经成功地将证书添加到SOAPUI中,并进行了很好的调用,但当我尝试在Visual Studio中添加引用时,不会提示我选择证书。
如何在Visual Studio 2022社区中添加需要客户端证书的WCF服务端点?
使用如下端点行为指定客户端证书:
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="endpointCredentialsBehavior">
<clientCredentials>
<clientCertificate findValue="Cohowinery.com"
storeLocation="LocalMachine"
x509FindType="FindBySubjectName" />
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_ICalculator" >
<security mode="Message">
<message clientCredentialType="Certificate" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="http://machineName/Calculator"
behaviorConfiguration="endpointCredentialsBehavior"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_ICalculator"
contract="ICalculator"
name="WSHttpBinding_ICalculator">
</endpoint>
</client>
有关详细信息,请查看"使用证书客户端的消息安全性"或"使用证书身份验证的传输安全性"。