ASP.net Ajax启用WCF服务 - 安全问题

时间:2011-01-25 11:10:05

标签: asp.net wcf asp.net-ajax wcf-security

我遇到了启用AJAX的WCF服务的问题。

该服务配置如下:

    <system.serviceModel>
 <bindings>
   <webHttpBinding>
     <binding name="secureWebHttpBinding">
       <security mode="TransportCredentialOnly">
         <transport clientCredentialType="Ntlm"></transport>
       </security>
     </binding>
   </webHttpBinding>
 </bindings>
    <behaviors>
        <endpointBehaviors>
            <behavior name="Shared.Services.AjaxServiceAspNetAjaxBehavior">
                <enableWebScript/>
            </behavior>
        </endpointBehaviors>
    <serviceBehaviors>
      <behavior name="Shared.Services.AjaxServiceServiceBehaviour">
        <serviceDebug includeExceptionDetailInFaults="true"/>
      </behavior>
    </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
    <services>
        <service name="Shared.Services.AjaxService" behaviorConfiguration="Shared.Services.AjaxServiceServiceBehaviour">
            <endpoint address="" behaviorConfiguration="Shared.Services.AjaxServiceAspNetAjaxBehavior" bindingConfiguration="secureWebHttpBinding" binding="webHttpBinding" contract="Shared.Services.AjaxService">
            </endpoint>
        </service>
    </services>
</system.serviceModel>

在生产环境(IIS 7)上部署应用程序时会出现安全问题。

当我向ajax服务“serviceName.svc / js”请求url时,会出现一个Windows凭据提示。即使我请求“serviceName.svc”,服务描述页面也会正确显示。可能是IIS将... / js识别为子目录,它实际上不存在,并且由于它不知道应该应用哪个安全设置?我还在IIS管理页面中为目录和服务启用了所有身份验证类型。另外,我通过web.config启用了对该位置的匿名访问。整个应用程序是一个Intranet应用程序,受Windows身份验证btw保护。

提前致谢

0 个答案:

没有答案