View a markdown version of this page

Menegakkan dan melingkupkan SSE-KMS penggunaan untuk tabel dan bucket meja - Amazon Simple Storage Service

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

Menegakkan dan melingkupkan SSE-KMS penggunaan untuk tabel dan bucket meja

Anda dapat menggunakan kebijakan berbasis sumber daya Tabel S3, kebijakan kunci KMS, kebijakan berbasis identitas IAM, atau kombinasi keduanya, untuk memaksakan penggunaan SSE-KMS tabel S3 dan bucket tabel. Untuk informasi selengkapnya tentang identitas dan kebijakan sumber daya untuk tabel, lihatManajemen akses untuk Tabel S3. Untuk informasi tentang penulisan kebijakan utama, lihat Kebijakan utama di Panduan AWS Key Management Service Pengembang. Contoh berikut menunjukkan bagaimana Anda dapat menggunakan kebijakan untuk menegakkan SSE-KMS.

Ini adalah contoh kebijakan bucket tabel yang mencegah pengguna membuat tabel dalam bucket tabel tertentu kecuali mereka mengenkripsi tabel dengan AWS KMS kunci tertentu. Untuk menggunakan kebijakan ini, ganti user input placeholders dengan informasi Anda sendiri:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "EnforceKMSEncryptionAlgorithm", "Effect": "Deny", "Principal": "*", "Action": [ "s3tables:CreateTable" ], "Resource": [ "arn:aws:s3tables:us-west-2:111122223333:bucket/example-table-bucket/*" ], "Condition": { "StringNotEquals": { "s3tables:sseAlgorithm": "aws:kms" } } }, { "Sid": "EnforceKMSEncryptionKey", "Effect": "Deny", "Principal": "*", "Action": [ "s3tables:CreateTable" ], "Resource": [ "arn:aws:s3tables:us-west-2:111122223333:bucket/example-table-bucket/*" ], "Condition": { "StringNotEquals": { "s3tables:kmsKeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } } ] }

Kebijakan identitas IAM ini mengharuskan pengguna untuk menggunakan AWS KMS kunci tertentu untuk enkripsi saat membuat atau mengonfigurasi sumber daya Tabel S3. Untuk menggunakan kebijakan ini, ganti user input placeholders dengan informasi Anda sendiri:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RequireSSEKMSOnTables", "Action": [ "s3tables:CreateTableBucket", "s3tables:PutTableBucketEncryption", "s3tables:CreateTable" ], "Effect": "Deny", "Resource": "*", "Condition": { "StringNotEquals": { "s3tables:sseAlgorithm": "aws:kms" } } }, { "Sid": "RequireKMSKeyOnTables", "Action": [ "s3tables:CreateTableBucket", "s3tables:PutTableBucketEncryption", "s3tables:CreateTable" ], "Effect": "Deny", "Resource": "*", "Condition": { "StringNotEquals": { "s3tables:kmsKeyArn": "<key_arn>" } } } ] }

Contoh kebijakan kunci KMS ini memungkinkan kunci digunakan oleh pengguna tertentu hanya untuk operasi enkripsi dalam bucket tabel tertentu. Jenis kebijakan ini berguna untuk membatasi akses ke kunci dalam skenario lintas akun. Untuk menggunakan kebijakan ini, ganti user input placeholders dengan informasi Anda sendiri:

JSON
{ "Version":"2012-10-17", "Id": "Id", "Statement": [ { "Sid": "AllowPermissionsToKMS", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:s3:arn": "<table-bucket-arn>/*" } } } ] }