I have created a WCF Service in a Server using netTcpBindind. I am able to access the service when I run the WCF client at office. But I am getting the error message “The server has rejected the client credentials.” when I run the same WCF Client at home connected to my office network using VPN. (Office Laptop with same Domain).
Note: I use the same laptop at home and in office. (Domainname\Dickson)
Here is the WCF Service Configuration Settings running in server.
<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>
Someone can help me on this!
Many Thanks,
Dickson
Where’s your
<bindings>section, and more importantly, the<security>section of yournetTcpBinding? I guess the default security for net.tcp is Transport, which uses a Windows client credential.Your work PC logs onto the domain and thus is authenticated, while your home PC only is in a workgroup and cannot authenticate to your service running in the domain.