Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Проблема единого входа с KeyCloak (OpenID Connect)

Автор вопроса: roman-mkhОтветов: 1

У нас есть

  • KeyCloak (OpenID Connect)
  • 1x Богатый клиент (с java-адаптером keycloak)
  • 1x WebClient SPA (с адаптером javascript keycloak)

Оба приложения являются общедоступными и находятся в одной области, но имеют разные идентификаторы клиента. Ве хотел бы реализовать SSO (Single Sign On) рассмотрим следующий сценарий: пользователь выполняет вход с пользователем / паролем в расширенном клиенте, а расширенный клиент получает JWT (AccessToken, IdToken и RefreshToken). Теперь пользователь из Rich вызывает веб-клиент (с глубокой ссылкой), и он открывает веб-браузер. Поскольку у веб-клиента еще нет токена доступа, он перенаправляет пользователей на страницу входа в keycloak (OpenID Connect / OAuth 2.0).

Каким будет правильный способ реализации единого входа, чтобы веб-клиент автоматически аутентифицировался с учетными данными от Rich Cleint?

У нас больше нет имени пользователя и пароля после входа в систему, только токены.

keycloakopenid-connectsingle-sign-on

Ответы

Ответ 1 · andrija

Я не вижу здесь проблемы. Когда пользователь из Rich вызывает веб-клиент, и он открывает веб-браузер, веб-клиент перенаправляется на keycloak, но пользователь уже вошел в систему. Пользователю не нужно снова вводить имя пользователя и пароль. Keycloak перенаправляет в ваш SPA, и вы получаете свои токены.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы