Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
memberikan izin untuk memublikasikan pesan pemberitahuan peristiwa ke tujuan
Anda harus memberikan izin yang diperlukan kepada pengguna utama Amazon S3 untuk memanggil API terkait guna menerbitkan pesan ke topik SNS, antrean SQS, atau fungsi Lambda. Hal ini agar Amazon S3 dapat memublikasikan pesan pemberitahuan peristiwa ke tujuan.
Untuk memecahkan masalah memublikasikan pesan pemberitahuan peristiwa ke tujuan, lihat Memecahkan masalah untuk memublikasikan pemberitahuan peristiwa Amazon S3 ke topik Layanan Pemberitahuan Sederhana Amazon
Topik
Memberikan izin untuk menjalankan fungsi AWS Lambda
Amazon S3 menerbitkan pesan peristiwa AWS Lambda dengan menjalankan fungsi Lambda dan menyediakan pesan acara sebagai argumen.
Saat Anda menggunakan konsol Amazon S3 untuk mengonfigurasi notifikasi peristiwa pada bucket Amazon S3 untuk fungsi Lambda, konsol menyiapkan izin yang diperlukan pada fungsi Lambda. Ini agar Amazon S3 memiliki izin untuk menginvokasi fungsi dari bucket. Untuk informasi selengkapnya, lihat Mengaktifkan dan mengonfigurasi notifikasi peristiwa menggunakan konsol Amazon S3.
Anda juga dapat memberikan izin Amazon S3 dari AWS Lambda untuk menjalankan fungsi Lambda Anda. Untuk informasi selengkapnya, lihat Tutorial: Menggunakan AWS Lambda Amazon S3 di Panduan AWS Lambda Pengembang.
memberikan izin untuk memublikasikan pesan ke topik SNS atau antrean SQS
Untuk memberikan izin Amazon S3 untuk memublikasikan pesan ke topik SNS atau antrean SQS, lampirkan kebijakan AWS Identity and Access Management (IAM) ke topik SNS tujuan atau antrean SQS.
Sebagai contoh cara melampirkan kebijakan ke topik SNS atau antrean SQS, lihat Panduan: Mengonfigurasi bucket untuk notifikasi (topik SNS atau antrean SQS). Untuk informasi lebih lanjut tentang izin, lihat topik berikut:
-
Contoh kasus untuk kendali akses Amazon SNS dalam Panduan Amazon Simple Notification Service
-
Manajemen Identitas dan Akses di Amazon SQS dalam Panduan Pengembang Amazon Simple Queue Service
Kebijakan IAM untuk topik SNS tujuan
Berikut ini adalah contoh kebijakan AWS Identity and Access Management (IAM) yang Anda lampirkan ke topik SNS tujuan. Untuk petunjuk tentang cara menggunakan kebijakan ini untuk menyiapkan topik Amazon SNS tujuan untuk pemberitahuan peristiwa, lihat Panduan: Mengonfigurasi bucket untuk notifikasi (topik SNS atau antrean SQS).
{ "Version": "2012-10-17", "Id": "example-ID", "Statement": [ { "Sid": "Example SNS topic policy", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "
SNS-topic-ARN
", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:" }, "StringEquals": { "aws:SourceAccount": "
amzn-s3-demo-bucket
bucket-owner-account-id
" } } } ] }
Kebijakan IAM untuk antrean SQS tujuan
Berikut ini adalah contoh kebijakan IAM yang Anda lampirkan ke antrean SQS tujuan. Untuk petunjuk tentang cara menggunakan kebijakan ini untuk menyiapkan antrean Amazon SQS tujuan untuk pemberitahuan peristiwa, lihat Panduan: Mengonfigurasi bucket untuk notifikasi (topik SNS atau antrean SQS).
Untuk menggunakan kebijakan ini, Anda harus memperbarui ARN antrian Amazon SQS, nama bucket, dan ID pemilik bucket. Akun AWS
{ "Version": "2012-10-17", "Id": "example-ID", "Statement": [ { "Sid": "example-statement-ID", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SQS:SendMessage" ], "Resource": "arn:aws:sqs:
Region
:account-id
:queue-name
", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:awsexamplebucket1
" }, "StringEquals": { "aws:SourceAccount": "bucket-owner-account-id
" } } } ] }
Untuk kebijakan Amazon SNS dan Amazon SQS IAM, Anda dapat menentukan StringLike
kondisi dalam kebijakan, bukan kondisi ArnLike
.
Ketika ArnLike
digunakan, partisi, layanan, account-id, resource-type, dan sebagian resource-id bagian dari ARN harus memiliki pencocokan yang tepat dengan ARN dalam konteks permintaan. Hanya wilayah dan jalur sumber daya yang memungkinkan pencocokan sebagian.
Ketika StringLike
digunakan sebagai pengganti ArnLike
, pencocokan mengabaikan struktur ARN dan memungkinkan pencocokan paral, terlepas dari bagian yang diberi wildcard. Untuk informasi selengkapnya, lihat Elemen Kebijakan IAM JSON dalam Panduan Pengguna IAM.
"Condition": { "StringLike": { "aws:SourceArn": "arn:aws:s3:*:*:
" } }
amzn-s3-demo-bucket
AWS KMS kebijakan kunci
Jika antrean SQS atau topik SNS dienkripsi dengan kunci yang dikelola pelanggan AWS Key Management Service (AWS KMS), Anda harus memberikan izin utama layanan Amazon S3 untuk bekerja dengan topik atau antrian terenkripsi. Untuk memberikan izin pengguna utama layanan Amazon S3, tambahkan pernyataan berikut ke kebijakan kunci untuk CMK.
{ "Version": "2012-10-17", "Id": "example-ID", "Statement": [ { "Sid": "example-statement-ID", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*" } ] }
Untuk informasi selengkapnya tentang kebijakan AWS KMS utama, lihat Menggunakan kebijakan utama AWS KMS di Panduan AWS Key Management Service Pengembang.
Untuk informasi selengkapnya tentang penggunaan enkripsi sisi server dengan Amazon AWS KMS SQS dan Amazon SNS, lihat berikut ini:
-
Pengelolaan kunci di Panduan Pengembang Layanan Notifikasi Sederhana Amazon.
-
Pengelolaan kunci di Panduan Pengembang Layanan Antrean Sederhana Amazon.
-
Mengenkripsi pesan yang diterbitkan untuk Amazon SNS dengan AWS KMS
dalam Blog Komputasi AWS .