Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan IAM dengan transaksi DynamoDB
Anda dapat menggunakan AWS Identity and Access Management (IAM) untuk membatasi tindakan yang dapat dilakukan operasi transaksional di Amazon DynamoDB. Untuk informasi selengkapnya tentang penggunaan IAM kebijakan di DynamoDB, lihat. Kebijakan berbasis identitas untuk DynamoDB
Izin untuk tindakan Put
, Update
, Delete
, dan Get
diatur oleh izin yang digunakan untuk operasi PutItem
, UpdateItem
, DeleteItem
, dan GetItem
yang mendasarinya. Untuk ConditionCheck
tindakan, Anda dapat menggunakan dynamodb:ConditionCheck
izin dalam IAM kebijakan.
Berikut ini adalah contoh IAM kebijakan yang dapat Anda gunakan untuk mengkonfigurasi transaksi DynamoDB.
Contoh 1: Mengizinkan operasi transaksional
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:ConditionCheckItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem" ], "Resource": [ "arn:aws:dynamodb:*:*:table/table04" ] } ] }
Contoh 2: Hanya mengizinkan operasi transaksional
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:ConditionCheckItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem" ], "Resource": [ "arn:aws:dynamodb:*:*:table/table04" ], "Condition": { "ForAnyValue:StringEquals": { "dynamodb:EnclosingOperation": [ "TransactWriteItems", "TransactGetItems" ] } } } ] }
Contoh 3: Mengizinkan baca dan tulis nontransaksional, dan memblokir baca dan tulis transaksional
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "dynamodb:ConditionCheckItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem" ], "Resource": [ "arn:aws:dynamodb:*:*:table/table04" ], "Condition": { "ForAnyValue:StringEquals": { "dynamodb:EnclosingOperation": [ "TransactWriteItems", "TransactGetItems" ] } } }, { "Effect": "Allow", "Action": [ "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:UpdateItem" ], "Resource": [ "arn:aws:dynamodb:*:*:table/table04" ] } ] }
Contoh 4: Mencegah informasi dikembalikan pada ConditionCheck kegagalan
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:ConditionCheckItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem" ], "Resource": "arn:aws:dynamodb:*:*:table/table01", "Condition": { "StringEqualsIfExists": { "dynamodb:ReturnValues": "NONE" } } } ] }