允许 AWS Lambda 函数访问 DynamoDB 流记录的 IAM 策略 - Amazon DynamoDB
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

允许 AWS Lambda 函数访问 DynamoDB 流记录的 IAM 策略

如果您希望根据 DynamoDB 流中的事件执行特定操作,可以编写由这些事件触发的 AWS Lambda 函数。诸如此类的 Lambda 函数需要从 DynamoDB 流读取数据的权限。有关将 Lambda 与 DynamoDB 流 配合使用的更多信息,请参阅DynamoDB 流 和 AWS Lambda 触发器

要向 Lambda 授予权限,请使用与 Lambda 函数的 IAM 角色(也称作执行角色)关联的权限策略。在创建 Lambda 函数时指定此策略。

例如,您可以将以下权限策略与执行角色相关联,以授予 Lambda 执行所列 DynamoDB 流 操作的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowLambdaFunctionInvocation", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "*" ] }, { "Sid": "APIAccessForDynamoDBStreams", "Effect": "Allow", "Action": [ "dynamodb:GetRecords", "dynamodb:GetShardIterator", "dynamodb:DescribeStream", "dynamodb:ListStreams" ], "Resource": "arn:aws:dynamodb:us-west-2:123456789012:table/GameScores/streams/*" } ] }

有关更多信息,请参阅 https://docs.amazonaws.cn/lambda/latest/dg/intro-permission-model.html 中的 AWS Lambda 权限AWS Lambda Developer Guide。