Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Persyaratan izin untuk enkripsi SSE-KMS Tabel S3
Saat Anda menggunakan enkripsi sisi server dengan kunci AWS Key Management Service (AWS KMS) (SSE-KMS) untuk tabel di bucket tabel S3, Anda harus memberikan izin untuk identitas yang berbeda di akun Anda. Minimal identitas akses Anda dan prinsip pemeliharaan Tabel S3 memerlukan akses ke kunci Anda, izin lain yang diperlukan bergantung pada kasus penggunaan Anda.
- Izin yang Diperlukan
Untuk mengakses tabel yang dienkripsi dengan kunci KMS, Anda memerlukan izin ini pada kunci itu:
kms:GenerateDataKey
kms:Decrypt
penting
Untuk menggunakan SSE-KMS pada tabel, prinsipal (
maintenance.s3tables.amazonaws.com
) layanan pemeliharaan Tabel Amazon S3 membutuhkankms:GenerateDataKey
dankms:Decrypt
izin pada kunci.- Izin tambahan
-
Izin tambahan ini diperlukan tergantung pada kasus penggunaan Anda:
Izin untuk integrasi layanan AWS analitik — Jika Anda bekerja dengan tabel terenkripsi SSE-KMS dalam layanan AWS analitik, peran integrasi Anda memerlukan izin untuk menggunakan kunci KMS Anda.
Izin untuk akses langsung - Jika Anda bekerja dengan tabel terenkripsi SSE-KMS secara langsung, melalui metode seperti Tabel Amazon S3 Iceberg REST titik akhir atau Katalog Tabel Amazon S3 untuk Apache Iceberg, Anda perlu memberikan peran IAM yang digunakan klien Anda mengakses kunci Anda.
Izin untuk tabel Metadata S3 — Jika Anda menggunakan enkripsi SSE-KMS untuk tabel Metadata S3, Anda harus memberikan akses utama layanan S3 Metadata () ke kunci KMS Anda.
metadata.s3.amazonaws.com
Hal ini memungkinkan Metadata S3 untuk memperbarui tabel terenkripsi sehingga mereka akan mencerminkan perubahan data terbaru Anda.
catatan
Untuk kunci KMS lintas akun, peran IAM Anda memerlukan izin akses kunci dan otorisasi eksplisit dalam kebijakan kunci. Untuk informasi selengkapnya tentang izin lintas akun untuk kunci KMS, lihat Mengizinkan AWS akun eksternal menggunakan kunci KMS di Panduan Pengembang AWS Key Management Service Layanan.
Topik
Memberikan izin utama layanan pemeliharaan Tabel S3 ke kunci KMS Anda
Izin ini diperlukan untuk membuat tabel terenkripsi SSE-KMS dan untuk memungkinkan pemeliharaan tabel otomatis seperti pemadatan, manajemen snapshot, dan penghapusan file yang tidak direferensikan pada tabel terenkripsi.
catatan
Setiap kali Anda membuat permintaan untuk membuat tabel terenkripsi SSE-KMS, Tabel S3 memeriksa untuk memastikan maintenance.s3tables.amazonaws.com
kepala sekolah memiliki akses ke kunci KMS Anda. Untuk melakukan pemeriksaan ini, objek zero-byte dibuat sementara di bucket tabel Anda, objek ini akan secara otomatis dihapus oleh operasi pemeliharaan penghapusan file yang tidak direferensikan. Jika kunci KMS yang Anda tentukan untuk enkripsi tidak memiliki akses pemeliharaan, operasi CreateTable akan gagal.
Untuk memberikan akses pemeliharaan pada tabel terenkripsi SSE-KMS, Anda dapat menggunakan contoh kebijakan kunci berikut. Dalam kebijakan ini, kepala maintenance.s3tables.amazonaws.com
layanan diberikan izin untuk menggunakan kunci KMS tertentu untuk mengenkripsi dan mendekripsi tabel dalam keranjang tabel tertentu. Untuk menggunakan kebijakan ini, ganti user input placeholders
dengan informasi Anda sendiri:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnableKeyUsage", "Effect": "Allow", "Principal": { "Service": "maintenance.s3tables.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "
<kms-key-arn>
", "Condition": { "StringLike": { "kms:EncryptionContext:aws:s3:arn":"<table-or-table-bucket-arn>
/*" } } } ] }
Memberikan izin kepada prinsipal IAM untuk bekerja dengan tabel terenkripsi dalam layanan analitik terintegrasi AWS
Untuk bekerja dengan tabel S3 dalam layanan AWS analitik, Anda mengintegrasikan bucket tabel Anda dengan Amazon SageMaker Lakehouse. Integrasi ini memungkinkan layanan AWS analitik untuk secara otomatis menemukan dan mengakses data tabel. Untuk informasi lebih lanjut tentang integrasi, lihatMenggunakan Tabel Amazon S3 dengan layanan analitik AWS.
Saat Anda bekerja dengan tabel terenkripsi SSE-KMS di layanan tersebut, peran yang Anda gunakan harus memiliki izin untuk menggunakan kunci Anda AWS KMS untuk operasi enkripsi. Anda dapat menerapkan izin ini ke S3TablesRoleForLakeFormation
peran yang dibuat selama integrasi, atau ke peran IAM Anda sendiri.
Contoh kebijakan IAM inline berikut dapat digunakan untuk memberikan izin peran S3TablesRoleForLakeFormation
layanan untuk menggunakan kunci KMS tertentu di akun Anda untuk operasi enkripsi. Untuk menggunakan kebijakan, ganti input placeholder values
dengan kebijakan Anda sendiri.
{ "Sid": "AllowTableRoleAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
111122223333
:role/service-role/S3TablesRoleForLakeFormation" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "<kms-key-arn>
" }
Memberikan izin kepada prinsipal IAM untuk bekerja dengan tabel terenkripsi secara langsung
Ketika Anda bekerja dengan tabel terenkripsi menggunakan pihak ketiga atau metode akses langsung, Anda harus memberikan peran yang Anda gunakan akses ke kunci KMS Anda. Contoh berikut menunjukkan cara memberikan akses melalui kebijakan IAM atau kebijakan kunci KMS.
Memberikan izin utama layanan Metadata S3 untuk menggunakan kunci KMS Anda
Untuk mengizinkan Amazon S3 memperbarui tabel metadata terenkripsi SSE-KMS, dan melakukan pemeliharaan pada tabel metadata tersebut, Anda dapat menggunakan kebijakan kunci contoh berikut. Dalam kebijakan ini, Anda mengizinkan kepala sekolah metadata.s3.amazonaws.com
dan maintenance.s3tables.amazonaws.com
layanan mengenkripsi dan mendekripsi tabel dalam keranjang tabel tertentu menggunakan kunci tertentu. Untuk menggunakan kebijakan ini, ganti user input placeholders
dengan informasi Anda sendiri:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnableKeyUsage", "Effect": "Allow", "Principal": { "Service": [ "maintenance.s3tables.amazonaws.com", "metadata.s3.amazonaws.com" ] }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "
<kms-key-arn>
", "Condition": { "StringLike ": { "kms:EncryptionContext:aws:s3:arn": "<table-or-table-bucket-arn>
/*" } } } ] }