Для чего подходит параметр «Тип доступа: только канал» на сервере Keycloak (не на клиентском адаптере)? - PullRequest
0 голосов
/ 16 января 2020

Согласно документации Keycloak на https://www.keycloak.org/docs/latest/server_admin/index.html#_service_accounts, клиент, использующий поток «Client Credentials Grant», должен быть настроен на сервере как «Тип доступа: конфиденциальный» и только с «Учетными записями служб». Включено: правда ". Это хорошо работает, и я могу выбрать JWT и использовать их с «Authentication Bearer» в HTTP-запросах между внутренними службами.

В администраторе Keycloak GUI я могу выбрать "Тип доступа: только для канала-носителя " также, хотя это описано как" веб-сервисы, которые никогда не требуют входа в браузер ". Звучит идеально для потока «Client Credentials Grant». Не работает, хотя При попытке получить JWT с http --auth $clientId:$clientSecret --form POST https://keycloak/auth/realms/testrealm/protocol/openid-connect/token grant_type=client_credentials он всегда возвращается с ошибочным запросом:

{
    "error": "invalid_client",
    "error_description": "Bearer-only not allowed"
}

Так что же хорошо для настройки Keycloak Admin GUI "Access-Type: bearer-only" для?

PS: сбивает с толку существует настройка клиентского адаптера Java с тем же именем, описанным в https://www.keycloak.org/docs/latest/securing_apps/#_java_adapter_config - я не говорю об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...