0

所以我试图获取当前登录系统的人的用户名。

在 VS2012 中开发并运行调试器使其运行其 VS 开发服务器时,我可以使用 Environment.Username 来获取它。

但是当我部署到 IIS 服务器时,我得到了用户名 ASP.NET v4.0,我很确定这是因为我在 IIS 中为我​​的站点使用 ApplicationPoolIdentity(使用 IIS 7.5)

我的目标是让域中的任何人都可以访问该网站,而无需登录或其他任何东西,但仍然能够获取他们的用户名,以便我可以让某些用户访问管理功能并创建 SQL 查询以根据他们的构建表登录。
这些用户名和组存储在独立于网站的数据库中,而不是 ASP.NET 表单登录或任何内容的一部分。

4

1 回答 1

1

Environment.Username 将为您提供应用程序池标识。由于运行 VS 的是“你”,它会在开发机器上给出你的名字。

您应该实现windows authentication并使用HttpContext.Current.User来访问当前用户。

于 2013-08-08T19:34:47.257 回答