Я хочу использовать Keycloak для авторизации доступа для моего API.
У меня определены соответствующие области, и они возвращаются в токене доступа, как и ожидалось:
{
... claims ...
"scope": "openid profile user/Patient.write user/Patient.read",
... etc ...
}
но сервер, на котором размещены API-интерфейсы, ожидает области действия в маркере доступа, представленном в виде массива, например:
{
... claims ...
"scope": [
"openid",
"profile",
"user/Patient.read",
"user/Patient.write"
],
...etc...
}
Я не вижу нигде в Keycloak, где я мог бы изменить поведение для вывода областей в виде массива?
Я смотрел, как это делается с помощью специального сценария сопоставления токенов, но области видимости недоступны в сценариях сопоставления, поэтому не похоже, что я могу сопоставить их таким образом. Есть ли какой-нибудь способ получить области видимости в этой форме в токене в Keycloak?