从KeycloakPrincipal获取用户语言环境

时间:2018-07-16 09:00:03

标签: java keycloak

我已配置了密钥斗篷过滤器,该过滤器在KeycloakPrincipal中设置了HttpServletRequest。到目前为止一切顺利。

我发现了字段locale的位置:

KeycloakPrincipal<KeycloakSecurityContext> principal = (KeycloakPrincipal<KeycloakSecurityContext>) req.getUserPrincipal();
String locale = principal.getKeycloakSecurityContext().getToken().getLocale();

但是,尽管我在用户个人资料中看到了语言环境,但我还是得到了空值

keycloak admin console

如何从KeycloakPrincipal获取用户语言环境?

1 个答案:

答案 0 :(得分:1)

您需要显式添加它。在您的领域中,选择用于用户登录的客户端。在映射器中,您将看到令牌中正在映射的内容:

enter image description here

您可以在此处添加内置属性:

enter image description here

另请参见: