AWS KMS キーを使用して EventBridge アーカイブを暗号化する - Amazon EventBridge

AWS KMS キーを使用して EventBridge アーカイブを暗号化する

AWS 所有のキーをデフォルトとして使用するのではなく、EventBridge がカスタマー管理キーを使用してアーカイブに保存されたイベントを暗号化するように指定できます。アーカイブの作成時または更新時にカスタマー管理キーを指定できます。キーの種類の詳細については、「KMS キーオプション」を参照してください。

これには、以下が含まれます。

  • アーカイブに保存されているイベント

  • アーカイブに送信されたイベントをフィルタリングするように指定されているイベントパターン (存在する場合)

これには、アーカイブのサイズや含まれるイベントの数などのアーカイブメタデータは含まれません。

アーカイブにカスタマーマネージドキーを指定すると、EventBridge はアーカイブに送信する前にイベントを暗号化し、転送中および保管中の暗号化を確保します。

アーカイブ暗号化コンテキスト

暗号化コンテキストは、一連のキー値のペアおよび任意非シークレットデータを含みます。データを暗号化するリクエストに暗号化コンテキストを組み込むと、AWS KMS は暗号化コンテキストを暗号化されたデータに暗号化してバインドします。データを復号するには、同じ暗号化コンテキストに渡す必要があります。

また、暗号化コンテクストはポリシーとグラントの認可用の条件としても使用できます。

カスタマー管理のキーを使用して EventBridge リソースを保護している場合は、暗号化コンテキストを使って監査レコードやログの中で KMS key の使用を特定することができます。また、AWS CloudTrailAmazon CloudWatch Logs などのログにもプレーンテキストで表示されます。

イベントアーカイブに対し、EventBridge はすべての AWS KMS 暗号化オペレーションで同じ暗号化コンテキストを使用します。コンテキストには、アーカイブ ARN を含む 1 つのキーと値のペアが含まれます。

"encryptionContext": { "kms:EncryptionContext:aws:events:event-bus:arn": "event-bus-arn" }

アーカイブの AWS KMS キーポリシー

次のキーポリシーの例では、イベントアーカイブに必要なアクセス許可を提供します。

  • kms:DescribeKey

  • kms:GenerateDataKey

  • kms:Decrypt

  • kms:ReEncrypt

セキュリティのベストプラクティスとして、EventBridge が指定されたリソースまたはアカウントに対してのみ KMS キーを使用するよう、キーポリシーに条件キーを含めることをお勧めします。詳細については、「セキュリティに関する考慮事項」を参照してください。

JSON
{ "Id": "CMKKeyPolicy", "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": [ "kms:DescribeKey" ], "Resource": "*" }, { "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:events:event-bus:arn": "arn:aws:events:region:account-id:event-bus/event-bus-arn" } } } ] }