[英]Get Domain User ID in ASP.NET
我有一个 ASP.NET 应用程序,员工登录到 Windows,然后他们必须从一长串姓名中选择他们的姓名并登录到应用程序。
我想要做的是,一旦员工打开应用程序,它就会从下拉框中选择他们的名字。
我相信如果我可以在页面加载时获得 Windows 用户 ID,我可以让我的代码根据登录的 Windows 用户选择用户。
问题是。 如何获取当前在 C# Asp.net 中登录的 Windows 用户 ID? 有任何想法吗。
尝试这个:-
System.Web.HttpContext.Current.User.Identity.Name
另请查看此论坛 。
更新: -
1)请检查您是否在IIS中禁用了匿名模式
2)还要检查您是否已将应用程序设置为验证用户详细信息,如下所示: -
<authentication mode="Windows"/>
<authorization>
<allow users="*"/>
</authorization>
或者像这样: -
<authentication mode="Windows" />
<authorization>
<deny users="?"/>
</authorization>
3)您可以在控制面板中配置IIS,以便您的站点(或计算机)使用Windows身份验证并拒绝匿名访问
我遇到了一个相关问题,我的本地版本将WindowsIdentity.GetCurrent()。Name.ToString()值识别为我的Windows帐户名,但是当我通过服务器访问网站时,它始终是“DefaultAppPool”。
通过执行以下操作,我能够使其工作:
从那里我能够识别用户ID /名称并继续我的编码。 我不得不重做一点,但这非常值得。 谢谢你的建议!
在 ASP.NET Core .NET 6 中,我使用
环境.用户名;
\/\/ 或 \/\/ 以下仅适用于 Windows 平台
System.Security.Principal.WindowsIdentity.GetCurrent().Name ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.