本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 in 加密事件总线日志 Amazon KMS EventBridge
发送日志时, EventBridge 使用为事件总线指定的 KMS 密钥对每条日志记录的detail
和error
部分进行加密。如果您为事件总线指定了客户托管密钥,则在传输过程中 EventBridge 使用该密钥进行加密。记录一经传送,就会被解密,然后使用为日志目标指定的 KMS 密钥重新加密。
事件总线日志加密上下文
加密上下文 是一组包含任意非机密数据的键值对。在请求中包含加密上下文以加密数据时, Amazon KMS 以加密方式将加密上下文绑定到加密的数据。要解密数据,您必须传入相同的加密上下文。
您还可以将加密上下文用作在策略和授权中进行授权的条件。
如果您使用客户托管密钥来保护您的 EventBridge 资源,则可以使用加密上下文来识别审计记录和日志 KMS key 中的使用情况。它也以明文形式显示在日志中,例如 Amazon CloudTrail 和 Amazon CloudWatch Logs。
对于事件总线日志,在所有加密操作中 EventBridge 使用相同的 Amazon KMS 加密上下文。
"encryptionContext": { "kms:EncryptionContext:SourceArn": "arn:
partition
:logs:region
:account
:*" }
Amazon KMS 事件总线日志记录的密钥策略权限
对于使用客户托管密钥的事件总线,您必须在密钥策略中添加以下权限。
-
EventBridge 允许使用客户管理的密钥对日志进行加密。
{ "Sid": "Enable log service encryption", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": [ "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:SourceArn": "arn:
partition
:logs:region
:account
:*" } } } -
允许日志服务解密发送的日志。 EventBridge
{ "Sid": "Enable log delivery decryption", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:SourceArn": "arn:
partition
:logs:region
:account
:*" } } }