WCF HTTP请求未经授权使用客户端身份验证方案“Negotiate”

时间:2014-09-12 03:45:53

标签: wcf authentication iis ntlm http-negotiate

我在Windows上使用Windows Aut托管了WCF服务,我可以从我的本地计算机上的客户端应用程序(WPF)连接到该服务,但是当我尝试从其他计算机访问该服务时,我得到了跟随错误

HTTP请求未经授权使用客户端身份验证方案' Negotiate'。从服务器收到的身份验证标题是“Negotiate,NTLM'”。 ---> System.Net.WebException:远程服务器返回错误:(401)Unauthorized。

我检查了我的IIS中的提供程序,并且#34; Negotiate"是第一个,然后是" NTLM"。我也尝试删除" NTLM"但这也没有帮助。

我在App.config中有以下配置

 <bindings>
 <basicHttpBinding>
        <binding name="BasicHttpBinding" maxReceivedMessageSize="2147483647"
          receiveTimeout="00:30:00" sendTimeout="00:30:00"
          openTimeout="00:10:00" closeTimeout="00:10:00">
          <readerQuotas maxStringContentLength="2147483647" maxArrayLength="20971520" />
            <security mode="TransportCredentialOnly">
              <transport clientCredentialType="Windows" />
            </security>
        </binding>
  </basicHttpBinding>    

1 个答案:

答案 0 :(得分:-1)

您可能需要在IIS中启用匿名访问。