【发布时间】:2021-06-27 11:39:07
【问题描述】:
我正在尝试将用户属性添加到声明的示例。我正在关注示例here。我正在尝试访问过滤器中的声明,但未成功。
我想了解协议映射器是如何在幕后工作的,即那些来自该协议的声明是如何以及以何种顺序添加到令牌中的。
【问题讨论】:
标签: java spring-boot spring-security keycloak keycloak-services
我正在尝试将用户属性添加到声明的示例。我正在关注示例here。我正在尝试访问过滤器中的声明,但未成功。
我想了解协议映射器是如何在幕后工作的,即那些来自该协议的声明是如何以及以何种顺序添加到令牌中的。
【问题讨论】:
标签: java spring-boot spring-security keycloak keycloak-services
在 Keycloak 中,协议映射器的功能是向 JWT 添加额外的声明,而不是 Keyloack 默认添加的声明。
不同的协议映射器将有不同的选项,但对于其中的大多数,您可以选择将这些映射器将产生的声明添加到:
我想了解协议映射器在 场景。
粗略地说,JWT 基本上是一个基于特定 standard 的编码 JSON 对象,Keycloak 使用 the Registered claims 创建该对象(例如, Issuer,@ 987654324@ 等等),然后它将按照您为给定的优先顺序将自定义声明(即协议映射器)应用到该临时对象中协议映射器。
最终结果(即令牌)将是一个带有默认声明的 JWT,并且声明是通过协议映射器添加的。
【讨论】: