2016-12-20 32 views
1

我想从执行角色有执行该API网关权限的正在执行的AWS Lambda调用授权设置为AWS_IAM的AWS API网关端点。如何从AWS Lambda调用AWS_IAM授权的API网关端点并且执行角色有权这样做?

enter image description here

反正让我签字使用我LAMBDA的当前执行的角色HTTPS请求API网关?

编辑:

看着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中检索lambda执行角色的凭据。

您可以使用上述凭证签署请求。签署的文档在这里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 –