获取在本地网络中访问ASP.NET Intranet页面的用户的用户名

时间:2009-04-17 16:00:27

标签: asp.net intranet username

我们有一个ASP.NET Intranet站点,可供物理访问本地计算机或登录本地计算机的用户使用,也可供通过VPN远程连接的用户使用。有没有办法根据用于登录本地计算机的名称或用于VPN的名称自动获取访问该页面的用户的用户名?

5 个答案:

答案 0 :(得分:13)

如果您在网页中使用Windows身份验证,则可以使用此功能。

您可以使用Page.User.Identity.Name或更完整的System.Web.HttpContext.Current.User.Identity.Name

在这里阅读更多相关信息:

Enabling Windows Authentication within an Intranet ASP.NET Web Application

但是,如果您使用表单身份验证,则必须自己跟踪当前用户,最常见的方法是将他们的登录名存储在Session变量中。

答案 1 :(得分:3)

获取User信息如下:

User.Identity.Name \\ Get the User name
User.Identity.AuthenticationType \\ What is the Authentication type
User.Identity.IsAuthenticated \\ Is he authenticated?
User.IsInRole("Administrators") \\ Is he administrator?

答案 2 :(得分:2)

如果身份验证设置为执行集成Windows身份验证,那么您应该可以通过访问

User.Identity.Name

来获取

答案 3 :(得分:1)

您可以使用

Page.User.Identity.Name

答案 4 :(得分:0)

如果身份验证是Windows,这应该会有所帮助:

IIdentity WinId= HttpContext.Current.User.Identity;
WindowsIdentity wi = (WindowsIdentity)WinId;