以下是我的用于Windows身份验证设置的Web.Config的摘录。
<authentication mode="Windows" />
<identity impersonate="true" />
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" />
<authorization>
<!-- The following roles are group memberships in Active Directory. -->
<allow roles="domain\finance,domain\it" />
<deny users="*" />
</authorization>
我正在使用.net 4.0经典管道模式:经典
在IIS中,我应用了以下身份验证设置:
Anonymous Autehntication: Disabled
ASP.Net Impersonation: Enabled
Basic Authentication: Disabled
Digest Authetication: Disabled
Forms Authetication: Disabled
Windows Authentication: Enabled
当从角色(AD组)中的用户帐户访问该页面时,我会看到一个用户名/密码窗口:(
这是整个web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="it@domain.com">
<network host="10.0.0.150" port="25" />
</smtp>
</mailSettings>
</system.net>
<system.web>
<compilation targetFramework="4.0" />
<customErrors mode="Off" />
<authentication mode="Windows" />
<identity impersonate="true" />
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" />
<authorization>
<allow roles="domain\finance,domain\it" />
</authorization>
</system.web>
</configuration>
答案 0 :(得分:1)
可能的解决方案是:
确保您使用的是基于Internet Explorer的浏览器,因为Windows身份验证通过IE获取您的登录凭据,否则请求凭据是正常行为。
如果您使用的是IE - 请确保您访问的网站已添加到“本地Intranet”网站
检查要部署解决方案的物理文件夹,因为某些ntfs权限可能会拒绝访问,从而要求提供信用。