EventBridge に対するカスタマーマネージドキーの使用の承認
アカウントでカスタマーマネージドキーを使って EventBridge リソースを保護する場合は、その KMS キーのポリシーで、ユーザーに代わってキーを使用するための EventBridge アクセス許可を付与する必要があります。これらのアクセス許可はキーポリシーで付与します。
EventBridge は、デフォルトの AWS 所有のキーを使って AWS アカウントの EventBridge リソースを保護する際、追加の承認を必要としません。
EventBridge では、カスタマーマネージドキーを使用するために次のアクセス許可が必要です。
-
EventBridge では、指定されたキー ID の KMS キー ARN を取得し、キーが対称であることを確認するためにこのアクセス許可が必要です。
-
EventBridge では、データの暗号化キーとしてデータキーを生成するためにこのアクセス許可が必要です。
-
EventBridge では、暗号化され、暗号化されたデータとともに保存されているデータキーを復号するためにこのアクセス許可が必要です。
EventBridge はイベントパターンのマッチングにこれを使用します。ユーザーはこのデータにアクセスできません。
EventBridge の暗号化にカスタマーマネージドキーを使用する場合のセキュリティ
セキュリティのベストプラクティスとして、AWS KMS キーポリシーに aws:SourceArn、aws:sourceAccount、または kms:EncryptionContext:aws:events:event-bus:arn 条件キーを追加します。IAM グローバル条件キーは、EventBridge が指定されたバスまたはアカウントに対してのみ KMS キーを使用することを保証するのに役立ちます。
次の例は、イベントバスの IAM ポリシーでこのベストプラクティスに従う方法を示しています。
{ "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" } }