我遇到的问题是内部用户可以访问内部网络以外经常出差的用户的信息。允许外部用户与内部服务进行通信
现在工作的方式是我们有一个程序访问一个WCF服务,该服务托管在面向公众的安全网站上。当用户使用我们的内部网络时,服务工作正常。但是,一旦用户离开网络(比如说去酒店),他们会得到401:不是授权错误。
具有以下根本原因有时
- 请求是未经授权的客户端身份验证方案“匿名”。收到的头是'NTLM,协商'
- 系统无法联系域控制器来处理身份验证请求
- 此工作站与主域之间的信任关系失败。
有一种变通方法,我不会有太多完全高兴,这是手动添加凭据(域/密码为用户名)到Windows凭据管理器,它的工作原理,直到地步凭据被清除,然后该过程再次开始。发生这种情况时,用户可以浏览浏览器中的服务并在程序中成功使用它们。
这是我们正在使用WCF服务
<basicHttpBinding>
<binding name="secureHttpBinding" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" maxBufferPoolSize="2147483647">
<security mode="Transport">
<transport clientCredentialType="Windows" />
</security>
</binding>
</basicHttpBinding>
它似乎基于Windows凭据管理器修复,我们应该能够使用用户的Active Directory帐户来管理身份验证此服务的绑定。
我只是想知道是否可以部署一项服务,允许远程用户访问,基于他们已成功登录到我们的域名帐户。