I am trying to access my WCF service on a server from my client console application for testing. I am getting the following error:
The caller was not authenticated by
the service
I am using wsHttpBinding
. I'm not sure what kind of authentication the service is expecting?
<behaviors>
<serviceBehaviors>
<behavior name="MyTrakerService.MyTrakerServiceBehavior">
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
Update
It works if I change my binding to <endpoint "basicHttpBinding" ... />
(from wsHttpBinding)
on the IIS 7.0 hosted, windows 2008 server
Best Answer
If you use basicHttpBinding, configure the endpoint security to "None" and transport clientCredintialType to "None."
Also, make sure the directory Authentication Methods in IIS to Enable Anonymous access