aaq*_*b90 7 lambda amazon-web-services
当我尝试触发时出现此错误
创建触发器时出错:无法访问流 arn:aws:dynamodb:us-east-2:xxxxxx:table/xxxx/stream/2017-09-18T07:47:01.834。请确保该角色可以在 IAM 中对您的流执行 GetRecords、GetShardIterator、DescribeStream 和 ListStreams 操作。
请帮我,
Dyl*_*n w 11
将触发器附加到 DynamoDb 表时,您将收到 OP 发布的错误
您需要向为该 lambda 函数生成的 IAM 角色添加策略。
这是可用于创建策略的示例 JSON,只需替换 lambda 函数和流 ARN。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "lambda:InvokeFunction",
"Resource": "arn:aws:lambda:region:accountnumber:function:functionname"
},
{
"Effect": "Allow",
"Action": [
"dynamodb:DescribeStream",
"dynamodb:GetRecords",
"dynamodb:GetShardIterator",
"dynamodb:ListStreams"
],
"Resource": "arn:aws:dynamodb:region:accountnumber:table/table-name/stream/2019-02-27T07:41:49.893"
}
]
}
Run Code Online (Sandbox Code Playgroud)
创建策略并将其附加到角色后,您可以返回 DynamoDB 并使用 lambda 函数创建新触发器。如果操作正确,它将创建而不会出错。
根据错误消息,您的 IAM 设置不正确。您需要将这些类型的角色分配给您的用户。
您必须创建一个策略,允许您的 AWS 函数访问 Cloudwatch 日志以及您刚刚创建的表。转到 IAM 控制台,选择“角色”,然后选择“创建新角色”。
然后单击“下一步”以跳过“附加策略”部分
http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html将帮助您解决此错误。
另外,我尝试遵循以下信息: https: //github.com/dwyl/learn-aws-lambda#what-is-lambda来访问 dynamodb,并且它与 root(主)用户运行良好。
归档时间: |
|
查看次数: |
6836 次 |
最近记录: |