IAM 搭配 DynamoDB 全域資料表使用 - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

IAM 搭配 DynamoDB 全域資料表使用

當您第一次建立全域資料表時,Amazon DynamoDB 會自動為您建立 AWS Identity and Access Management (IAM) 服務連結角色。此角色名為 AWSServiceRoleForDynamoDBReplication,可讓 DynamoDB 代您管理全域資料表的跨區域複寫。請勿刪除此服務連結角色。若您刪除,您所有全域資料表將無法再運作。

如需服務連結角色的詳細資訊,請參閱 IAM 使用者指南 中的使用服務連結角色

若要在 DynamoDB 中建立複本列表,您必須在來源區域中有下列許可。

  • dynamodb:UpdateTable

若要在 DynamoDB 中建立複本列表,您必須在目的地區域中有下列許可。

  • dynamodb:CreateTable

  • dynamodb:CreateTableReplica

  • dynamodb:Scan

  • dynamodb:Query

  • dynamodb:UpdateItem

  • dynamodb:PutItem

  • dynamodb:GetItem

  • dynamodb:DeleteItem

  • dynamodb:BatchWriteItem

若要在 DynamoDB 中刪除複本列表,您必須在目的地區域中有下列許可。

  • dynamodb:DeleteTable

  • dynamodb:DeleteTableReplica

若要透過 更新複本自動擴展政策UpdateTableReplicaAutoScaling,您必須在存在資料表複本的所有區域中擁有下列許可

  • application-autoscaling:DeleteScalingPolicy

  • application-autoscaling:DeleteScheduledAction

  • application-autoscaling:DeregisterScalableTarget

  • application-autoscaling:DescribeScalableTargets

  • application-autoscaling:DescribeScalingActivities

  • application-autoscaling:DescribeScalingPolicies

  • application-autoscaling:DescribeScheduledActions

  • application-autoscaling:PutScalingPolicy

  • application-autoscaling:PutScheduledAction

  • application-autoscaling:RegisterScalableTarget

若要使用 UpdateTimeToLive,您必須在有資料表複本的所有區域中有 dynamodb:UpdateTimeToLive 的許可。

範例:新增複本

下列IAM政策授予許可,允許您將複本新增至全域資料表。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "dynamodb:CreateTable", "dynamodb:DescribeTable", "dynamodb:UpdateTable", "dynamodb:CreateTableReplica", "iam:CreateServiceLinkedRole" ], "Resource": "*" } ] }

範例:更新 AutoScaling 政策

下列IAM政策授予許可,讓您更新複本自動擴展政策。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "application-autoscaling:RegisterScalableTarget", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DescribeScalableTargets", "application-autoscaling:DescribeScalingActivities", "application-autoscaling:DescribeScalingPolicies", "application-autoscaling:PutScalingPolicy", "application-autoscaling:DescribeScheduledActions", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:DeregisterScalableTarget" ], "Resource": "*" } ] }

範例:允許特定資料表名稱和區域的複本建立

下列IAM政策授予許可,允許在三個區域中為具有複本的Customers資料表建立資料表和複本。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "dynamodb:CreateTable", "dynamodb:DescribeTable", "dynamodb:UpdateTable" ], "Resource": [ "arn:aws:dynamodb:us-east-1:123456789012:table/Customers", "arn:aws:dynamodb:us-west-1:123456789012:table/Customers", "arn:aws:dynamodb:eu-east-2:123456789012:table/Customers" ] } ] }