realm - 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 的预期行为吗?
解决方案
推荐阅读
- java - hadoop mapreduce:当我指定多个reducer时,最终的hdfs结果文件在哪里?
- android - How to use Handler and handleMessage in Kotlin?
- onclick - How to use onclick in amp page
- scala - How does foldLeft in Scala work on DataFrame?
- ios - youtube api 上的 EXC_BAD_INSTRUCTION
- ios - 如何在核心数据中为唯一用户保存聊天并在需要时快速获取
- xamarin - 有没有办法在 app.xaml 文件的样式中指定 OnPlatform ?
- php - 由 IIS 启动的 Python 进程在一段时间后停止运行
- javascript - JSON 数组过滤器操作期间的错误
- sqlite - 聚合查询