You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KC23迁移至KC24后无姓名用户可正常获取JWT,全新安装则报错

Keycloak 24迁移用户与新用户必填字段差异原因解析

核心差异逻辑

Keycloak 24引入的用户必填资料强制校验仅作用于新创建或主动更新的用户,通过迁移导入的存量用户会被系统判定为「历史遗留合法用户」,不受新校验规则约束。

具体原因拆解

  • 迁移用户的兼容性处理:从KC23迁移至KC24时,系统会完整保留原有用户的属性数据与状态标记。这些用户是在旧版本无强制姓名要求的规则下创建的,Keycloak默认认定他们的账户已完成初始设置,不会触发Account Not fully Setup的校验逻辑,因此可以正常获取JWT Token。
  • 新用户的实时校验:全新安装的KC24中,创建用户时会实时执行默认的必填字段校验(firstName、lastName为必填项)。若缺少这些字段,用户会被自动添加UPDATE_PROFILE的必填动作,登录时系统会检查该状态,拒绝发放Token并提示账户未完全设置。

验证方式

查看用户的requiredActions属性:

  • 迁移用户:该字段为空或无UPDATE_PROFILE项
  • 新创建的无姓名用户:会包含UPDATE_PROFILE必填动作

可选调整方案(不推荐)

若需临时绕过新用户的姓名校验,可进入Realm设置 → 用户 → 用户资料,将firstName和lastName的「必填」选项取消勾选,但这会违背Keycloak 24默认的用户信息规范。

内容的提问来源于stack exchange,提问作者abhishek bhardwaj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 06:00:59