可以将 session_state 存储在客户端的本地存储中吗?

时间:2021-01-29 14:42:01

标签: oauth keycloak openid

我在 Web 应用程序中使用 OpenId 和 Keycloak 进行身份验证管理。我想使用 Keycloak 给出的 session_state 值来管理会话数据,使用会话的 OpenId 定义,而不是浏览器定义。我的意思是当我登录一次并在两个选项卡中打开我的网络应用程序时,我不想有两个会话。

是否可以将 session_state 存储在客户端的浏览器本地存储中?

首先我想到了刷新令牌,但后来​​我读到不建议将其存储在安全 cookie 之外。我没有找到任何关于 session_state 的类似建议。 session_state 不能用来访问任何数据吧?

1 个答案:

答案 0 :(得分:2)

根据 OpenID Connect Session Management draft,会话状态必须可以通过 Javascript 访问,以便将其保存在本地存储中(规范甚至说它可以保存在本地存储中)。