Я использую настройку, подобную этой: https://www.baeldung.com/spring-boot-keycloak, но с
<spring-boot.version>2.1.4.RELEASE</spring-boot.version>
<keycloak-adapter-bom.version>6.0.1</keycloak-adapter-bom.version>
, поэтому текущие версии фреймворков.Я активировал «Авторизации» в Keycloak и попытался привязать ресурс по умолчанию «перехватить все» к роли.Если я использую eval, правильный код JSON ниже возвращается.Тем не менее, в исходных кодах Java я проверяю переданное в Principal и все есть, но нет представления раздела авторизации / разрешений в JSON.
Как получить доступ к этой информации в контроллере / на стороне Java?
"jti": "1c389a7f-2524-4340-b25d-2982c9e54c62",
"exp": 1557833614,
"nbf": 0,
"iat": 1557833314,
"aud": "noname",
"sub": "385d0955-1643-4c3a-a330-60152a592c89",
"typ": "Bearer",
"azp": "noname",
"auth_time": 0,
"session_state": "701b521c-483c-482d-b4ab-a404fafba9bf",
"acr": "1",
"realm_access": {
"roles": [
"offline_access",
"uma_authorization"
]
},
"resource_access": {
"traxpay": {
"roles": [
"nn_service"
]
},
"account": {
"roles": [
"manage-account",
"manage-account-links",
"view-profile"
]
}
},
"authorization": {
"permissions": [
{
"rsid": "3d2d6e70-8cd0-4c57-927f-006fdfe80fda",
"rsname": "Default Resource"
}
]
},
"scope": "profile email",
"email_verified": false,
"noname_id": "666123",
"preferred_username": "supplier"
}