Mengonfigurasi topik Amazon SNS untuk notifikasi - Konsol Alat Developer

Mengonfigurasi topik Amazon SNS untuk notifikasi

Cara termudah untuk mengatur notifikasi adalah untuk membuat topik Amazon SNS ketika Anda membuat aturan notifikasi. Anda dapat menggunakan topik Amazon SNS yang sudah ada jika memenuhi persyaratan berikut:

  • Itu diciptakan dalam Wilayah AWS yang sama sebagai sumber daya (membangun proyek, aplikasi deployment, repositori, atau alur) yang ingin Anda buat aturan notifikasinya.

  • Ini belum digunakan untuk mengirim notifikasi untuk CodeCommit sebelum 5 November 2019. Jika memiliki, itu akan berisi pernyataan kebijakan yang memungkinkan fungsionalitas tersebut. Anda dapat memilih untuk menggunakan topik ini, namun Anda perlu menambahkan kebijakan tambahan seperti yang ditentukan dalam prosedur. Anda tidak boleh menghapus pernyataan kebijakan yang ada jika satu atau beberapa repositori masih dikonfigurasi untuk notifikasi sebelum 5 November 2019.

  • Ini memiliki kebijakan yang memungkinkan Notifikasi AWS CodeStar untuk mempublikasikan notifikasi ke topik.

Untuk mengonfigurasi topik Amazon SNS untuk digunakan sebagai target untuk aturan notifikasi Notifikasi AWS CodeStar

  1. Masuk ke AWS Management Console dan buka konsol Amazon SNS di https://console.aws.amazon.com/sns/v3/home.

  2. Di bilah navigasi, pilih Topik, pilih topik yang ingin Anda konfigurasikan, lalu pilih Edit.

  3. Perluas Kebijakan akses, lalu pilih Lanjutan.

  4. Pada editor JSON, tambahkan pernyataan berikut ke kebijakan. Termasuk topik ARN, Wilayah AWS, ID akun AWS, dan nama topik.

    { "Sid": "AWSCodeStarNotifications_publish", "Effect": "Allow", "Principal": { "Service": [ "codestar-notifications.amazonaws.com" ] }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-2:123456789012:codestar-notifications-MyTopicForNotificationRules" }

    Pernyataan kebijakan akan terlihat seperti berikut.

    { "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "__default_statement_ID", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "SNS:GetTopicAttributes", "SNS:SetTopicAttributes", "SNS:AddPermission", "SNS:RemovePermission", "SNS:DeleteTopic", "SNS:Subscribe", "SNS:ListSubscriptionsByTopic", "SNS:Publish", "SNS:Receive" ], "Resource": "arn:aws:sns:us-east-2:123456789012:codestar-notifications-MyTopicForNotificationRules", "Condition": { "StringEquals": { "AWS:SourceOwner": "123456789012" } } }, { "Sid": "AWSCodeStarNotifications_publish", "Effect": "Allow", "Principal": { "Service": [ "codestar-notifications.amazonaws.com" ] }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-2:123456789012:codestar-notifications-MyTopicForNotificationRules" } ] }
  5. Pilih Simpan perubahan.

  6. Jika Anda ingin menggunakan topik Amazon SNS AWS KMS-dienkripsi untuk mengirim notifikasi, Anda juga harus mengaktifkan kompatibilitas antara sumber acara (Notifikasi AWS CodeStar) dan topik terenkripsi dengan menambahkan pernyataan berikut untuk kebijakan kunci utama pelanggan (CMK). Ganti Wilayah AWS (dalam contoh ini, us-east-2) dengan Wilayah AWS di mana kunci dibuat.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "codestar-notifications.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "sns.us-east-2.amazonaws.com" } } } ] }

    Untuk informasi selengkapnya, lihat Enkripsi saat diam dan Menggunakan syarat kebijakan dengan AWS KMS di AWS Key Management Service Panduan Developer.