【发布时间】:2011-07-22 20:53:31
【问题描述】:
我试图阻止允许匿名访问我的 WCF 服务,但是我不断收到错误消息“此服务的安全设置需要‘匿名’身份验证,但托管此服务的 IIS 应用程序未启用它。”
我尝试了各种想法,例如删除 mex 端点并将安全模式设置为仅传输凭据,但这不起作用。
配置:
我的应用程序池身份配置为位于我的域中的网络帐户, 我的网站未勾选匿名访问并勾选了集成 Windows 身份验证。 我的服务配置是:
<services>
<service behaviorConfiguration="CRMDataDashboard_Service.CoreServiceBehavior"
name="CRMDataDashboard_Service.CoreService">
<endpoint address="http://crmb1:8900/CoreService.svc" binding="basicHttpBinding" contract="CRMDataDashboard_Service.ICoreService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="CRMDataDashboard_Service.Service1Behavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="CRMDataDashboard_Service.ChartDataBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="CRMDataDashboard_Service.DataDashboardServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="CRMDataDashboard_Service.CoreServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
对此的任何帮助将不胜感激
【问题讨论】: