如何获取请求上下文用户名

时间:2014-09-24 15:15:07

标签: asp.net asp.net-mvc asp.net-mvc-4 windows-authentication

在我的应用程序中,我设置了以下行来设置windows身份验证。

使用visual studio执行网站。

   `<authentication mode="Windows"></authentication>`

当我尝试使用上下文用户名时           `System.Web.HttpContext.Current.User.Identity.Name“然后,它给了我 只有空值。

请指导我,我希望它返回 - Windows登录,因为身份验证是Windows。

请指导。

1 个答案:

答案 0 :(得分:0)

有同样的问题,你的web.config中是否有授权部分?拒绝所有匿名用户为我修复它。

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

此外,我不会通过HttpContext访问用户,而是这样做:

string username = User.Identity.Name;

还要检查您是否在Web服务器上启用了Windows身份验证,对您来说不应该是一个问题,因为您最有可能在Visual Studio中运行带有IIS Express的站点。