使用Windows身份验证创建一个MVC5项目,其中User.Identity.Name随机变为空。该网站需要显示面向公众的页面和安全页面。 IIS中启用了匿名身份验证,并设置为“应用程序池标识”。这种行为是相当随机的,但最常见的是通过远离家乡和再次返回来重复(如果我坐在那里点击一个主页链接,它每10次左右点击大约1次)web.config或控制器动作中没有特别的酱:
的Web.Config
<system.web>
<authentication mode="Windows" />
</sytem.web>
的HomeController
public class HomeController : BaseController
{
protected IMailer _mailer;
public HomeController(INLogger logger, IMailer mailer) : base(logger) {
this._mailer = mailer;
}
public ActionResult Index()
{
return View();
}
}
那里的线程说要使用Request.SeverVariables [“LOGON_USER”],但这也是空的。
让我感到困惑,任何见解都会变得很棒。谢谢!