EventBridge の AWS KMS キーによるイベントバスの暗号化
AWS 所有のキーをデフォルトとして使用するのではなく、EventBridge が AWS KMS を使用してイベントバスに保存されているデータを暗号化するように指定できます。イベントバスの作成時または更新時にカスタマーマネージドキーを指定できます。デフォルトのイベントバスを更新して、暗号化にカスタマーマネージドキーを使用することもできます。詳細については、「KMS キーオプション」を参照してください。
イベントバスにカスタマーマネージドキーを指定した場合、EventBridge はそのキーを使用して以下を暗号化します。
イベントバスに保存されているカスタムイベントとパートナーイベント。
AWS サービスからのイベントは、AWS 所有のキーを使用して暗号化されます。
EventBridge はイベントメタデータを暗号化しません。イベントメタデータの詳細については、「イベントリファレンス」の「AWS サービスイベントメタデータ」を参照してください。
-
バスの各ルール:
ルールイベントパターン。
ターゲット入力、入力トランスフォーマー、設定パラメータなどのターゲット情報。
イベントバスのログ記録が有効になっている場合、ログレコードの
detailセクションと「error」セクション。
イベントバスにカスタマーマネージドキーを指定する場合は、イベントバスにデッドレターキュー (DLQ) を指定するオプションがあります。その場合、EventBridge は暗号化エラーまたは復号エラーが発生するカスタムイベントまたはパートナーイベントをその DLQ に配信します。詳細については、「暗号化イベントの DLQ」を参照してください。
注記
暗号化エラーまたは復号エラーが発生した場合にイベントを保持するため、イベントバスに DLQ を指定することを強くお勧めします。
イベントバスアーカイブの暗号化にカスタマーマネージドキーを使用するよう指定することもできます。詳細については、「アーカイブの暗号化」を参照してください。
注記
カスタマーマネージドキーを使用して暗号化されたイベントバスでは、スキーマの検出はサポートされません。イベントバスでスキーマ検出を有効にするには、AWS 所有のキーの使用を選択します。詳細については、「KMS キーオプション」を参照してください。
イベントバスの暗号化コンテキスト
暗号化コンテキストは、一連のキー値のペアおよび任意非シークレットデータを含みます。データを暗号化するリクエストに暗号化コンテキストを組み込むと、AWS KMS は暗号化コンテキストを暗号化されたデータに暗号化してバインドします。データを復号するには、同じ暗号化コンテキストに渡す必要があります。
また、暗号化コンテクストはポリシーとグラントの認可用の条件としても使用できます。
カスタマー管理のキーを使用して EventBridge リソースを保護している場合は、暗号化コンテキストを使って監査レコードやログの中で KMS key の使用を特定することができます。また、AWS CloudTrail や Amazon CloudWatch Logs などのログにもプレーンテキストで表示されます。
イベントバスに対し、EventBridge はすべての AWS KMS 暗号化オペレーションで同じ暗号化コンテキストを使用します。コンテキストには、イベントバス ARN を含む 1 つのキーと値のペアが含まれます。
"encryptionContext": { "kms:EncryptionContext:aws:events:event-bus:arn": "event-bus-arn" }
イベントバスの AWS KMS キーポリシー
次のキーポリシーの例では、イベントバスに必要なアクセス許可を提供します。
kms:DescribeKeykms:GenerateDataKeykms:Decrypt
セキュリティのベストプラクティスとして、EventBridge が指定されたリソースまたはアカウントに対してのみ KMS キーを使用するよう、キーポリシーに条件キーを含めることをお勧めします。詳細については、「セキュリティに関する考慮事項」を参照してください。
イベントバスアクションの AWS KMS キーのアクセス許可
カスタマーマネージドキーを使用して暗号化されたイベントバスを作成または更新するには、指定されたカスタマーマネージドキーに対する次のアクセス許可が必要です。
kms:GenerateDataKeyWithoutPlaintextkms:Decryptkms:Encryptkms:ReEncryptFromkms:ReEncryptTokms:DescribeKey
さらに、カスタマーマネージドキーを使用して暗号化されたイベントバスで特定のイベントバスアクションを実行するには、指定されたカスタマーマネージドキーに対する kms:Decrypt アクセス許可が必要です。アクションには以下が含まれます。