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

Is it ok to store session_state in the client's local storage?

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

在客户端浏览器本地存储session_state可以吗?

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

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