Kinesis Consumer使用KCL时需要哪些IAM权限?

问题描述 投票:0回答:1

我有一个使用Kinesis Client Library(KCL)编写的Kinesis使用者。该使用者正在承担IAM角色。

我已经从documentation中读取了:

KCL使用应用程序名称创建DynamoDB表,并使用该表维护应用程序的状态信息(例如,检查点和工作区-碎片映射)。每个应用程序都有自己的DynamoDB表。有关更多信息,请参阅跟踪Amazon Kinesis数据流应用程序状态。

当然,我需要向我的IAM角色添加dynamodb:CreateTable权限。但是,我在其他方面遇到错误(例如dynamodb:DescribeTable)。

我的KCL使用者需要访问所有DynamoDB操作的列表吗?似乎缺少文档,我希望有一个权威列表而不是继续尝试运行我的应用程序。

amazon-web-services amazon-dynamodb amazon-kinesis amazon-kcl
1个回答
0
投票

这应该是您所需的权限集。表名由客户端代码提供,默认为appName,但可以在ConfigsBuilder中覆盖:

          - Effect: Allow
            Action:
              - dynamodb:CreateTable
              - dynamodb:DescribeTable
              - dynamodb:Scan
              - dynamodb:PutItem
              - dynamodb:GetItem
              - dynamodb:UpdateItem
              - dynamodb:DeleteItem
            Resource:
              - !Join ["", ["arn:aws:dynamodb:*:", !Ref 'AWS::AccountId', ":table/*"]]
© www.soinside.com 2019 - 2024. All rights reserved.