Api Gateway无法调用Lambda函数

时间:2016-11-10 22:59:26

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

this tutorial on AWS之后,我尝试通过网络控制台测试api时遇到了障碍(正如许多其他人所做的那样):

Thu Nov 10 22:54:48 UTC 2016 : Execution failed due to configuration error: Invalid permissions on Lambda function

我已经阅读了我能找到的SO和AWS论坛上的所有相关帖子,但无法弄清楚如何授予API网关调用Lambda函数的权限。

1 个答案:

答案 0 :(得分:7)

Web控制台方法:

感谢this mate我找到了一个快速解决方法:

进入Web控制台并选择

资源方法>集成请求> Lambda函数旁边的铅笔> lambda函数旁边的复选标记(不要更改名称)

弹出窗口应警告您授予API执行lambda函数的权限。

API方法:

另外,感谢Richard Downer对此代码的解释:

资源策略与IAM策略不同,设置IAM策略将不起作用。

创建Write-AGIntegration后,您需要使用Add-LMPermission api调用。

以下是一个例子:

Add-LMPermission -FunctionName myfunction -Action lambda:InvokeFunction -Principal apigateway.amazonaws.com -SourceArn arn:aws:execute-api:us-west-2:IAMAccountNumber:*/*/POST/apiendpoint -StatementId description