

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

# Mengenkripsi otorisasi EventBridge koneksi dengan kunci AWS KMS
<a name="encryption-connections"></a>

Saat Anda membuat atau memperbarui koneksi, Anda dapat menentukan parameter otorisasi untuk koneksi tersebut. EventBridge kemudian dengan aman menyimpan parameter tersebut secara rahasia di AWS Secrets Manager. Secara default, EventBridge menggunakan Kunci milik AWS untuk mengenkripsi dan mendekripsi rahasia ini. Anda dapat menentukan bahwa EventBridge menggunakan kunci yang dikelola pelanggan sebagai gantinya.

## AWS KMS kebijakan kunci untuk koneksi
<a name="encryption-connections-key-policy"></a>

Kebijakan AWS KMS utama harus memberikan izin EventBridge berikut atas nama Anda:
+ `kms:DescribeKey`
+ `kms:GenerateDataKey`
+ `kms:Decrypt`

Contoh kebijakan berikut memberikan semua AWS KMS izin.

------
#### [ JSON ]

****  

```
{
  "Id": "key-policy-example",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Enable IAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::{{012345678901}}:root"
      },
      "Action": "kms:*",
      "Resource": "*"
    }
  ]
}
```

------

 EventBridge Untuk menggunakan kunci yang dikelola pelanggan, Anda harus menambahkan tag sumber daya ke kunci dengan kunci `EventBridgeApiDestinations` dan nilai`true`. Untuk informasi selengkapnya tentang tag sumber daya, lihat [Menambahkan tag ke kunci KMS](https://docs.aws.amazon.com/kms/latest/developerguide/add-tags.html) di *Panduan AWS Key Management Service Pengembang*. 

Sebagai praktik keamanan terbaik, kami sarankan Anda menyertakan kunci kondisi dalam kebijakan kunci untuk membantu memastikan bahwa EventBridge menggunakan kunci KMS hanya untuk sumber daya atau akun yang ditentukan. Untuk informasi selengkapnya, lihat [Pertimbangan keamanan](eb-encryption-key-policy.md#eb-encryption-event-bus-confused-deputy).

```
"Condition": {
  "StringLike": {
    "kms:ViaService": "secretsmanager.*.amazonaws.com",
    "kms:EncryptionContext:SecretARN": [
      "arn:aws:secretsmanager:*:*:secret:events!connection/*"
    ]
  },
  "StringEquals": {
    "kms:ResourceTag/EventBridgeApiDestinations": "true"
  }
}
```

## Konteks enkripsi koneksi
<a name="encryption-connections-context"></a>

[Konteks enkripsi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) adalah seperangkat pasangan kunci-nilai yang berisi data non-rahasia yang arbitrer. Ketika Anda menyertakan konteks enkripsi dalam permintaan untuk mengenkripsi data, AWS KMS secara kriptografi mengikat konteks enkripsi untuk data terenkripsi tersebut. Untuk mendekripsi data, Anda harus meneruskan konteks enkripsi yang sama.

Anda juga dapat menggunakan konteks enkripsi sebagai syarat untuk otorisasi dalam kebijakan dan hibah.

Jika Anda menggunakan kunci yang dikelola pelanggan untuk melindungi EventBridge sumber daya Anda, Anda dapat menggunakan konteks enkripsi untuk mengidentifikasi penggunaan catatan dan log audit KMS key dalam. Itu juga muncul dalam plaintext di log, seperti [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)dan. [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)

Untuk koneksi, EventBridge gunakan konteks enkripsi yang sama di semua operasi AWS KMS kriptografi. Konteksnya mencakup pasangan kunci-nilai tunggal, yang berisi ARN rahasia. 

```
"encryptionContext": {
    "kms:EncryptionContext:SecretARN": "{{secret-arn}}"
}
```

## Menggunakan kunci terkelola pelanggan lintas akun atau lintas wilayah untuk koneksi
<a name="encryption-connections-cross"></a>

Anda dapat mengizinkan pengguna atau peran di AWS akun lain untuk menggunakan kunci KMS di akun Anda. Akses lintas akun memerlukan izin dalam kebijakan kunci kunci KMS dan dalam kebijakan IAM di akun pengguna eksternal. 

Untuk menggunakan kunci yang dikelola pelanggan dari akun lain, akun dengan kunci yang dikelola pelanggan harus menyertakan kebijakan berikut:

```
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::{{account}}:role/AmazonEventBridgeApiDestinationsInternalServiceRolePolicy"
  },
  "Action": [
    "kms:Decrypt",
    "kms:DescribeKey"
  ],
  "Resource": "*"
}
```

Untuk informasi selengkapnya, lihat [Mengizinkan pengguna di akun lain menggunakan kunci KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html) di *Panduan AWS Key Management Service Pengembang*.

## Mencabut akses kunci terkelola pelanggan ke koneksi
<a name="encryption-connections-revoke"></a>

Ketahuilah bahwa ketika Anda mencabut kunci yang dikelola pelanggan - melalui menonaktifkan, menghapus, atau memutar kunci, atau memperbarui kebijakan kunci - EventBridge mungkin telah menyimpan nilai kunci dalam cache, sehingga kunci tersebut masih dapat mempertahankan akses ke rahasia koneksi untuk jangka waktu singkat.

Untuk segera mencabut akses kunci terkelola pelanggan ke rahasia koneksi, hapus otorisasi atau hapus koneksi. Untuk informasi selengkapnya, lihat [Koneksi de-otorisasi](eb-target-connection-deauthorize.md) dan [Menghapus koneksi](eb-target-connection-delete.md).

## De-otorisasi koneksi karena kesalahan kunci yang dikelola pelanggan
<a name="encryption-connections-deauth"></a>

EventBridge membatalkan otorisasi koneksi jika menemukan kesalahan berikut saat mencoba mengenkripsi atau mendekripsi rahasia koneksi:
+ Kunci yang dikelola pelanggan telah dihapus.
+ Kunci yang dikelola pelanggan telah dinonaktifkan.
+ Koneksi tidak memiliki izin yang diperlukan untuk mengakses kunci yang dikelola pelanggan.

Untuk informasi selengkapnya, lihat [Koneksi de-otorisasi](eb-target-connection-deauthorize.md).