Otorisasi EventBridge untuk menggunakan kunci yang dikelola pelanggan - Amazon EventBridge

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Otorisasi EventBridge untuk menggunakan kunci yang dikelola pelanggan

Jika Anda menggunakan a kunci yang dikelola pelanggan di akun Anda untuk melindungi EventBridge sumber daya Anda, kebijakan yang KMS key harus memberikan EventBridge izin untuk menggunakannya atas nama Anda. Anda memberikan izin ini dalam kebijakan utama.

EventBridge tidak memerlukan otorisasi tambahan untuk menggunakan default Kunci milik AWS untuk melindungi EventBridge sumber daya di AWS akun Anda.

EventBridge memerlukan izin berikut untuk menggunakan kunci yang dikelola pelanggan:

  • kms:DescribeKey

    EventBridge memerlukan izin ini untuk mengambil KMS key ARN untuk Id Kunci yang disediakan, dan untuk memverifikasi bahwa kuncinya simetris.

  • kms:GenerateDataKey

    EventBridge memerlukan izin ini untuk menghasilkan kunci data sebagai kunci enkripsi untuk data.

  • kms:Decrypt

    EventBridge memerlukan izin ini untuk mendekripsi kunci data yang dienkripsi dan disimpan dengan data terenkripsi.

    EventBridge menggunakan ini untuk pencocokan pola acara; pengguna tidak pernah memiliki akses ke data.

Keamanan saat menggunakan kunci yang dikelola pelanggan untuk EventBridge enkripsi

Sebagai praktik terbaik keamanan, tambahkanaws:SourceArn,aws:sourceAccount, atau kunci kms:EncryptionContext:aws:events:event-bus:arn kondisi ke kebijakan AWS KMS kunci. Kunci kondisi IAM global membantu memastikan bahwa EventBridge menggunakan kunci KMS hanya untuk bus atau akun yang ditentukan.

Contoh berikut menunjukkan cara mengikuti praktik terbaik ini dalam IAM kebijakan Anda untuk bus acara:

{ "Sid": "Allow the use of key", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition" : { "StringEquals": { "aws:SourceAccount": "arn:aws:events:region:account-id", "aws:SourceArn": "arn:aws:events:region:account-id:event-bus/event-bus-name", "kms:EncryptionContext:aws:events:event-bus:arn": "arn:aws:events:region:account-id:event-bus/event-bus-arn" } }