建议在ASP.NET中检索当前用户标识的方法?

时间:2011-10-04 15:37:26

标签: asp.net-authentication

我正在审核当前遇到身份验证问题的应用程序(表单身份验证与自定义方式一起使用以检索当前用户的配置文件),我注意到使用不同的方法检索用户的身份:

  • Thread.CurrentPrincipal.Identity(在某些http模块上)
  • HttpContext.Current.User.Identity(在某些http模块和页面上)
  • Page.User.Identity(页面上)

假设所有方法总是返回相同的值是否安全?

2 个答案:

答案 0 :(得分:2)

HttpContext.Current.User.Identity(在某些http模块和页面上) Page.User.Identity(页面上)

它们都返回IPrincipal

的实例

Page.User使用HttpContext对象的User属性来确定请求的来源

最好的方法是HttpContext.Current.User

如果您使用模拟,

Thread.CurrentPrincipal.Identity将无法显示正确的用户 它将为您提供Windows用户详细信息

答案 1 :(得分:0)

我们通常使用的是HttpContext.Current.User.Identity