Keycloak 如何在注册后将外部数据存储在KeyClope用户模型中
我想在注册后将信息(如外部ID)存储在自定义用户属性中。 最终目标是在JWT令牌中包含此信息 我很难找到正确的方法。我认为这可能不是一个好的设计 有关我的用例的更多详细信息: 当一个用户在keydove上注册时,我必须在一个外部应用程序上创建该用户,并且我想在keydove上保存这个外部IDKeycloak 如何在注册后将外部数据存储在KeyClope用户模型中,keycloak,keycloak-rest-api,Keycloak,Keycloak Rest Api,我想在注册后将信息(如外部ID)存储在自定义用户属性中。 最终目标是在JWT令牌中包含此信息 我很难找到正确的方法。我认为这可能不是一个好的设计 有关我的用例的更多详细信息: 当一个用户在keydove上注册时,我必须在一个外部应用程序上创建该用户,并且我想在keydove上保存这个外部ID 我在考虑使用事件侦听器SPI,并在注册后执行一些操作,但在用户注册后,您可以使用端点将外部ID添加为用户自定义属性,这感觉有些过分: PUT <YOUR_KEYCLOAK_DOMAIN>/aut
我在考虑使用事件侦听器SPI,并在注册后执行一些操作,但在用户注册后,您可以使用端点将外部ID添加为用户自定义属性,这感觉有些过分:
PUT <YOUR_KEYCLOAK_DOMAIN>/auth/admin/realms/<YOUR_REALM>/users/<USER_ID>
PUT/auth/admin/realms//users/
使用有效负载{“id”:“,“attributes”:{“ExternalID”:[“”]}
您可以从以下位置获取的用户ID:
GET <YOUR_KEYCLOAK_DOMAIN>/auth/admin/realms/<YOUR_REALM>/users/?username=<THE_USERNAME>
GET/auth/admin/realms//users/?username=
我已经在中创建了用于此的脚本。脚本还确保将新属性添加到旧属性中,而不是替换它们
对于这两个端点,您需要在头中发送来自用户管理员的令牌
在钥匙斗篷中,转到:
- 你的领域
- 客户端>将用于验证应用程序的客户端
- 制图员
- 创造
- 选择映射器类型:用户属性
- 用户属性:ExternalID
- 把剩下的填满