加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – .Net Forms身份验证是否需要会话?

发布时间:2020-12-15 18:17:55 所属栏目:百科 来源:网络整理
导读:我们正在讨论表单身份验证的确如何运作. 是否所有标识用户的信息都存储在cookie中,或者是否存储在会话中的某些信息? 解决方法 有关正在进行身份验证的用户的信息存储在 FormsAuthenticationTicket 中的cookie中,默认名称为.ASPXAUTH. 有关用户会话的信息与
我们正在讨论表单身份验证的确如何运作.

是否所有标识用户的信息都存储在cookie中,或者是否存储在会话中的某些信息?

解决方法

有关正在进行身份验证的用户的信息存储在 FormsAuthenticationTicket中的cookie中,默认名称为.ASPXAUTH.

有关用户会话的信息与有关身份验证的信息不同.会话的标识符可以存储在cookie(与认证cookie不同的cookie)中,或者如Henk所指出的,在无cookie会话中,即作为URL的一部分.

在用户会话中存储有关身份验证的一些信息的问题是,在PostAcquireRequestState处理管道中的身份验证事件(后续5个事件IIRC)之后的一段时间内,会话才可用.这意味着您将无法访问身份验证会话中的数据,直到认证后!

可以在会话中存储数据并用该数据覆盖IIdentity和IPrincipal,但这确实意味着用户身份将在会话可用之前具有事件的一些数据,并且会话之后的事件的不同数据可用,这可能是或者可能不是问题.此外,您可能希望以某种方式以加密方式保护会话中的数据.

要回答标题问题,表单身份验证不需要会话;它们是不同目的所需的不同实体.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读