Я хочу использовать Keycloak в среде на основе микросервисов, где аутентификация основана на вызовах REST оконечных точек OpenID ("/ token", без перенаправления на страницу входа в keycloak), поток, о котором я подумал, будет примерно таким:
1. Front-end SPA получает токены из конечной точки "/ token" и сохраняет их в localStorage браузера, а затем отправляет их при каждом запросе.
2. Аутентификация на уровне шлюза: токен доступа передается от внешнего интерфейса к шлюзу, шлюз консультируется с сервером Keycloak, чтобы проверить, все еще ли токен действителен (не аннулирован ли вызовом конечной точки выхода из системы).
3. Авторизация на основе микросервисов: токен доступа передается от шлюза к микросервисам. С помощью адаптера Spring Boot микросервисы проверяют подпись токена в автономном режиме (клиент только для канала?), А затем на основе роли в токен выполняет авторизацию.
Мои вопросы: имеет ли смысл этот поток или вы можете предложить другой поток? Какой тип клиентов Keycloak использовать? Какой идеальный способ передать токены с помощью Spring Boot Adapter, и нужно ли это делать в первую очередь? Пожалуйста, имейте в виду, что я не эксперт по Keycloak, я провел свое исследование, но у меня все еще есть сомнения.