Menggunakan IAM dengan tabel global DynamoDB - Amazon DynamoDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan IAM dengan tabel global DynamoDB

Saat Anda membuat tabel global untuk pertama kalinya, Amazon DynamoDB secara otomatis membuat AWS Identity and Access Management peran terkait layanan IAM () untuk Anda. Peran ini bernama AWSServiceRoleForDynamoDBReplication, dan memungkinkan DynamoDB untuk mengelola replikasi lintas-Wilayah untuk tabel global atas nama Anda. Jangan hapus peran tertaut layanan ini. Jika Anda melakukannya, semua tabel global Anda tidak akan lagi berfungsi.

Untuk informasi selengkapnya tentang peran terkait layanan, lihat Menggunakan peran terkait layanan dalam Panduan Pengguna IAM.

Untuk membuat tabel replika di DynamoDB, Anda harus memiliki izin berikut di wilayah sumber.

  • dynamodb:UpdateTable

Untuk membuat tabel replika di DynamoDB, Anda harus memiliki izin berikut di wilayah tujuan.

  • dynamodb:CreateTable

  • dynamodb:CreateTableReplica

  • dynamodb:Scan

  • dynamodb:Query

  • dynamodb:UpdateItem

  • dynamodb:PutItem

  • dynamodb:GetItem

  • dynamodb:DeleteItem

  • dynamodb:BatchWriteItem

Untuk menghapus tabel replika di DynamoDB, Anda harus memiliki izin berikut di wilayah tujuan.

  • dynamodb:DeleteTable

  • dynamodb:DeleteTableReplica

Untuk memperbarui kebijakan penskalaan otomatis replikaUpdateTableReplicaAutoScaling, Anda harus memiliki izin berikut di semua Wilayah tempat replika tabel ada

  • 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

Untuk menggunakan UpdateTimeToLive Anda harus memiliki izin untuk dynamodb:UpdateTimeToLive di semua Wilayah tempat replika tabel berada.

Contoh: Menambahkan replika

IAMKebijakan berikut memberikan izin untuk memungkinkan Anda menambahkan replika ke tabel global.

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

Contoh: AutoScaling Kebijakan pembaruan

IAMKebijakan berikut memberikan izin untuk memungkinkan Anda memperbarui kebijakan penskalaan otomatis replika.

{ "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": "*" } ] }

Contoh: Memungkinkan pembuatan replika untuk wilayah dan nama tabel tertentu

IAMKebijakan berikut memberikan izin untuk mengizinkan pembuatan tabel dan replika untuk Customers tabel dengan replika di tiga Wilayah.

{ "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" ] } ] }