View a markdown version of this page

memberikan izin untuk memublikasikan pesan pemberitahuan peristiwa ke tujuan - Amazon Simple Storage Service

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 .

Memberikan izin untuk memanggil AWS Lambda Fungsi

Amazon S3 menerbitkan pesan peristiwa AWS Lambda dengan memanggil fungsi Lambda dan memberikan pesan peristiwa 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 AWS Lambda untuk memanggil fungsi Lambda Anda. Untuk informasi selengkapnya, lihat Tutorial: Menggunakan AWS Lambda dengan Amazon S3 di Panduan AWS Lambda Pengembang.

memberikan izin untuk memublikasikan pesan ke topik SNS atau antrean SQS

Untuk memberikan izin Amazon S3 untuk menerbitkan pesan ke topik SNS atau antrian SQS, lampirkan kebijakan AWS Identity and Access Management (IAM) ke topik SNS tujuan atau antrian 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:

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).

JSON
{ "Version":"2012-10-17", "Id": "example-ID", "Statement": [ { "Sid": "Example SNS topic policy", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "arn:aws:sns:us-east-1:111122223333:example-sns-topic", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:s3:::amzn-s3-demo-bucket" }, "StringEquals": { "aws:SourceAccount": "bucket-owner-123456789012" } } } ] }

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 Akun AWS ID pemilik bucket.

JSON
{ "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:us-east-1:111122223333:queue-name", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:amzn-s3-demo-bucket" }, "StringEquals": { "aws:SourceAccount": "bucket-owner-123456789012" } } } ] }

Untuk kebijakan Amazon SNS dan Amazon SQS IAM, Anda dapat menentukan StringLike kondisi dalam kebijakan, bukan kondisi ArnLike.

Ketika ArnLike digunakan, partisi, layanan, ID akun, jenis sumber daya, dan bagian ID sumber daya parSIAL dari ARN harus benar-benar cocok dengan ARN dalam konteks permintaan. Hanya jalur Wilayah dan sumber daya yang memungkinkan pencocokan sebagian.

Ketika StringLike digunakan sebagai penggantiArnLike, pencocokan mengabaikan struktur ARN dan memungkinkan pencocokan sebagian, terlepas dari bagian yang diganti oleh karakter 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 antrian 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.

JSON
{ "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 selengkap AWS KMS nya tentang kebijakan utama, lihat Menggunakan kebijakan utama AWS KMS di Panduan Peng AWS Key Management Service embang.

Untuk informasi selengkapnya tentang menggunakan enkripsi sisi server dengan AWS KMS untuk Amazon SQS dan Amazon SNS, lihat berikut ini: