Как получить доступ к JHipster API, когда аутентификация управляется Keycloak - PullRequest
0 голосов
/ 31 марта 2020

Я создал приложение JHipster с аутентификацией oauth2. Последний реализуется Keycloak через сгенерированный docker -композитный файл.

Все отлично работает в браузере для «людей». Но мне нужно заставить некоторые внешние программы использовать API во время аутентификации Бенга.

Поэтому я начал имитировать прямой доступ к API с помощью Postman. Я читал о XSRF-TOKEN повар ie. Но, честно говоря, я не понимаю процесс аутентификации.

Может кто-нибудь объяснить, как выполнять аутентифицированные запросы к JHipster API в отношении keycloak?

Возможно, это не правильный подход Я также читал о реализации Конфигурации, основанной на другом механизме аутентификации, который должен использоваться для контроллеров, выставленных на другой конечной точке.

Любая помощь в выяснении всего этого будет очень признательна!

Ответы [ 2 ]

1 голос
/ 01 апреля 2020

Вам нужна аутентификация между компьютерами. Обычно Open ID Connect (OID C) предлагает client credentials flow для этого случая. Теоретически, вы просто включаете его в конфигурации клиента Keycloak и можете использовать его. Но это зависит от вашей реализации аутентификации API. Ваш API, скорее всего, использует другой поток OID C для людей, и он может быть не готов для потока учетных данных клиента.

0 голосов
/ 01 апреля 2020

У меня все заработало: совет Яна показывает мне путь.

В основном я следовал этому учебнику .

Решением было бы добавить клиента, настроенного с Standard flow, Service account и Authorization включены. Затем я добавил клиентскую область JHipster, предоставленную сгенерированной docker -композитной установкой.

После того, как это было настроено, я настроил запрос на использование аутентификации Oauth2. Я заполнил форму конфигурации для запроса токена в соответствии с руководством. И я был хорош для go!

Многие, спасибо!

...