首页 > 解决方案 > 鉴于一台服务器上的 ASP.Net MVC 站点但另一台服务器上的 ASP.Net MVC 站点,HttpContext.Current.User.Identity 为空/空

问题描述

我有一个在内部服务器上运行的 ASP.Net MVC 站点。站点上的视图@HttpContext.Current.User.Identity.Name用于显示通过浏览器访问站点的用户的名称。身份验证模式设置为 Windows。

在我们的一台服务器上运行时,它按预期工作。当在第二台服务器上运行相同的代码时,整个 Identity 对象似乎是空的。与第一台服务器相比,第二台服务器通过防火墙更加隔离。

什么样的规则可以阻止 Identity 对象被填充?

在 web.config 我也有

<authorization> <deny users="?" /> </authorization>

这应该可以防止任何匿名用户访问该站点。由于我能够查看该站点,因此我假设它认为我已获得授权。

标签: c#asp.net-mvcauthenticationwindows-authentication

解决方案


匿名和 Windows 身份验证均已打开。需要关闭匿名。


推荐阅读