首页 > 解决方案 > Keyclock-gatekeeper/louketo-proxy 事件未立即传播到所有客户端

问题描述

我使用 Keycloak 作为 IAM,并有客户端“alertmanager”和“Nginx”与 Keycloak-gatekeeper/louketo-proxy 一起作为我的 K8s 集群中的 sidecar 运行。用户能够完美登录,但在注销时会遇到一些问题。

当我尝试从 Keycloak 管理部分的“会话”下“全部注销”时。我收到此错误,并且网守/代理同时收到来自 Keycloack 的呼叫(我正在检查实时日志),但由于此请求未经身份验证,因此请求失败。那么,我们如何在这里将keycloak的IP地址列入白名单呢?

在此处输入图像描述

此外,当一个客户端(应用程序)通过在浏览器中点击 application/ oauth/logout执行注销时,我们如何将注销从浏览器传播到所有客户端?之前在同一浏览器中也通过 SSO 登录的另一个应用程序未注销,并且令牌仍然保留令牌(通过 application2/oauth/token 检查),两个客户端(应用程序)都来自同一领域。

当代理要求 keycloak 刷新令牌时,在不同客户端之间刷新最多需要 5 分钟。

当我从特定组中添加/删除用户时,让我们说“devops”,并且代理/网守配置为授予用户在“devops”组中存在的访问权限。因此,如果我在“devops”组中添加某人,最多需要 5 分钟来反映这一点,并且用户可以开始使用相关的应用程序。但是,当我从组中删除用户时。他们仍然可以享受“devops”组的访问最多 5 分钟,这是一个安全问题!

有没有办法将事件从 Keycloack 立即传播到所有客户端。这是 Keyclock 的预期行为吗?

标签: realmsingle-sign-onkeycloakkeycloak-gatekeeper

解决方案


推荐阅读