1. Обзор
В этом руководстве мы обсудим, как реализовать SSO — единый вход — с помощью Spring Security OAuth и Spring Boot, используя Keycloak в качестве сервера авторизации.
Мы будем использовать 4 отдельных приложения:
- Сервер авторизации — центральный механизм аутентификации.
- Сервер ресурсов — поставщик
Foo
s - Два клиентских приложения — приложения, использующие SSO
Проще говоря, когда пользователь пытается получить доступ к ресурсу через одно клиентское приложение, он сначала будет перенаправлен для аутентификации через сервер авторизации. Keycloak выполнит вход пользователя в систему, и, пока он все еще находится в первом приложении, если доступ ко второму клиентскому приложению осуществляется с помощью того же браузера, пользователю не нужно будет снова вводить свои учетные данные.
Мы собираемся использовать тип предоставления кода авторизации
из OAuth2 для делегирования аутентификации.