asp.net

解释一下Page.User.Identity.Name

2011-04-09
谁能帮我解释一下
Page.User.Identity.Name

这个玩意怎么用
想不明白他怎么获取登陆名的
给我个简单的演示更好
 
 
回答:
User.Identity.Name也是用Session和Cookies
通过内置的Membership安全机制工作
执行 FormsAuthenticationModule.OnAuthentication方法进行身份验证
调用 ExtractTicketFromCookie, 从cookie中解密出一个FormsAuthenticationTicket(ticket是通过登录验证的时候被加密写到cookie中的)
ticket中即包含登录用户名称,赋值给Context.User属性
以后读取Context.User则是直接读取这个变量的值
 
 
登录后的用户都会在cookie里保存一些加密后的数据.
浏览网页时,这些包含用户相关信息的数据被附加到 安全上下文里.其中就包括
Page.User.Identity对象.

简单地说,就是从cookie中读取 用户名,当然实际上应该会复杂一些,譬如解密等.