Пожалуйста, посмотрите ниже прикрепленный снимок экрана, в пользовательском разделе есть вкладка, где вы можете установить атрибуты
Теперь вопрос будет, как вы будете обращаться к этим атрибутам пользователя через код?
Итак, вот код, который можно использовать для доступа к атрибутам пользователя.
HttpServletRequest httpRequest = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
KeycloakSecurityContext securityContext = (KeycloakSecurityContext) httpRequest.getAttribute(KeycloakSecurityContext.class.getName());
AccessToken accessToken = securityContext.getToken();
if(null != accessToken ){
Map<String, Object> otherClaims = accessToken.getOtherClaims() ;
tgtToken = securityContext.getTokenString();
String firstUserAtt = otherClaims.get("First_User_Attribute").toString();
String secondUserAtt = otherClaims.get("Second_User_Attribute").toString();
}
Примечание - First_User_Attribute
, Second_User_Attribute
- это ключ, который вы объявляете в разделе пользовательских атрибутов keycloak.