У нас есть
- 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?
У нас больше нет имени пользователя и пароля после входа в систему, только токены.