Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memberikan izin untuk Batch Operations
Sebelum membuat dan menjalankan pekerjaan Operasi Batch S3, Anda harus memberikan izin yang diperlukan. Untuk membuat pekerjaan Operasi Batch Amazon S3, izin pengguna s3:CreateJob
diperlukan. Entitas yang sama yang membuat job juga harus memiliki iam:PassRole
izin untuk meneruskan peran AWS Identity and Access Management (IAM) yang ditentukan untuk pekerjaan tersebut ke Operasi Batch.
Untuk informasi umum tentang menentukan IAM sumber daya, lihat IAMJSONkebijakan, Elemen sumber daya di Panduan IAM Pengguna. Bagian berikut memberikan informasi tentang membuat IAM peran dan melampirkan kebijakan.
Membuat peran Operasi IAM Batch S3
Amazon S3 harus memiliki izin untuk menjalankan Operasi Batch S3 atas nama Anda. Anda memberikan izin ini melalui peran AWS Identity and Access Management (IAM). Bagian ini memberikan contoh kebijakan kepercayaan dan izin yang Anda gunakan saat membuat IAM peran. Untuk informasi selengkapnya, lihat IAMperan di Panduan IAM Pengguna. Sebagai contoh, lihat Mengontrol izin untuk Operasi Batch menggunakan tag pekerjaan dan Menyalin objek menggunakan Operasi Batch S3.
Dalam IAM kebijakan Anda, Anda juga dapat menggunakan tombol kondisi untuk memfilter izin akses untuk pekerjaan Operasi Batch S3. Untuk informasi selengkapnya dan daftar lengkap kunci kondisi khusus Amazon S3, lihat Kunci tindakan, sumber daya, dan kondisi untuk Amazon S3 di Referensi Otorisasi Layanan.
Untuk informasi selengkapnya tentang izin API operasi S3 menurut jenis sumber daya S3, lihat. Izin yang diperlukan untuk operasi Amazon API S3
Video berikut mencakup cara mengatur IAM izin untuk pekerjaan Operasi Batch menggunakan. AWS Management Console
Kebijakan kepercayaan
Untuk memungkinkan prinsipal layanan Operasi Batch S3 untuk mengambil IAM peran, lampirkan kebijakan kepercayaan berikut ke peran tersebut.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"batchoperations.s3.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
Melampirkan kebijakan izin
Tergantung pada jenis operasinya, Anda dapat melampirkan salah satu kebijakan berikut.
Sebelum Anda mengonfigurasi izin, perhatikan hal berikut ini:
-
Apa pun operasinya, Amazon S3 tetap memerlukan izin untuk membaca objek manifes Anda dari bucket S3 dan menulis laporan ke bucket Anda secara opsional. Oleh karena itu, semua kebijakan berikut mencakup izin ini.
-
Untuk manifes laporan Inventaris Amazon S3, Operasi Batch S3 memerlukan izin untuk membaca objek manifest.json dan semua file data terkait. CSV
-
Izin khusus versi seperti
s3:GetObjectVersion
hanya diperlukan saat Anda menentukan ID versi objek. -
Jika Anda menjalankan Operasi Batch S3 pada objek terenkripsi, IAM peran juga harus memiliki akses ke AWS KMS kunci yang digunakan untuk mengenkripsi mereka.
-
Jika Anda mengirimkan manifes laporan inventaris yang dienkripsi AWS KMS, IAM kebijakan Anda harus menyertakan izin
"kms:Decrypt"
dan"kms:GenerateDataKey"
objek manifest.json serta semua file data terkait. CSV Jika pekerjaan Operasi Batch menghasilkan manifes dalam bucket yang mengaktifkan daftar kontrol akses (ACLs) dan berada di posisi lain Akun AWS, Anda harus memberikan
s3:PutObjectAcl
izin dalam IAM kebijakan IAM peran yang dikonfigurasi untuk pekerjaan batch. Jika Anda tidak menyertakan izin ini, pekerjaan batch gagal dengan kesalahanError occurred when preparing manifest: Failed to write manifest
.
Salin objek: PutObject
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectTagging" ], "Effect": "Allow", "Resource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" }, { "Action": [ "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectTagging", "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket
", "arn:aws:s3:::amzn-s3-demo-source-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Ganti penandaan objek: PutObjectTagging
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:PutObjectTagging", "s3:PutObjectVersionTagging" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Hapus penandaan objek: DeleteObjectTagging
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:DeleteObjectTagging", "s3:DeleteObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Ganti daftar kontrol akses: PutObjectAcl
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:PutObjectAcl", "s3:PutObjectVersionAcl" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Kembalikan objek: RestoreObject
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:RestoreObject" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
/*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Terapkan retensi Object Lock: PutObjectRetention
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetBucketObjectLockConfiguration", "Resource": [ "arn:aws:s3:::
amzn-s3-demo-destination-bucket
" ] }, { "Effect": "Allow", "Action": [ "s3:PutObjectRetention", "s3:BypassGovernanceRetention" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Terapkan penahanan hukum Object Lock: PutObjectLegalHold
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetBucketObjectLockConfiguration", "Resource": [ "arn:aws:s3:::
amzn-s3-demo-destination-bucket
" ] }, { "Effect": "Allow", "Action": "s3:PutObjectLegalHold", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }
Replikasi objek yang ada: InitiateReplication dengan manifes yang dihasilkan S3
Gunakan kebijakan ini jika Anda menggunakan dan menyimpan manifes yang dihasilkan S3. Untuk informasi selengkapnya tentang menggunakan Operasi Batch untuk mereplikasi objek yang ada, lihatMereplikasi objek yang ada dengan Batch Replication.
{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:InitiateReplication" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::
amzn-s3-demo-source-bucket
/*" ] }, { "Action":[ "s3:GetReplicationConfiguration", "s3:PutInventoryConfiguration" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-source-bucket
" ] }, { "Action":[ "s3:GetObject", "s3:GetObjectVersion" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*", "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] } ] }
Replikasi objek yang ada: InitiateReplication dengan manifes pengguna
Gunakan kebijakan ini jika Anda menggunakan manifes yang disediakan pengguna. Untuk informasi selengkapnya tentang menggunakan Operasi Batch untuk mereplikasi objek yang ada, lihatMereplikasi objek yang ada dengan Batch Replication.
{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:InitiateReplication" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::
amzn-s3-demo-source-bucket
/*" ] }, { "Action":[ "s3:GetObject", "s3:GetObjectVersion" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] }