

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

# Mengenkripsi data EventBridge Pipa dengan kunci AWS KMS
<a name="eb-encryption-pipes-cmkey"></a>

Anda dapat menentukan bahwa EventBridge menggunakan kunci yang dikelola pelanggan untuk mengenkripsi data pipa yang disimpan saat istirahat, daripada menggunakan Kunci milik AWS as is default. Anda dapat menentukan kunci yang dikelola pelanggan saat membuat atau memperbarui pipa. Untuk informasi selengkapnya tentang tipe kunci, lihat[Opsi kunci KMS](eb-encryption-at-rest-key-options.md).

Data pipa yang EventBridge dienkripsi saat istirahat meliputi:
+ [Pola acara](eb-event-patterns.md)
+ [Transformator masukan](eb-pipes-input-transformation.md)

Peristiwa yang mengalir melalui pipa tidak pernah disimpan saat istirahat.

## EventBridge Konteks enkripsi pipa
<a name="eb-encryption-at-rest-context-pipes"></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 EventBridge Pipes, EventBridge menggunakan konteks enkripsi yang sama di semua operasi AWS KMS kriptografi. Konteksnya mencakup pasangan kunci-nilai tunggal, yang berisi pipa ARN. 

```
"encryptionContext": {
    "kms:EncryptionContext:aws:pipes:arn": "{{pipe-arn}}"
}
```

Untuk log vended, EventBridge gunakan konteks enkripsi berikut.

```
"encryptionContext": {
    "kms:EncryptionContext:SourceArn": "arn:{{partition}}:logs:{{region}}:{{account}}:*"
}
```

## AWS KMS kebijakan utama untuk EventBridge Pipa
<a name="eb-encryption-key-policy-pipe"></a>

Contoh kebijakan kunci berikut memberikan izin yang diperlukan untuk pipa:
+ `kms:DescribeKey`
+ `kms:GenerateDataKey`
+ `kms:Decrypt`

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

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

****  

```
{
  "Id": "CMKKeyPolicy",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
      "AWS": "arn:aws:iam::{{123456789012}}:role/{{pipe-execution-role}}"
      },
      "Action": [
        "kms:DescribeKey"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Principal": {
      "AWS": "arn:aws:iam::{{123456789012}}:role/{{pipe-execution-role}}e"
      },
      "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": "*",
      "Condition": {
        "ArnLike": {
        "kms:EncryptionContext:aws:pipe:arn": "arn:aws:pipes:{{us-east-1}}:{{123456789012}}:pipe/{{pipe-name}}"
        },
        "ForAnyValue:StringEquals": {
          "kms:EncryptionContextKeys": [
            "aws:pipe:arn"
          ]
        }
      }
    }
  ]
}
```

------

### Izin untuk log pipa yang menyertakan data eksekusi
<a name="eb-encryption-key-policy-pipe-logs"></a>

Jika Anda telah mengonfigurasi pencatatan pipa untuk menyertakan data eksekusi, kebijakan utama harus menyertakan izin berikut untuk layanan logging:
+ `kms:Decrypt`
+ `kms:GenerateDataKey`

Untuk informasi selengkapnya, lihat [Termasuk data eksekusi di log EventBridge Pipes](eb-pipes-logs.md#eb-pipes-logs-execution-data).

Contoh kebijakan kunci berikut memberikan izin yang diperlukan untuk logging pipa:

```
{
  "Sid": "Enable log service encryption",
  "Effect": "Allow",
  "Principal": {
    "Service": "delivery.logs.amazonaws.com"
  },
  "Action": [
    "kms:Decrypt",
    "kms:GenerateDataKey"
  ],
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "kms:EncryptionContext:SourceArn": "arn:{{partition}}:logs:{{region}}:{{account}}:*"
    }
  }
}
```

Selain itu, peran eksekusi pipa membutuhkan `kms:GenerateDataKey` permisson.

```
{
  "Sid": "Enable log service encryption",
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::{{account}}:role/pipe-execution-role"
  },
  "Action": [
    "kms:GenerateDataKey"
  ],
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "kms:EncryptionContext:SourceArn": "arn:{{partition}}:logs:{{region}}:{{account}}:*"
    }
  }
}
```

Peran eksekusi pipa juga harus mencakup:

```
"Action": [
    "kms:GenerateDataKey"
  ],
  "Resource": "{{key-arn}}",
  "Condition": {
    "StringLike": {
      "kms:EncryptionContext:SourceArn": "arn:{{partition}}:logs:{{region}}:{{account}}:*"
    }
  }
```