Весенний Облачный Шлюз Nginx Кодовый Замок

#spring #nginx #keycloak #openid-connect

Вопрос:

Я внедряю мобильное приложение и хочу использовать OIDC. Из-за этого я пытаюсь определить правильную архитектуру, и у меня есть сомнения, какой сценарий является правильным.

введите описание изображения здесь

Сценарий A: Nginx хранит сертификаты ssl и является только обратным прокси-сервером. Мобильное приложение отображает настроенную страницу входа в систему Keycloak, получает токен, а затем вызывает API с помощью этого токена. Spring Gateway проверяет его с помощью ключа и пропускает или нет. Этот сценарий упрощает https-соединение между приложением и бэкэндами.

Сценарий B: Spring Cloud Gateway хранит сертификаты ssl и является обратным прокси-сервером для страницы входа в Keycloak и шлюзом для микросервисов, который параллельно проверяет маркер доступа с помощью Keycloak для запросов api.

Сценарий А кажется мне лучше, так как Nginx заботится о SSL, и я могу скрыть остальное, и в будущем, когда я буду добавлять веб-страницу (MVP2), я смогу обслуживать статический контент через этот слой, а также в другом месте. Я также не могу найти информацию о том, следует ли использовать Spring Cloud Gateway для статического контента (страница входа в систему с ключом и/или СПА-центры).