Я реализую простой проект, основанный на микросервисах, и у меня есть некоторые сомнения относительно аутентификации. Я сомневаюсь больше в лучших практиках, чем в том, что делать в технологии.
ЧТО У МЕНЯ:
- , допустим, у меня есть пара API
- также есть шлюз API, который отвечает за маршрутизацию и аутентификацию
- Я использую поставщика удостоверений (keycloak) для аутентификации (на основе JWT)
ЧТО Я ХОЧУ ЗНАТЬ:
Допустим, у меня есть конечная точка, например api/user/<user_id>
, которая работает с запросом POST и изменяет информацию о пользователе.
Для этого не только мне нужно проверить, является ли пользователь аутентифицированным / разрешенным Я также должен проверить, является ли пользователь, пытающийся получить к нему доступ, собственный пользователь.
Мой вопрос: лучше ли делать это в шлюзе API, или шлюз API должен передать JWT в API чтобы он мог проверить это на контроллере?
- Я использую spring -boot для apis
- Zuul-прокси Netflix для шлюза API
- Keycloak для обработки аутентификации