1
32
Environment.UserName调用advapi32.dll中的GetUserName。这意味着,如果您正在模拟另一个用户,此属性将反映这一点。 Thread.CurrentPrincipal有一个setter,可以通过编程进行更改(这不是冒充。) WindowsIdentity是您当前的 身份,如果有的话。它不一定会反映用户,想想ASP.NET和FormsAuthentication。然后WindowsIdentity将是NT服务,而FormsIdentity将是登录的用户。还有一个护照身份,你可以建立自己的东西,使事情更加复杂。 |
2
1
你要求其他的方法。 当然,您可以始终使用本机Windows API: GetUserName |
3
0
我相信这个属性放在几个地方,这样程序员就更容易找到了。只有一个登录的用户,并且只有一个相应的名称。 |
4
0
这三种方法描述如下: HttpContext=HttpContext.Current.User,返回包含当前Web请求安全信息的IPrincipal对象。这是经过身份验证的Web客户端。
Thread=Thread.CurrentPrincipal,返回当前正在执行的.NET线程的主体,该线程位于Win32线程之上。 |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
Dansih · .Net核心自定义身份验证方案 2 年前 |
lolorekkk · 面板插入。NET WinForm 2 年前 |