User.Identity.Name有时空白使用Windows身份验证(User.Identity.

2019-10-17 06:16发布

我的web应用程序使用Windows身份验证。 所有其他的身份验证方法被禁用。

它工作在第一; User.Identity.Name返回 “MYDOMAIN \ myuser的。” 不过,如果我等待131秒(是的,我计时了,虽然我不知道它总是带那么长),并重新加载页面,User.Identity.IsAuthenticated =虚假和User.Identity.Name =“”。 在这一点上我就可以重新加载页面,它再次工作,为活动的另一131秒。

web.config中的相关部分:

<authentication mode="Windows" />
<authorization> 
  <deny users="?" /> 
</authorization>
<identity impersonate="false" />
...
<security>
  <authentication>
    <windowsAuthentication enabled="true" />
    <anonymousAuthentication enabled="false" />
  </authentication>
</security>

更多信息,可能相关的:

我的解决方案部署到两个不同的IIS应用程序。 第一个是为内部用户; 它只是使用Windows身份验证。 第二个是用于外部用户; 它使用匿名身份验证(在仅根文件夹)和表单认证。 我只具有内部站点的问题。

Answer 1:

账户文件夹下的web.config文件是允许匿名身份验证(我贴我的问题之一是主要的web.config)。 不知道这是怎么发生的,但删除它解决了这一问题。



文章来源: User.Identity.Name sometimes blank with Windows authentication