2016-12-20 13 views
1

Я хочу вызвать конечную точку шлюза AWS API, у которой есть авторизация, установленная AWS_IAM из исполняющей AWS Lambda, у которой у роли выполнения есть разрешение на выполнение этого шлюза API.Как мне разрешить конечную точку авторизации API AWS_IAM от AWS Lambda, у кого есть роль выполнения, для этого?

enter image description here

Есть в любом случае для меня, чтобы подписать запрос HTTPS к API шлюза, используя текущую роль выполнения моей Lambda?

Edit:

Глядя на http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html, я могу быть в состоянии назвать AssumeRole с помощью SDK, чтобы взять на себя роль, которая имеет разрешение на выполнение Api шлюза, а затем извлечь секретный ключ, который может быть использован для подписи Запросы.

ответ

2

Учетные данные для выполнения роли лямбда могут быть получены из переменных окружения - AWS_SESSION_TOKEN, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY.

Вы можете использовать вышеуказанные полномочия для подписания запросов. Документы для подписания находятся здесь http://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html. Вы также можете посмотреть сторонние библиотеки, которые это делают.

Обратите внимание, что поскольку у вас есть маркер сеанса вы должны справиться с этим, как описано здесь http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html#RequestWithSTS

+0

переменная окружения может быть доступ через: process.env. Вот пример: https://docs.aws.amazon.com/lambda/latest/dg/tutorial-env_cli.html –

 Смежные вопросы

  • Нет связанных вопросов^_^