views:

36

answers:

2

Hi guys. I have a WCF service which is hosted in a Windows Service and has net.tcp endpoint. The clients are in the same LAN (Workgroup) as the service but they don't have the server's Windows user accounts.

PS: When I set the Security.Mode to None in both client and server, I receive the following error:

The requested upgrade is not supported by '{SERVICE ADDRESS}'This could be due to mismatched bindings (for example security enabled on the client and not on the server).

A: 

Nettcp binding is secure by default, your clients must provide Windows credentials because all messages are signed and encrypted over tcp. Setting it to none will probably cause a problem, you'll want something like:

<netTcpBinding>
     <binding name="netTcp">
       <security mode="Transport">
         <transport clientCredentialType="Windows" />
       </security>
     </binding>
</netTcpBinding>
RandomNoob
Thanks for your reply. But as I mentioned the clients doesn't have the user accounts that are available in the server, so the Windows authentication will fail. I've tried to set the client.ClientCredentials.Windows.ClientCredential username and password to one the server's users which is an administrator, but no luck, it still fails.
Mohammadreza
A: 

OK, I solved the problem.

I don't know why it is like this, but if I uncheck the "Use simple file sharing" in Folder Options of the server, everything works perfectly.

Mohammadreza