IAM Token 体积治理:Keycloak claims 裁剪与 oauth2-proxy Cookie 膨胀
用户组一多就出现 431、日志开始警告 Multiple cookies are required——问题不在浏览器,而在网关里那条 token → Cookie → 请求头的放大器。给出 Keycloak 侧四层裁剪、oauth2-proxy 侧 4000 字节内部上限的真实机制、量化诊断命令与分层回滚。
2026年9月23日 Keycloak7 minutes
用户组一多就出现 431、日志开始警告 Multiple cookies are required——问题不在浏览器,而在网关里那条 token → Cookie → 请求头的放大器。给出 Keycloak 侧四层裁剪、oauth2-proxy 侧 4000 字节内部上限的真实机制、量化诊断命令与分层回滚。
2026年9月23日 Keycloak7 minutes
登录顺利,几分钟后所有后端调用开始 401;点了退出,再点登录又能免密进去。把 Auth.js 的会话模型和 Keycloak 登出端点的校验拆开看,给出可验证的最小配置。
2026年9月27日 Keycloak7 minutes
把 OIDC IdP 的「Validate Signatures」关掉,会连带放过身份代理方向的登出令牌:26.8.0 及更早接受 alg=none 的伪造登出令牌(CVE-2026-18569)。修复 PR #52171 截至 2026-10-01 仍未合入,26.8.0 已发布但不包含该修复——升级不能替代加固,仍须补上公钥或 JWKS。
轮换后 401 大概率不是「Keycloak 没生效」,而是三段时间没对齐:新 kid 进入验签方缓存的时间、旧 kid 仍在签发令牌的时间、旧公钥被下线的时间。按组件给出可核对的默认值与切换顺序。
2026年9月28日 Keycloak5 minutes
HTTP 访问 Keycloak 直接报 `HTTPS required`,或者回跳时报 `Invalid parameter: redirect_uri`——多数不是证书问题,而是 Realm 的 Require SSL 与反向代理头没对齐。给出 KC_PROXY_HEADERS / KC_HOSTNAME 最小配置、kcadm 改法,以及为什么不建议直接改库。
2024年4月1日 Keycloak1 minutes
Keycloak 接 MySQL Group Replication 时数据库迁移起不来,两个高频断点:Liquibase 自建的 DATABASECHANGELOG 没有主键被 GR 拒绝;节点切换的只读窗口让迁移锁写不进去。给出预建表 SQL、重试参数与 GR 超时配置。
在 Kubernetes 上把 Realm 完整导出备份、再迁移到新集群:`kc.sh export/import` 的正确用法(含 master Realm 不参与导出的坑)、`Script upload is disabled` 报错的处理,以及为什么控制台导出不能当作备份。
2024年4月1日 Keycloak, Kubernetes1 minutes