У меня есть базовая c архитектура микросервисов, где вызывается один сервис. Эта служба может вызывать другие службы, которые, в свою очередь, вызывают другие службы и т. Д. c. Предположим, что каждый сервис является SpringBoot @RestController в разных проектах. Я ищу, чтобы адаптировать это так, чтобы каждый вызов службы прокси-сервер уровня управления API, который может выполнять авторизацию пользователя.
Для этого потребуется, чтобы каждая служба «переносила» информацию заголовка авторизации, с которой она была вызвана, в любые нисходящие службы, которые она вызывает.
Я знаю, что могу просто получить заголовки аутентификации в каждом restcontroller и установить их для любых последующих вызовов, которые выполняет служба, но я надеюсь найти способ, который будет менее навязчивым и потребует минимальных изменений кода.
Еще одна похожая вещь, которая приходит на ум, это SpringCloudSleuth, которая при добавлении в путь к классам автоматически добавляет информацию трассировки в заголовки HTTP, которые переносятся на последующие вызовы отдыха, сделанные из приложения, без каких-либо изменений кода. Я еще не вникал в то, как это работает.
Я публикую здесь, чтобы узнать, знают ли другие о чем-то подобном, уже существующем в экосистеме Spring, или о какой-либо другой помощи, которую можно достичь.