我使用netTcpBindind在服务器中创建了一个WCF服务。我在办公室运行WCF客户端时能够访问该服务。但我收到错误消息“服务器已拒绝客户端凭据”。当我在家中使用VPN连接到我的办公室网络时运行相同的WCF客户端。 (具有相同域的Office笔记本电脑)。 注意:我在家里和办公室使用相同的笔记本电脑。 (域名\迪克森)
以下是服务器中运行的WCF服务配置设置。
<services>
<service behaviorConfiguration="DTATDataEngine.DTATServiceBehaviour" name="DTATDataEngine.DTATService">
<endpoint address="" binding="netTcpBinding" bindingConfiguration=""
contract="DTATDataEngine.IDTATService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration=""
contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://XXX.XXX.XXX.XXX:8523/DTATService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="DTATDataEngine.DTATServiceBehaviour">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
有人可以帮我这个!
非常感谢, 迪克森
答案 0 :(得分:0)
<bindings>
部分的位置,更重要的是<security>
的{{1}}部分?我猜net.tcp的默认安全性是Transport,它使用Windows客户端凭据。
您的工作PC登录到域并因此经过身份验证,而您的家庭PC只在工作组中,无法对域中运行的服务进行身份验证。