从API网关调用所有Lambda函数的权限

时间:2018-05-18 09:38:58

标签: amazon-web-services aws-lambda aws-api-gateway amazon-cloudformation

我正在为我的API设置CloudFormation模板,并希望创建一个权限让API Gateway调用我的所有lambda函数 - 这可能吗?

目前我正在为每个函数创建一个Permission,如下所示:

LambdaInvokeUserUpdatePermission: Type: "AWS::Lambda::Permission" Properties: FunctionName: !GetAtt - UpdateUserFunction - Arn Action: 'lambda:InvokeFunction' Principal: apigateway.amazonaws.com SourceArn: !Sub "arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${RestApi}/*"

但这并不是最有效的方法。互联网上的所有示例似乎只包含一个指向一个功能的端点,这没有帮助。 (任何用于更完整示例的良好资源也会有所帮助)。

由于

1 个答案:

答案 0 :(得分:0)

如果您希望API Gateway使用自己的凭据调用该功能,则这是添加权限的唯一方法。如果您愿意,可以使用“角色”选项,让API网关在您的帐户中担任角色以调用该功能。在后一种情况下,函数不需要额外的许可。