我有一个使用Keycloak作为授权服务器的Sping Boot 应用程序。当在浏览器中打开一个受保护的url时,用户会被重定向到Keycloak提供的登录页面。成功登录后,用户会被重定向到请求的url。在这个页面上,我有一个指向Keycloak的注销端点的链接。链接如下:
https://keycloak-server/realms/my-realm/protocol/openid-connect/logout?client_id=my-client&post_logout_redirect_uri=http://localhost:8081/web/home
点击此链接后,用户将被重定向到Keycloak提供的页面,询问是否确实要注销。确认注销后,用户将立即被重定向到post_logout_redirect_uri
中提供的url。但是,如果用户导航到受保护的页面,他们仍处于登录状态。
我在Keycloak服务器日志中没有看到任何错误日志。我还在Keycloak管理面板中设置了Valid post logout redirect URIs
。
我也试过设置id_token_hint
而不是client_id
,但这也没有解决问题。有人知道我做错了什么吗?
1条答案
按热度按时间ljo96ir51#
我发现我的方法只会在keycloak端结束会话。我还必须注销客户端。我通过添加
logoutSuccessHandler
:第一个