gpt4 book ai didi

c# - .Net Forms 身份验证是否需要 session ?

转载 作者:太空狗 更新时间:2023-10-29 19:55:14 25 4
gpt4 key购买 nike

我们正在讨论表单例份验证的真正工作原理。

是所有标识用户登录的信息都存储在cookie中,还是某些信息存储在session中?

最佳答案

有关被认证用户的信息存储在 FormsAuthenticationTicket 中在 cookie 中,默认名为 .ASPXAUTH

有关用户 session 的信息与有关身份验证的信息是分开的。 session 标识符可以存储在 cookie 中(与身份验证 cookie 不同的 cookie),或者作为 Henk。已指出,在无 cookie session 中,即作为 URL 的一部分。

在用户 session 中存储一些关于身份验证的信息的问题在于, session 在处理管道中的身份验证事件(IIRC 之后的 5 个事件)之后的某个时间不可用,在 PostAcquireRequestState 中。 .这意味着在身份验证之前您将无法访问 session 中的身份验证数据!

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

回答你的标题问题,forms认证不需要session;它们是不同目的所需的不同实体。

关于c# - .Net Forms 身份验证是否需要 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4583739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com