2011-02-16 121 views
1

我有一个包含一个负载均衡的内部网站(2台服务器)托管的WCF SVC一个ASP.NET MVC的网站。这是我的理解,出于安全考虑,我们的Web服务器团队不允许匿名身份验证,我们的内网Web应用程序,默认是使用Windows身份验证。我可以访问SVC就好在本地主机上,而是试图我收到以下错误消息在服务器上访问时:此服务的安全设置需要Windows身份验证

System.NotSupportedException:安全该服务 设置需要 Windows身份验证,但它不是 为启用此服务的IIS应用程序启用。

我在StackOverflow上发现了类似的问题,给出的答案没有解决我的具体问题。这是我当前的服务区域web.config ...

<system.serviceModel> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/> 
    <client /> 
    <bindings> 
     <basicHttpBinding> 
     <binding name="basicHttpBinding_IClarityIntegration"> 
      <security mode="TransportCredentialOnly"> 
      <transport clientCredentialType="Windows" /> 
      </security> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="ClarityIntegrationBehavior"> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <services> 
     <service behaviorConfiguration="ClarityIntegrationBehavior" 
     name="ClarityIntegration.MVC.Web.Services.ClarityIntegration"> 
     <endpoint address="" binding="basicHttpBinding" bindingConfiguration="basicHttpBinding_IClarityIntegration" 
      contract="ClarityIntegration.MVC.Web.Services.IClarityIntegration"> 
     </endpoint> 
     </service> 
    </services> 
    </system.serviceModel> 
+3

那你有没有调整Windows身份验证或没有IIS设置? – jfar 2011-02-16 22:48:39

回答

1

此问题实际上是由WCF服务本身内的异常引起的。不知道为什么它会以这种方式响应,但是在找到异常并修复它之后,这个问题就消失了。

相关问题