有谁知道NTLM身份验证在WCF / basicHttp中的确切运作方式?我想知道是否为每个服务方法调用传递了用户凭据,或者是否将某种安全令牌用于后续服务方法调用 .
我正在使用的确切绑定配置:
<bindings>
<basicHttpBinding>
<binding name="winAuthBasicHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm" />
</security>
</binding>
</basicHttpBinding>
</bindings>
我在MSDN参考上找到了这种类型的配置 . 但我不确定这是一个表现明智的好主意 . 另一种方法是提供一种自定义GetAuthenticationToken()方法,为客户端的所有后续请求提供安全令牌 . 这可以通过企业库 - 安全应用程序块来完成 .
更多详细信息:Browsers / Silverlight客户端正在使用该服务 .
1 回答
在这种情况下,每个方法调用都将被验证 .
您所谈论的将是所谓的“安全会话”,其中客户端对服务器进行一次身份验证,然后使用公共令牌进行后续交换 . 但是,安全会话功能仅适用于wsHttpBinding - 而不是basicHttpBinding .
渣