ASP.NET中的Win身份验证中的某些用户的问题

时间:2013-07-11 10:11:43

标签: asp.net windows-authentication

我想在我的奇怪问题上得到一些帮助, 我有一个ASP.Net 2.0应用程序,后面有VB.NET代码, 我将我的应用程序设置为仅启用Win身份验证 所以在IIS中除了Windows身份验证以外都禁用了 在My Web.Config中,我在system.web下面有以下内容:

Web.Config包含以下内容:

身份验证模式=“Windows”

     authorization>
         deny users="?"/>
     /authorization>
    identity impersonate="false"/>

现在一些用户进入我的ASP应用程序时会提示他们输入用户名和密码,然后他们成功登录, 一些用户应用程序在Page.User.Identity.Name上失败 并返回对象引用错误,

我在Win 2k8 R2最新安装的SP下使用VS2010和ASP.NET 2.0 frameword 2.0和IIS 7。

所有用户都是域用户。

谢谢,

2 个答案:

答案 0 :(得分:0)

您可以通过HttpContext.Current.User.Identity.Name访问用户名吗?您还可以检查身份验证是否成功,以及使用了哪种auth方法。

Windows身份验证默认情况下使用kerberos iis我相信,这可能由于很多原因而无效(我认为Firefox中存在问题),当这个失败时,它会回落到ntlm。尝试删除协商身份验证提供程序并仅使用ntlm。如果这样可行,您将有机会诊断出kerberos问题:-)

答案 1 :(得分:-1)

Trogvara, 谢谢你的发帖, 我是网站的新手,并尝试格式化,但它完成了我们现在看到的,

Web配置设置为:

<authentication mode="Windows"/> <authorization> <deny users="?"/> <authorization/> <identity impersonate="false"/>

<system.webServer> <validation validateIntegratedModeConfiguration="false"/> </system.webServer>

希望清除Web.config中的设置

谢谢,