Если я правильно понимаю, вы пытаетесь вызвать конечную точку шлюза API, которая находится за встроенным Cognito Authoriser.
Я думаю, вы неправильно поняли, как вы называете Cognito Authorized API Gateway:
- Авторизуйтесь против Cognito, чтобы получить
id_token
- Call API Gateway с заголовком
Authorization
, установленным в id_token
- Обновление
id_token
каждый час
Включив ADMIN_NO_SRP_AUTH
, вы позволяете упростить первый шаг (вход в Cognito), чтобы вам было проще выполнять его вручную. (Если бы вы этого не сделали, вам нужно было бы SRP
вычислить).
Один из способов получить id_token
- использовать aws cli
(дальнейшие способы указаны в документации ):
aws cognito-idp admin-initiate-auth --user-pool-id='[USER_POOL_ID]' --client-id='[CLIENT_ID]' --auth-flow=ADMIN_NO_SRP_AUTH --auth-parameters="USERNAME=[USERNAME],PASSWORD=[PASSWORD]"
Затем можно использовать результат (AuthenticationResult.IdToken
) в качестве заголовка Authorization
в Postman (нет необходимости в подписи AWS v4, то есть только для аутентификации IAM).
n.b. более полное объяснение с изображениями можно найти здесь .