我想通过 APIM 生成的 JWT 将所有声明包含在我们的辅助用户存储中。我们正在为当前任务使用隐式身份验证,因此用户必须向 IS 进行身份验证。我们将联合身份验证与 JIT 配置一起使用。
我已启用:
<ClaimsRetrieverImplClass>org.wso2.carbon.apimgt.impl.token.DefaultClaimsRetriever</ClaimsRetrieverImplClass>
并设置:
<ConsumerDialectURI>http://wso2.org/claims</ConsumerDialectURI>
并启用:
<EnableTokenGeneration>true</EnableTokenGeneration>
但是生成的 JWT 不包括用户的数据,只包括标准网关声明,包括最终用户。
我已经确认用户是在数据库中创建的,并且用户的声明存储在表 UM_USER_ATTRIBUTE 中。我确实注意到在主用户存储(非联合)中,UM_USER_ATTRIBUTE 为空,而 UM_CLAIM 已填充。会不会是 JIT 配置将数据放在了 ClaimsManager 未检查的表中?
如何让用户的声明(如电子邮件)显示在 JWT 中?
是 5.0.0 APIM 1.8.0