我已经在将API部署到lambda之后创建了我的API,并且我尝试通过Gatewayapi中的"测试"按钮测试端点,我会得到错误:
"用户:arn:aws:sts :: 245912153055:假定的/pets-service-service-service-service-service-dev-us-east-1-lambdarole/pets-service-service-service-service-service-dev-listpets无权执行:dynamodb:dynamodb:在资源:ARN:AWS:DynamoDB:us-east-1:245912153055:table/pets'
我可能需要允许Lambda的权限,但是我有点丢失...
如前所述,您需要将权限添加到无服务器定义中。
文档在此主题上非常广泛:无服务的IAM指南
在您的情况下,您可能只需要在无服务器中添加以下权限。
provider:
iamRoleStatements:
- Effect: "Allow"
Action:
- "dynamodb:Scan"
Resource: "arn:aws:dynamodb:us-east-1:245912153055:table/Pets"
我参加聚会有点晚了,但它仍然可以帮助某人知道目前(2019年3月)在创建您的lambda时使用nodejs vs 8.10似乎存在问题。添加所有必要的权限仍然会导致上述错误。一个简单的修复程序是暂时使用较低的Nodejs版本。希望这个问题尽快解决