BasicHttpsBinding和WsHttpBinding与Transport安全性有什么区别?

dqm*_*dqm 31 .net wshttpbinding

由于BasicHttpsBinding是.net 4.5的新功能,我似乎无法找到两者之间的差异.

Phi*_*ppe 42

实际上,这两种绑定非常相似.唯一真正的区别是,要求HTTPS,端点需要配置BasicHttpBinding,您可以在其中将安全模式定义为Transport(或任何其他有效枚举).在端点上使用BasicHttpsBinding时,安全模式默认为Transport,客户端凭据类型设置为None.

所以这是WCF 4.5之前的配置:

<system.serviceModel>
  <bindings>
    <basicHttpBinding>
      <binding name="Service.BasicHttp.BindingConfig">
        <security mode="Transport" />        
      </binding>
    </basicHttpBinding>
  </bindings>
  <services>
    <service name="ServiceImpl">
      <endpoint address="" binding="basicHttpBinding" bindingConfiguration="Service.BasicHttp.BindingConfig"
                name="IService.Http" contract="IService">
      </endpoint>
    </service>
  </services>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

使用WCF 4.5,相同的配置可以简化为:

<system.serviceModel>
  <services>
    <service name="ServiceImpl">
      <endpoint address="" binding="basicHttpsBinding" name="IService.Http" contract="IService">
  </endpoint>
</service>
  </services>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

请参阅WCF 4.5中的新功能?BasicHttpsBinding以获取更多细节.

  • 有趣.这个答案比较了basicHttpsBinding和basicHttpBinding,但原始问题标题询问了basicHttpsBinding和WSHttpBinding(WS = WebService)之间的区别. (6认同)