使用Windows身份验证的IIS Web应用程序生成登录提示

时间:2016-01-12 20:21:53

标签: asp.net iis windows-authentication

所以,我的问题是我有一个Web应用程序,它应该使用Windows身份验证,但仍然提示用户首先输入密码 使用当天。

详细说明: 这是一个仅供内部使用的应用程序,仅供与应用程序在同一Intranet上的人员使用。

服务器是Windows Web Server 2008R2,IIS的版本是7.5.7600.16385。

我用于测试的浏览器是IE 11.09600.18124。它将该站点识别为Local intranet |保护模式:关闭。为此区域选择的用户身份验证,登录选项是“使用当前名称和密码自动登录”。启用集成Windows身份验证。

该应用程序是ASP.NET v4,在ASP.NET v4.0应用程序池,经典管道和NetworkService上运行,用于标识。

应用程序的身份验证是禁用匿名,启用ASP.NET模拟,禁用表单,启用Windows身份验证。

提供商首先是NTLM,第二是谈判。 扩展保护是接受,启用内核模式身份验证。

经过身份验证的用户,NETWORK SERVICE,aspnet_wp帐户和域用户都有权查看该网站以及常见的嫌疑人。

我用于网站的网址不是FQDN。它是http://machinename/DUmmyNameOfApp等。

.NET授权规则下没有“拒绝”规则。

我已经尝试在MS支持中禁用每篇文章896861的环回检查,这没有帮助,但似乎不适用于我的问题。

我尝试将第一个提供商切换到Negotiate:Kerberos,但没有帮助。

我尝试将应用程序池标识切换到应用程序池ID,但没有帮助。

我已将网络服务(应用程序池标识)添加到IIS_IUSRS。

我在这里阅读了问题5402381,但没有帮助。

典型事件的IIS日志显示为:

#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2016-01-12 19:23:31
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2016-01-12 19:23:31 10.1.1.60 GET /DummyNameOfApp/Default.aspx - 80 - 10.1.28.54 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;+Trident/7.0;+SLCC2;

+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+PC+6.0;+.NET4.0C;+.NET4.0E;+InfoPath.3;+.NET+CLR+1.1.4322) 401 1 2148074254 78
2016-01-12 19:23:34 10.1.1.60 GET /DummyNameOfApp/Default.aspx - 80 DUMMYDOMAIN\jwoodward 10.1.28.54 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;

+Trident/7.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+PC+6.0;+.NET4.0C;+.NET4.0E;+InfoPath.3;+.NET+CLR+1.1.4322) 401 5 0 

249
2016-01-12 19:23:43 10.1.1.60 GET /DummyNameOfApp/Default.aspx - 80 DUMMYDOMAIN\jwoodward 10.1.28.54 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;

+Trident/7.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+PC+6.0;+.NET4.0C;+.NET4.0E;+InfoPath.3;+.NET+CLR+1.1.4322) 200 0 0 

7004
2016-01-12 19:23:43 10.1.1.60 GET /DummyNameOfApp/null sEcho=1&iColumns=10&sColumns=&iDisplayStart=0&iDisplayLength=-

1&mDataProp_0=0&mDataProp_1=1&mDataProp_2=2&mDataProp_3=3&mDataProp_4=4&mDataProp_5=5&mDataProp_6=6&mDataProp_7=7&mDataProp_8=8&mDataProp_9=9&_=1452626623940 80 

DUMMYDOMAIN\jwoodward 10.1.28.54 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;+Trident/7.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR

+3.0.30729;+Media+Center+PC+6.0;+.NET4.0C;+.NET4.0E;+InfoPath.3;+.NET+CLR+1.1.4322) 404 17 50 0

编辑:web.config中的身份验证标记是< authentication mode =“Windows”/>。没有授权标签。

1 个答案:

答案 0 :(得分:0)

从Windows 7开始,默认情况下会启用名为Extended Protection for Authentication的其他安全功能。我怀疑这是导致你正在观察的问题。您已经设置了#34;扩展保护"到"接受"对于服务器上的此Web应用程序。如果您确认客户端已设置它,然后更新服务器以使用"要求"对于扩展保护,提示应该消失。

有关如何在客户端和服务器上设置EPA的其他详细信息,请参阅http://blogs.technet.com/b/srd/archive/2009/12/08/extended-protection-for-authentication.aspx