Интеграция системы с системой и проверка токена

#authentication #oauth-2.0 #api-gateway #idp #api-auth

#аутентификация #oauth-2.0 #api-шлюз #idp #api-аутентификация

Вопрос:

Мы пытаемся настроить запланированное задание на основе NodeJS, которое будет вызывать API через шлюз API. API вызывает другой API. Пользователь или браузер не задействованы. Вызов должен быть аутентифицирован и иметь действительный токен OAuth от нашего IdP. Как это должно выглядеть для обеспечения более безопасного подхода?

Как должен выглядеть поток? Какой шлюз API или второй API должен проверять токен? или оба? Спасибо

Ответ №1:

Ключевым моментом является то, что проверка токена доступа JWT предназначена для масштабирования. В старых архитектурах было принято использовать защиту периметра (например, API gateway проверяет токен), но это больше не рекомендуется.

Вместо этого проверьте JWT в каждом API с помощью библиотеки. Вот несколько примеров кода, а для других технологий см. Руководства Curity API.

Вот несколько связанных статей, если вас интересуют тенденции безопасности API:

Наконец, в этой статье обсуждается, что JWT часто можно пересылать между микросервисами, чтобы упростить ваш код.

Комментарии:

1. Спасибо, в примере кода первый метод выполняет проверку в api gateway? И второй в самом API? Каким должен быть поток архитектуры?

2. Пример кода должен выполняться в каждом API. Шлюз может быть задействован в обеспечении безопасности в роли самоанализа, но будущее направление для каждого API для проверки JWT перед разрешением запросов.