所以我试图获取当前登录系统的人的用户名。
在VS2012中开发并运行调试器并运行其VS Development Server时,我可以使用Environment.Username来实现此目的。
但是当我部署到IIS服务器时,我得到用户名ASP.NET v4.0,我很确定是因为我在IIS中为我的站点使用ApplicationPoolIdentity(使用IIS 7.5)
我的目标是让网站上的任何人都可以访问该网站而无需登录或任何内容,但仍然可以获取其用户名,以便我可以授予某些用户访问管理功能并创建SQL查询以构建表根据他们的登录信息 这些用户名和组存储在与网站不同的数据库中,而不是ASP.NET表单登录或任何内容的一部分。
答案 0 :(得分:1)
Environment.Username将为您提供应用程序池标识。因为运行VS的是“你”,它会在开发机器上显示你的名字。
您应该实施windows authentication
并使用HttpContext.Current.User
来访问当前用户。