keycloak~记住密码实现关闭浏览器用户状态保持原理
登录状态保持,即当用户关闭浏览器
之后,下次打开kc仍然保持登录状态,这是通过kc里的记住密码
功能实现的
原理
通过在kc下的cookies添加KEYCLOAK_REMEMBER_ME
,用来标签是否使用持久化的sessionId,默认情况下,kc使用会话级的sessionId,即AUTH_SESSION_ID
和AUTH_SESSION_ID_LEGACY
,带有LEGACY我们可以理解为,为了兼容老版浏览器而添加的;而需要希望你的登录状态需要保持,即关闭浏览器后,会话不丢失
,它会使用KEYCLOAK_SESSION_LEGACY
和KEYCLOAK_SESSION
这两个cookies键值对,当然它的前提是你开启了记住密码选项
。
如下几个步骤开启它
- 打开域中的记住密码选项
- 为
KEYCLOAK_SESSION_LEGACY
和KEYCLOAK_SESSION
设置有效期,通过域
的tokens
的SSO Session Idle Remember Me
来配置
- 我们在登录之后,将会出现
KEYCLOAK_REMEMBER_ME
,然后kc认证将使用KEYCLOAK_SESSION_LEGACY
和KEYCLOAK_SESSION
。