【发布时间】:2010-09-22 00:32:32
【问题描述】:
我正在尝试从我的客户端控制台应用程序访问服务器上的 WCF 服务以进行测试。我收到以下错误:
调用者未经过身份验证 服务
我正在使用wsHttpBinding。我不确定该服务需要什么样的身份验证?
<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>
更新
如果我将绑定更改为 <endpoint "basicHttpBinding" ... />(来自 wsHttpBinding),它会起作用
在 IIS 7.0 托管的 windows 2008 服务器上
【问题讨论】:
-
编辑您的帖子并添加 .config 文件的相关部分。
-
您尝试使用的 WCF 服务是如何托管的?
-
如果它托管在 IIS 中,目录安全设置是什么?匿名还是 Windows 集成?
-
你能标记这个问题的答案吗?您似乎能够解决您的问题。
-
为我解决的操作是将应用程序池标识从“ApplicationPoolIdentity”更改为“NetworkService”。
标签: .net wcf security wcf-binding