Почему шлюз API и сервис аутентификации должны отличаться?

В чем преимущества и недостатки использования шлюза API для авторизации? Если у API есть токен JWT с существующими разрешениями API в заголовке, я могу просто сопоставить его на шлюзе API. Сопоставление этого в службе авторизации также будет включать накладные расходы.


person Pranshul    schedule 08.11.2019    source источник


Ответы (1)


Вы можете использовать шлюз API для проверки токена JWT, но для начала вам нужно что-то для выдачи этого токена, и это будет служба авторизации.

Токен можно проверить без обращения в службу авторизации, если вы получили его открытые ключи заранее, чтобы вы могли проверить, что JWT был создан с его помощью (см., Например, https://jwt.io/). Также вы хотите, чтобы к токену были предъявлены претензии, например, выданные во время (iat), которые должны быть в прошлом; срок действия (exp), который должен быть в будущем, эмитент (iss), который должен быть вашей службой аутентификации, время входа в систему (auth_time) должно быть в прошлом, аудитория (aud), идентификатор вашего проекта и, возможно, несколько настраиваемых утверждений, относящихся к ваш проект

Если у вас есть все это, вы действительно можете принудительно выполнить авторизацию на шлюзе api.

person Arnon Rotem-Gal-Oz    schedule 08.11.2019