IBM Cloud Docs
使用 Unified Key Orchestrator 审计 Hyper Protect Crypto Services 的事件

使用 Unified Key Orchestrator 审计 Hyper Protect Crypto Services 的事件

作为安全主管,审计员或管理者,您可以使用 IBM Cloud® Activity Tracker 服务来监视用户和应用程序如何与 IBM Cloud 与 Unified Key Orchestrator进行交互。

IBM Cloud Activity Tracker 会记录哪些用户发起的活动更改了 IBM Cloud 中服务的状态。 您可以使用此服务来调查异常活动和关键操作,并满足监管审计需求。 此外,还可以在发生操作时收到相关警报。 收集的事件符合 Cloud Auditing Data Federation (CADF) 标准。

要对 Hyper Protect Crypto Services 实例启用 IBM Cloud Activity Tracker,您需要在 Hyper Protect Crypto Services 实例所在的区域中供应 IBM Cloud Activity Tracker 服务的实例。 有关更多信息,请参阅 IBM Cloud Activity Tracker 的入门教程

要查看与以下操作相关的请求,请查看 Unified Key Orchestrator API 参考文档TKE CLI 参考

支持的事件

关键事件

下表列出了生成事件的关键操作。

表 1. 受管密钥操作
操作 描述
hs-crypto.managed-keys.write 创建或更新受管密钥。
hs-crypto.managed-keys.list 获取受管密钥的列表。
hs-crypto.managed-keys.read 检索有关受管密钥的信息。
hs-crypto.managed-keys.delete 删除受管密钥。

密钥库事件

下表列出了生成事件的关键操作。

表 2. 密钥库操作
操作 描述
hs-crypto.target-keystores.write 创建或更新密钥库。
hs-crypto.target-keystores.list 获取密钥库的列表。
hs-crypto.target-keystores.read 检索有关密钥库的信息。
hs-crypto.target-keystores.delete 删除密钥库。

保险库文件事件

下表列出了生成事件的关键操作。

表 3. 保险库文件操作
操作 描述
hs-crypto.vaults.list 获取保险库文件的列表。
hs-crypto.vaults.write 创建或更新保险库文件。
hs-crypto.vaults.read 检索有关保险库文件的信息。
hs-crypto.vaults.delete 删除保险库文件。

模板事件

下表列出了生成事件的关键操作。

表 4. 模板操作
操作 描述
hs-crypto.key-templates.write 创建或更新模板。
hs-crypto.key-templates.read 检索模板信息。
hs-crypto.key-templates.delete 删除模板。
hs-crypto.key-templates.list 列出所有密钥模板。

注册事件

下表列出了生成事件的注册操作。

表 5. 注册操作
操作 描述
hs-crypto.registrations.list 列出任何密钥的注册。
hs-crypto.registrations.default 注册请求事件无效。

可信密钥输入事件

下表列出了生成事件的可信密钥条目 (TKE) 操作。

表 6. 可信密钥输入操作
操作 描述
hs-crypto.tke-cryptounit-admin.add 将加密单元管理员添加到所选加密单元。
hs-crypto.tke-cryptounit-admin.remove 从所选加密单元中除去加密单元管理员。
hs-crypto.tke-cryptounit-threshold.set 设置所选加密单元的签名阈值。
hs-crypto.tke-cryptounit-master-key-register.add 装入新的主密钥寄存器。
hs-crypto.tke-cryptounit-master-key-register.commit 落实新的主密钥寄存器。
hs-crypto.tke-cryptounit-master-key-register.activate 激活当前主密钥寄存器。
hs-crypto.tke-cryptounit-new-master-key-register.clear 清除新的主密钥寄存器。
hs-crypto.tke-cryptounit-current-master-key-register.clear 清除当前主密钥寄存器。
hs-crypto.tke-cryptounit.reset 对所选加密单元进行清零和重置

Certificate manager 事件

下表列出了生成事件的证书管理器操作。

表 7. Certificate manager 操作
操作 描述
hs-crypto.mtlscert-admin-key.create 为证书管理员创建管理员签名密钥以连接到证书管理器服务器。
hs-crypto.mtlscert-admin-key.update 刷新并更新证书管理员的管理员签名密钥。
hs-crypto.mtlscert-admin-key.read 获取证书管理员的管理员签名密钥。
hs-crypto.mtlscert-admin-key.delete 删除证书管理员的管理员签名密钥。
hs-crypto.mtlscert-cert.set 由证书管理员创建或更新证书。
hs-crypto.mtlscert-cert.list 列出由证书管理员管理的所有证书。
hs-crypto.mtlscert-cert.read 由证书管理员获取证书。
hs-crypto.mtlscert-cert.delete 由证书管理员删除证书。

KMIP for VMware 事件

管理 KMIP for VMware® 服务的密钥时,将生成事件。

下表提供了为 KMIP for VMware生成和发送事件的操作。 这些操作由 VMware vCenter Server ® 中的发起方执行,并且不包含发起方的 IP 地址。 这些操作的请求从 IBM Cloud 专用网络中运行。

发起方标识派生自用于认证与 KMIP 服务器的连接的 vCenter Server 的 TLS (传输层安全性) 证书。 发起方标识的格式为 CertificateID-<value>,其中的值与相应 TLS 证书的指纹匹配。 通过使用指纹,您可以识别触发该操作的 vCenter Server。

表 8. 为 KMIP for VMware 服务生成事件的操作的描述
操作 描述
hs-crypto.kmip-key.create 将创建 KMIP 密钥。
hs-crypto.kmip-key.read 将检索 KMIP 密钥。
hs-crypto.kmip-key-attributes.retrieve 将检索 KMIP 密钥的属性。
hs-crypto.kmip-key.activate 将激活 KMIP 密钥。
hs-crypto.kmip-key.revoke 将撤销 KMIP 密钥。
hs-crypto.kmip-key.destroy 将销毁 KMIP 密钥。

EP11 密钥库事件

下表列出了生成事件的 Enterprise PKCS #11 (EP11) 密钥库操作:

表 9。 EP11 密钥库操作
操作 描述
hs-crypto.keystore.createkeystore 创建 EP11 密钥库。
hs-crypto.keystore.deletekey 删除 EP11 密钥。
hs-crypto.keystore.deletekeystore 删除 EP11 密钥库。
hs-crypto.keystore.listkeysbyattributes 查看 EP11 键。
hs-crypto.keystore.listkeysbyids 查看 EP11 键。
hs-crypto.keystore.listkeystoresbyattributes 查看 EP11 密钥库。
hs-crypto.keystore.listkeystoresbyids 查看 EP11 密钥库。
hs-crypto.keystore.storenewkey 存储 EP11 密钥。
hs-crypto.keystore.updatekey 更新 EP11 密钥。

EP11 加密事件

下表列出了生成事件的 EP11 加密操作:

表 10. EP11 加密操作
操作 描述
hs-crypto.ep11.use 加密操作

查看事件

由 Hyper Protect Crypto Services 实例生成的事件将自动转发到 位于同一位置的 IBM Cloud Activity Tracker 服务实例。

每个位置只能有一个 IBM Cloud Activity Tracker 实例。 要查看事件,必须访问 IBM Cloud Activity Tracker 服务位于服务实例可用的相同位置。 有关更多信息,请参阅通过 IBM Cloud UI 启动 Web UI

表 11. Activity Tracker 区域
部署区域 Activity Tracker 区域
au-syd au-syd
br-sao br-sao
ca-tor ca-tor
eu-de eu-de
eu-es eu-es
eu-gb eu-gb
jp-tok jp-tok
us-east us-east
us-south us-south

分析成功事件

大多数成功请求都具有与每个相关事件关联的唯一 requestDataresponseData。 在 requestDataresponseData 属性中,除了敏感数据外,还有来自请求和响应的可用完整有效内容。 在 API 文档中提供了字段,端点和有效内容的列表。

除非请求成功,否则不保证显示字段。

使用 [redacted] 占位符隐藏的敏感字段值的列表:

  • service_principal_password
  • SECRET_ACCESS_KEY
  • ACCESS_KEY_ID
  • api_key

公共字段

一些公共字段可供 Hyper Protect Crypto Services 在 CADF 事件模型外部使用,以提供对数据的更多洞察。

表 12. Hyper Protect Crypto Services 服务操作的 Activity Tracker 事件中的公共字段
字段 描述
requestData.requestURI 发出的 API 请求的 URI。
requestData.instanceID Hyper Protect Crypto Services 服务实例的唯一标识。

有关云审计数据联合 (CADF) 事件模型中的事件字段的更多信息,请参阅 事件字段

虽然 initiator.host.address 是属于 Cloud Auditing Data Federation 模型的字段,但对于通过专用网络发出的请求,不会显示主机地址字段。

注册事件

列表注册

以下字段包含额外信息:

  • responseData.totalResources 字段包含在响应中返回的注册总数。

可信密钥输入事件

下表列出了指示 TKE 事件成功的返回值。

表 13. 成功 TKE 事件的返回值
字段名称 返回值
outcome success
reason.reasonCode 200
reason.reasonType OK

TKE 事件的以下公共字段包含额外信息:

  • requestData.location 字段包含加密单元的特定位置。 该位置遵循以下格式:

    \ [region]. \ [availability zone ]. \ [hardware security module (HSM) module index ]. \ [HSM domain index]

    例如,如果在 us-east 区域中供应实例,那么返回的值类似于 [us-east].[AZ2-CSSTAG2].[03].[22]

  • target.id 字段包含加密单元的 云资源名称(CRN)

  • target.name 字段还包含加密单元的位置。

  • target.typeURI 字段包含操作所针对的对象的 URI。 例如,如果执行 hs-crypto.tke-cryptounit-master-key-register.add 操作,那么返回的值为 hs-crypto/tke-cryptounit/master-key-register

对于以下 TKE 事件,某些特定字段指示更多信息。

添加加密单元管理员

  • requestData.adminId 字段包含与要添加的管理员关联的签名密钥文件的 SHA-256 散列。
  • responseData.adminIds 字段列出与添加到加密单元的所有管理员相关联的签名密钥文件的 SHA-256 散列。

除去加密单元管理员

  • requestData.adminId 字段包含与要除去的管理员关联的签名密钥文件的 SHA-256 散列。
  • responseData.adminIds 字段列出与添加到加密单元的所有管理员相关联的签名密钥文件的 SHA-256 散列。

设置签名阈值

  • requestData.signatureThreshold 字段包含您在加密单元上设置的 主签名阈值
  • requestData.revocationSignatureThreshold 字段包含您在加密单元上设置的 撤销签名阈值
  • responseData.signatureThreshold 字段包含在加密单元上成功设置的 主签名阈值
  • responseData.revocationSignatureThreshold 字段包含在加密单元上成功设置的 撤销签名阈值

装入新的

主密钥 寄存器

  • requestData.masterKeyIds 字段列出了您选择装入到加密单元的所有主密钥部件文件的 SHA-256 散列。
  • responseData.verificationPattern 字段包含由所选主密钥部件组成并装入到新主密钥寄存器的主密钥的 SHA-256 散列。

落实新的

主密钥寄存器

  • requestData.verificationPattern 字段包含装入到新主密钥寄存器的主密钥的 SHA-256 散列。
  • responseData.masterKeyIds 字段列出组成主密钥的所有主密钥部件文件的 SHA-256 散列。

激活当前主密钥寄存器

  • requestData.verificationPattern 字段包含装入并落实到新主密钥寄存器的主密钥的 SHA-256 散列。
  • responseData.verificationPattern 字段包含已激活的主密钥的 SHA-256 散列。

Certificate manager 事件

下表列出了指示证书管理器事件成功的返回值。

表 14. 成功 mTLS 证书管理器事件的返回值
字段名称 返回值
outcome success
reason.reasonCode 200
reason.reasonType OK

证书管理器事件的以下公共字段包含额外信息:

  • target.id 字段包含事件的 云资源名称(CRN)
  • target.name 字段指示事件的目标名称,例如 "mtlscert-admin-key" 或 "mtlscert-cert"。
  • target.typeURI 字段包含操作所针对的对象的 URI。 例如,如果执行 hs-crypto.mtlscert-admin-key.create 操作,那么返回的值为 hs-crypto/mtlscert-admin-key

以下证书管理器事件的指定字段可指示更多信息。

为证书管理员创建管理员签名密钥

以下字段包含额外信息:

  • requestData.accountId 字段包含当前用户标识。
  • responseData.action 字段包含当前用户的操作详细信息。

更新证书管理员的管理员签名密钥

以下字段包含额外信息:

  • requestData.accountId 字段包含当前用户标识。
  • responseData.action 字段包含当前用户的操作详细信息。

除去证书管理员的管理员签名密钥

以下字段包含额外信息:

  • requestData.accountId 字段包含当前用户标识。
  • responseData.action 字段包含当前用户的操作详细信息。

为证书管理员创建管理员签名密钥

以下字段包含额外信息:

  • requestData.accountId 字段包含当前用户标识。
  • responseData.action 字段包含当前用户的操作详细信息。

由证书管理员创建或更新证书

以下字段包含额外信息:

  • requestData.certificateId 字段指示目标证书。
  • responseData.action 字段指示要创建或更新证书。

由证书管理员列出证书

以下字段包含额外信息:

  • responseData.action 字段指示将列示由当前管理员管理的所有证书。

由证书管理员获取证书

以下字段包含额外信息:

  • requestData.certificateId 字段指示目标证书。
  • responseData.action 字段指示要访存并显示证书。

由证书管理员除去证书

以下字段包含额外信息:

  • requestData.certificateId 字段指示目标 mTLS 证书。
  • responseData.action 字段指示要删除证书。

EP11 密钥库事件

下表列出了指示 EP11 密钥库事件成功的返回值:

表 15. 成功 EP11 密钥库事件的返回值
字段名称 返回值
outcome 成功
reason.reasonCode 200
reason.reasonType OK

EP11 密钥库事件的以下公共字段包含额外信息:

  • target.name 字段包含密钥库或密钥的标识。

EP11 加密事件

下表列出了指示 EP11 加密事件成功的返回值:

表 16. 成功 EP11 加密事件的返回值
字段名称 返回值
outcome 成功
reason.reasonCode 200
reason.reasonType OK

分析失败事件

所有失败事件都包含 message 字段,其中包含问题的详细描述。

对具有注册的密钥执行的生命周期操作未完成

responseData.reasonForFailureresponseData.resourceCRN 字段包含有关无法完成操作的原因的信息。

如果事件的 reason.reasonCode 值为 409,那么无法完成该操作,因为采用服务的密钥状态与 Hyper Protect Crypto Services 具有的密钥状态冲突。

如果事件的 reason.reasonCode 值为 408,那么无法完成操作,因为 Hyper Protect Crypto Services 未收到在操作请求 4 小时内执行所有相应操作的通知。

无法执行可信密钥输入操作

失败的 TKE 事件的 outcomefailurereason.reasonTypereason.reasonForFailure 字段包含有关无法完成操作的原因的信息。

如果事件的 reason.reasonCode 值为 400,那么无法完成该操作,因为对加密单元的操作不受支持或无效。 通过引用 TKE CLI 参考,检查您使用的 TKE 命令是否有效。

如果事件的 reason.reasonCode 值为 401403,那么无法完成该操作,因为您的访问令牌无效或者没有访问此实例所需的许可权。 刷新访问令牌,并检查您是否具有 相应的许可权 来执行相应的操作。

如果事件的 reason.reasonCode 值为 500,请查看 reason.reasonForFailure 的值以确定失败原因以及需要执行的相应操作。

事件严重性

所有 Activity Tracker 事件的严重性 Hyper Protect Crypto Services 基于发出的请求类型,然后是状态码。 例如,您可能请求创建具有无效密钥的密钥,但未在服务实例中进行认证。 取消认证优先,并且会将事件评估为 401 错误请求调用,其严重性为 critical.

由于操作的敏感度,所有 TKE 事件的严重性级别为 critical

下表列出了与每个严重性级别关联的操作。

表 17. Hyper Protect Crypto Services 服务操作的严重性级别
严重性 操作
关键 hs-crypto.target-keystores.delete

hs-crypto.managed-keys.delete

hs-crypto.vaults.delete

hs-crypto.registrations.delete

hs-crypto.tke-cryptounit-admin.add

hs-crypto.tke-cryptounit-admin.remove

hs-crypto.tke-cryptounit-current-master-key-register.clear

hs-crypto.tke-cryptounit-new-master-key-register.clear

hs-crypto.tke-cryptounit-master-key-register.add

hs-crypto.tke-cryptounit-master-key-register.commit

hs-crypto.tke-cryptounit-master-key-register.activate

hs-crypto.tke-cryptounit-threshold.set

hs-crypto.tke-cryptounit.reset

hs-crypto.mtlscert-admin-key.create

hs-crypto.mtlscert-admin-key.update

hs-crypto.mtlscert-admin-key.delete

hs-crypto.mtlscert-cert.set

hs-crypto.mtlscert-cert.set

hs-crypto.keystore.deletekey

hs-crypto.keystore.deletekeystore

hs-crypto.keystore.updatekey

警告 hs-crypto.managed-keys.write

请注意,触发此事件以将密钥状态更改为 destroyed 时,严重性级别为 Critical 而不是 Warning

正常 hs-crypto.managed-keys.list

hs-crypto.managed-keys.read

hs-crypto.target-keystores.write

hs-crypto.target-keystores.list

hs-crypto.target-keystores.read

hs-crypto.vaults.list

hs-crypto.vaults.write

hs-crypto.vaults.read

hs-crypto.keystore.createkeystore

hs-crypto.keystore.listkeysbyattributes

hs-crypto.keystore.listkeysbyids

hs-crypto.keystore.listkeystoresbyattributes

hs-crypto.keystore.listkeystoresbyids

hs-crypto.keystore.storenewkey

hs-crypto.ep11.use

下表列出了与每个严重性级别关联的状态码。

表 18. Hyper Protect Crypto Services 响应状态码的严重性级别
严重性 状态码
关键 400 (仅适用于 TKE 事件),401403500503507
警告 400, 409, 424, 502, 504, 505