使用 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 参考。
支持的事件
关键事件
下表列出了生成事件的关键操作。
操作 | 描述 |
---|---|
hs-crypto.managed-keys.write |
创建或更新受管密钥。 |
hs-crypto.managed-keys.list |
获取受管密钥的列表。 |
hs-crypto.managed-keys.read |
检索有关受管密钥的信息。 |
hs-crypto.managed-keys.delete |
删除受管密钥。 |
密钥库事件
下表列出了生成事件的关键操作。
操作 | 描述 |
---|---|
hs-crypto.target-keystores.write |
创建或更新密钥库。 |
hs-crypto.target-keystores.list |
获取密钥库的列表。 |
hs-crypto.target-keystores.read |
检索有关密钥库的信息。 |
hs-crypto.target-keystores.delete |
删除密钥库。 |
保险库文件事件
下表列出了生成事件的关键操作。
操作 | 描述 |
---|---|
hs-crypto.vaults.list |
获取保险库文件的列表。 |
hs-crypto.vaults.write |
创建或更新保险库文件。 |
hs-crypto.vaults.read |
检索有关保险库文件的信息。 |
hs-crypto.vaults.delete |
删除保险库文件。 |
模板事件
下表列出了生成事件的关键操作。
操作 | 描述 |
---|---|
hs-crypto.key-templates.write |
创建或更新模板。 |
hs-crypto.key-templates.read |
检索模板信息。 |
hs-crypto.key-templates.delete |
删除模板。 |
hs-crypto.key-templates.list |
列出所有密钥模板。 |
注册事件
下表列出了生成事件的注册操作。
操作 | 描述 |
---|---|
hs-crypto.registrations.list |
列出任何密钥的注册。 |
hs-crypto.registrations.default |
注册请求事件无效。 |
可信密钥输入事件
下表列出了生成事件的可信密钥条目 (TKE) 操作。
操作 | 描述 |
---|---|
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 事件
下表列出了生成事件的证书管理器操作。
操作 | 描述 |
---|---|
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。
操作 | 描述 |
---|---|
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) 密钥库操作:
操作 | 描述 |
---|---|
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 加密操作:
操作 | 描述 |
---|---|
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。
部署区域 | 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 |
分析成功事件
大多数成功请求都具有与每个相关事件关联的唯一 requestData
和 responseData
。 在 requestData
和 responseData
属性中,除了敏感数据外,还有来自请求和响应的可用完整有效内容。 在 API 文档中提供了字段,端点和有效内容的列表。
除非请求成功,否则不保证显示字段。
使用 [redacted]
占位符隐藏的敏感字段值的列表:
- service_principal_password
- SECRET_ACCESS_KEY
- ACCESS_KEY_ID
- api_key
公共字段
一些公共字段可供 Hyper Protect Crypto Services 在 CADF 事件模型外部使用,以提供对数据的更多洞察。
字段 | 描述 |
---|---|
requestData.requestURI |
发出的 API 请求的 URI。 |
requestData.instanceID |
Hyper Protect Crypto Services 服务实例的唯一标识。 |
有关云审计数据联合 (CADF) 事件模型中的事件字段的更多信息,请参阅 事件字段。
虽然 initiator.host.address
是属于 Cloud Auditing Data Federation 模型的字段,但对于通过专用网络发出的请求,不会显示主机地址字段。
注册事件
列表注册
以下字段包含额外信息:
responseData.totalResources
字段包含在响应中返回的注册总数。
可信密钥输入事件
下表列出了指示 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.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 事件
下表列出了指示证书管理器事件成功的返回值。
字段名称 | 返回值 |
---|---|
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 密钥库事件成功的返回值:
字段名称 | 返回值 |
---|---|
outcome | 成功 |
reason.reasonCode | 200 |
reason.reasonType | OK |
EP11 密钥库事件的以下公共字段包含额外信息:
target.name
字段包含密钥库或密钥的标识。
EP11 加密事件
下表列出了指示 EP11 加密事件成功的返回值:
字段名称 | 返回值 |
---|---|
outcome | 成功 |
reason.reasonCode | 200 |
reason.reasonType | OK |
分析失败事件
所有失败事件都包含 message
字段,其中包含问题的详细描述。
对具有注册的密钥执行的生命周期操作未完成
responseData.reasonForFailure
和 responseData.resourceCRN
字段包含有关无法完成操作的原因的信息。
如果事件的 reason.reasonCode
值为 409
,那么无法完成该操作,因为采用服务的密钥状态与 Hyper Protect Crypto Services 具有的密钥状态冲突。
如果事件的 reason.reasonCode
值为 408
,那么无法完成操作,因为 Hyper Protect Crypto Services 未收到在操作请求 4 小时内执行所有相应操作的通知。
无法执行可信密钥输入操作
失败的 TKE 事件的 outcome
为 failure
。 reason.reasonType
和 reason.reasonForFailure
字段包含有关无法完成操作的原因的信息。
如果事件的 reason.reasonCode
值为 400
,那么无法完成该操作,因为对加密单元的操作不受支持或无效。 通过引用 TKE CLI 参考,检查您使用的 TKE 命令是否有效。
如果事件的 reason.reasonCode
值为 401
或 403
,那么无法完成该操作,因为您的访问令牌无效或者没有访问此实例所需的许可权。 刷新访问令牌,并检查您是否具有 相应的许可权 来执行相应的操作。
如果事件的 reason.reasonCode
值为 500
,请查看 reason.reasonForFailure
的值以确定失败原因以及需要执行的相应操作。
事件严重性
所有 Activity Tracker 事件的严重性 Hyper Protect Crypto Services 基于发出的请求类型,然后是状态码。 例如,您可能请求创建具有无效密钥的密钥,但未在服务实例中进行认证。 取消认证优先,并且会将事件评估为 401
错误请求调用,其严重性为
critical
.
由于操作的敏感度,所有 TKE 事件的严重性级别为 critical
。
下表列出了与每个严重性级别关联的操作。
严重性 | 操作 |
---|---|
关键 | hs-crypto.target-keystores.delete
|
警告 | hs-crypto.managed-keys.write
请注意,触发此事件以将密钥状态更改为 |
正常 | hs-crypto.managed-keys.list
|
下表列出了与每个严重性级别关联的状态码。
严重性 | 状态码 |
---|---|
关键 | 400 (仅适用于 TKE 事件),401 ,403 ,500 ,503 和 507 |
警告 | 400 , 409 , 424 , 502 , 504 , 505 |