WCF Web服务以及SSL和证书

时间:2011-08-31 16:12:38

标签: wcf web-services ssl

我是创建WCF Web服务的新手。我想创建一个必须在https上运行的WCF Web服务,以实现更安全的数据传输。我有一个带GoDaddy.com的虚拟服务器并安装了GoDaddy SSL证书。我不希望Web服务的用户必须在他们的机器上安装任何证书来调用该服务。我只是希望它是一个安全的传输。我在这里走在正确的轨道上吗?

我也不希望服务运行时发生任何身份验证。在他们发送给服务的XML中,将包括帐户信息,服务将确定他们是否有权更新服务中的数据。如何关闭所有授权并允许用户通过https运行服务并且不需要任何证书?

1 个答案:

答案 0 :(得分:1)

仅当客户信任颁发证书的机构时,才需要用户端的证书。首先,它完全不受你的控制。通常客户信任一些众所周知的证书颁发机构,如VeriSign等。因此,如果您的GoDaddy证书在其证书链中具有可信任权限客户端将不必安装证书,但如果它只是由一些GoDaddy的证书颁发机构颁发,则客户端不必信任它

WCF服务中的身份验证和授权“按需”使用,因此您不必使用它。只需使用BasicHttpBinding(SOAP)或WebHttpBinding(REST)并将其安全模式设置为Transport,将ClientCredentialType设置为None,如:

<bindings>
  <basicHttpBinding>
    <binding name="secured">
      <security mode="Transport">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>

将此绑定配置用于服务的端点。