如何获取核心获取当前用户信息?

时间:2017-06-06 11:47:44

标签: asp.net .net asp.net-core ldap

如何在新的.net核心框架中获取Windows PC上的当前登录用户?

旧命名空间

System.DirectoryServices;
System.DirectoryServices.AccountManagement;

没有实施yeat :( 建议移植的库novell.ldap,但我仍然不明白如何获取有关用户的信息。

我从System.Security.Principal.WindowsIdentity.GetCurrent().Name获得了简称 怎么得到全名?示例“Mary Ann”

1 个答案:

答案 0 :(得分:0)

首先,ASP.NET Core可以在Linux和Mac上运行,在那里你根本没有“Windows”用户。

但即使您只在Windows上运行应用程序 - 您的意思是什么用户?如果您的网站在IIS后面的服务器上运行 - 而不是IIS作为服务启动,没有任何交互式用户,并且您的应用程序也在某个服务帐户下启动。

但是,如果您只在Windows下运行您的应用程序并且仅以交互方式运行(用户将启动dotnet run或类似),那么最简单的方法是阅读环境变量USERDOMAINUSERNAME。在命令提示符下运行set,您将看到当前在会话中定义的所有环境变量。您可以通过Environment课程阅读这些内容,也可以ConfigurationBuilder中的AddEnvironmentVariables()添加Startup.cs