查看理由并据此执行操作
本页介绍了如何查看和处理 Key Access Justifications 发送的用于请求访问加密密钥的理由。每当您的信息被加密或解密时,“密钥访问理由”都会向您发送说明访问原因的理由。您查看和处理理由的方式取决于您在 Key Access Justifications 中使用的密钥类型:
- 对于外部管理的密钥,Cloud EKM 合作伙伴可能会提供设置政策的功能,以便根据理由的内容自动批准或拒绝访问请求。如需详细了解如何设置政策,请参阅所选密钥管理器的相关文档。以下合作伙伴支持密钥访问理由:
- Fortanix
- Thales
- 对于使用 Key Access Justifications 政策配置的所有密钥(无论密钥类型如何),您都可以在 Cloud KMS 审核日志中查看访问请求。
拒绝访问可能会妨碍 Google 人员为您提供合同服务。例如:
- 由于
CUSTOMER_INITIATED_ACCESS
或GOOGLE_INITIATED_SYSTEM_OPERATION
的原因而拒绝访问请求会导致您的服务不可用。 - 如果您出于
CUSTOMER_INITATED_SUPPORT
原因拒绝访问权限请求,在极少数情况下,当您的支持服务工单需要访问敏感客户信息时,Google 人员将无法回复该工单。支持服务工单通常不需要此访问权限,我们的第一线支持人员也没有此访问权限。 - 如果因
GOOGLE_INITIATED_SERVICE
而拒绝访问请求,会降低服务可用性和可靠性,并会导致 Google 无法从中断中恢复。
查看 EKM 密钥的理由
您可以使用 Google Cloud 控制台查看 Key Access Justifications 在有用户访问您的数据时发送给外部密钥管理器的理由。如需访问理由,您首先需要在包含用于加密的密钥的项目中启用 Cloud Audit Logs with Cloud KMS。
完成设置后,Cloud Audit Logs 还会包含在外部请求中用于加密操作的理由。该理由包含在资源键的数据访问日志的 protoPayload
的 metadata
条目中。如需详细了解这些字段,请参阅了解审核日志。如需详细了解如何将 Cloud Audit Logs 与 Cloud KMS 搭配使用,请参阅 Cloud KMS 审核日志记录信息。
请注意,与与外部密钥管理器共享的理由不同,Cloud Audit Logs 中的理由不能用于批准或拒绝关联的加密操作。 Google Cloud 仅在操作完成后记录理由。因此, Google Cloud 中的日志主要用于记录保存。
查看 Cloud HSM 密钥和软件密钥的理由
当配置了密钥访问理由的 Cloud HSM 和软件密钥已用于执行加密或解密操作时,您可以查看 Cloud KMS 审核日志,了解以下信息:
key_access_justification
:与请求关联的理由代码。key_access_justification_policy_metadata
:密钥的 Key Access Justifications 政策元数据,其中包含以下信息:customer_configured_policy_enforced
:指示是否针对操作强制执行了对密钥设置的 Key Access Justifications 政策。customer_configured_policy
:表示允许访问按键的正当理由代码。justification_propagated_to_ekm
:表示是否已将访问请求传播到外部密钥管理器(如果已配置)。
以下示例展示了使用 Key Access Justifications 配置的 Cloud HSM 密钥的 Cloud KMS 审核日志条目:
{ @type: "type.googleapis.com/google.cloud.audit.AuditLog" (...) metadata: { entries: { key_access_justification: { @type: "type.googleapis.com/google.cloud.ekms.v0.AccessReasonContext" reason: "CUSTOMER_INITIATED_ACCESS" } key_access_justification_policy_metadata: { customer_configured_policy_enforced: "true" customer_configured_policy: { allowed_access_reasons: ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"] } justification_propagated_to_ekm: "false" } } } methodName: "useVersionToDecrypt" serviceName: "cloudkms.googleapis.com" (...) }