0

有谁知道 NTLM 身份验证在 WCF/basicHttp 中究竟是如何工作的?我想知道是否为每个服务方法调用传递了用户凭据,或者是否某种安全令牌用于后续服务方法调用。

我正在使用的确切绑定配置:

<bindings>
  <basicHttpBinding>
    <binding name="winAuthBasicHttpBinding">
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Ntlm" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>

我在 MSDN 参考资料中找到了这种类型的配置。但我不确定这是否是一个好主意。另一种方法是提供一种自定义的 GetAuthenticationToken() 方法来为客户端的所有后续请求提供安全令牌。这可以通过企业库 - 安全应用程序块来完成。

更多详细信息:浏览器/Silverlight 客户端正在使用该服务。

4

1 回答 1

1

在这种情况下,每个方法调用都将被验证。

您正在谈论的是所谓的“安全会话”,其中客户端对服务器进行一次身份验证,然后使用公共令牌进行后续交换。然而,该安全会话功能仅适用于 wsHttpBinding - 不适用于 basicHttpBinding。

马克

于 2009-05-10T20:15:49.957 回答