Вызов шлюза AWS API с использованием ролей IAM - PullRequest
0 голосов
/ 01 апреля 2019

У меня есть API-шлюз, который я вызывал из Node.js, используя библиотеку aws4, используя этот формат:

let aws4 = require('aws4');

let request = {
  host: 'myapi.execute-api.us-west-2.amazonaws.com',
  method: 'GET',
  url: 'https://myapi.execute-api.us-west-2.amazonaws.com/Prod/foos',
  path: '/Prod/foos'
}

let signedRequest = aws4.sign(request,
  {
    secretAccessKey: AWS.config.credentials.secretAccessKey,
    accessKeyId: AWS.config.credentials.accessKeyId
  })

delete signedRequest.headers['Host']
delete signedRequest.headers['Content-Length']

let response = await axios(signedRequest)

Теперь мы хотим прекратить сохранение учетных данных непосредственно на сервере и использовать вместо этого роли IAM.

Когда я пытаюсь вызвать его без учетных данных, независимо от того, подписано ли оно с использованием aws4, я получаю эту ошибку:

The security token included in the request is invalid.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...