

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 解释 AWS CloudHSM 审计日志
<a name="interpreting-audit-logs"></a>

HSM 审核日志中的事件具有标准字段。一些事件类型具有附加字段，这些字段将捕获有关事件的有用信息。例如，用户登录和用户管理事件包括用户的名称和类型。密钥管理命令包括密钥句柄。

有几个字段提供了特别重要的信息。`Opcode` 标识正在记录的管理命令。`Sequence No` 标识日志流中的事件并指示事件的记录顺序。

例如，以下示例事件是 HSM 的日志流中的第二个事件 (`Sequence No: 0x1`)。它显示了生成密码加密密钥的 HSM，该密钥是启动例程的一部分。

```
Time: 12/19/17 21:01:17.140812, usecs:1513717277140812
Sequence No : 0x1
Reboot counter : 0xe8
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_GEN_PSWD_ENC_KEY (0x1d)
Session Handle : 0x1004001
Response : 0:HSM Return: SUCCESS
Log type : MINIMAL_LOG_ENTRY (0)
```

以下字段是审核日志中每个 AWS CloudHSM 事件的通用字段。

**时间**  
事件的发生时间（用 UTC 时区表示）。时间显示为人类可读的时间和 Unix 时间（以微秒为单位）。

**重启计数器**  
在重新启动 HSM 硬件时递增的 32 位持续序数计数器。  
日志流中的所有事件都具有相同的重启计数器值。但是，重启计数器对于日志流可能不是唯一的，因为它在同一集群中的不同 HSM 实例之间可能是不同的。

**序列号**  
为每个日志事件递增的 64 位序数计数器。每个日志流中的第一个事件都有一个序列号 0x0。`Sequence No` 值中不应该有空白。序列号仅在日志流中是唯一的。

**命令类型**  
一个十六进制值，它表示命令的类别。 AWS CloudHSM 日志流中的命令的命令类型为 `CN_MGMT_CMD` (0x0) 或 `CN_CERT_AUTH_CMD` (0x9)。

**Opcode**  
标识已执行的管理命令。有关 AWS CloudHSM 审计日志中的`Opcode`值列表，请参阅[AWS CloudHSM 审核日志参考](cloudhsm-audit-log-reference.md)。

**会话句柄**  
标识已在其中运行命令并记录事件的会话。

**响应**  
记录对管理命令的响应。您可以在 `Response` 字段中搜索 `SUCCESS` 和 `ERROR` 值。

**日志类型**  
表示记录该命令的 AWS CloudHSM 日志的日志类型。  
+ `MINIMAL_LOG_ENTRY (0)`
+ `MGMT_KEY_DETAILS_LOG (1)`
+ `MGMT_USER_DETAILS_LOG (2)`
+ `GENERIC_LOG`

## 审核日志事件的示例
<a name="example-audit-log"></a>

日志流中的事件将记录 HSM 的历史记录（从其创建到删除）。您可以使用日志来查看您的生命周期 HSMs 并深入了解其运行情况。在解释事件时，请注意 `Opcode`（它表示管理命令或操作）和 `Sequence No`（它表示事件的顺序）。

**Topics**
+ [示例：初始化集群中的第一个 HSM](#example-audit-log-first-hsm)
+ [登录和注销事件](#example-audit-log-login-logout)
+ [示例：创建和删除用户](#example-audit-log-first-hsm)
+ [示例：创建和删除密钥对](#example-audit-log-manage-keys)
+ [示例：生成和同步密钥](#audit-log-example-gen-key)
+ [示例：导出密钥](#audit-log-example-export-key)
+ [示例：导入密钥](#audit-log-example-import-key)
+ [示例：共享和取消共享密钥](#audit-log-example-share-unshare-key)

### 示例：初始化集群中的第一个 HSM
<a name="example-audit-log-first-hsm"></a>

每个集群中第一个 HSM 的审计日志流与集群 HSMs 中其他 HSM 的审计日志流有很大不同。每个集群中的第一个 HSM 的审核日志记录了其创建和初始化。集群 HSMs 中其他内容的日志由备份生成，以登录事件开头。

**重要**  
以下初始化条目不会出现在在 CloudHSM 审计 CloudWatch 日志功能发布（2018 年 8 月 30 日）之前初始化的集群的日志中。有关更多信息，请参阅[文档历史记录](document-history.md)。

以下示例事件显示在集群中的第一个 HSM 的日志流中。日志中的第一个事件 —— 带 `Sequence No 0x0` 的事件 —— 表示用于初始化 HSM (`CN_INIT_TOKEN`) 的命令。此响应表示该命令已成功 (`Response : 0: HSM Return: SUCCESS`)。

```
Time: 12/19/17 21:01:16.962174, usecs:1513717276962174
Sequence No : 0x0
Reboot counter : 0xe8
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_INIT_TOKEN (0x1)
Session Handle : 0x1004001
Response : 0:HSM Return: SUCCESS
Log type : MINIMAL_LOG_ENTRY (0)
```

此示例日志流 (`Sequence No 0x1`) 中的第二个事件记录了用于创建 HSM 使用的密码加密密钥的命令 (`CN_GEN_PSWD_ENC_KEY`)。

这是每个集群中的第一个 HSM 的典型启动顺序。由于同一集群 HSMs 中的后续是第一个集群的克隆，因此它们使用相同的密码加密密钥。

```
Time: 12/19/17 21:01:17.140812, usecs:1513717277140812
Sequence No : 0x1
Reboot counter : 0xe8
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_GEN_PSWD_ENC_KEY (0x1d)
Session Handle : 0x1004001
Response : 0:HSM Return: SUCCESS
Log type : MINIMAL_LOG_ENTRY (0)
```

此示例日志流 (`Sequence No 0x2`) 中的第三个事件是创建[设备用户 (AU)](understanding-users-cmu.md#appliance-user-cmu)（即 AWS CloudHSM 服务）。涉及 HSM 用户的事件包括用户名和用户类型的额外字段。

```
Time: 12/19/17 21:01:17.174902, usecs:1513717277174902
Sequence No : 0x2
Reboot counter : 0xe8
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_CREATE_APPLIANCE_USER (0xfc)
Session Handle : 0x1004001
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : app_user
User Type : CN_APPLIANCE_USER (5)
```

此示例日志流 (`Sequence No 0x3`) 中的第四个事件记录了 `CN_INIT_DONE` 事件，该事件完成了 HSM 的初始化。

```
Time: 12/19/17 21:01:17.298914, usecs:1513717277298914
Sequence No : 0x3
Reboot counter : 0xe8
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_INIT_DONE (0x95)
Session Handle : 0x1004001
Response : 0:HSM Return: SUCCESS
Log type : MINIMAL_LOG_ENTRY (0)
```

您可以跟踪启动序列中的其余事件。这些事件可能包括几个登录和注销事件，以及密钥加密密钥 (KEK) 的生成。以下事件记录了用于更改[准加密员 (PRECO)](understanding-users-cmu.md#preco) 的密码的命令。此命令将激活集群。

```
Time: 12/13/17 23:04:33.846554, usecs:1513206273846554
Sequence No: 0x1d
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_CHANGE_PSWD (0x9)
Session Handle: 0x2010003
Response: 0:HSM Return: SUCCESS
Log type: MGMT_USER_DETAILS_LOG (2)
User Name: admin
User Type: CN_CRYPTO_PRE_OFFICER (6)
```

### 登录和注销事件
<a name="example-audit-log-login-logout"></a>

在解释审核日志时，请注意记录用户登录和注销 HSM 的事件。这些事件可帮助您确定哪个用户负责在登录命令和注销命令之间按顺序出现的管理命令。

例如，此日志条目记录名为 `admin` 的加密员的登录。序列号 `0x0` 表示这是此日志流中的第一个事件。

当一个用户登录 HSM 时，集群 HSMs 中的另一个用户也会记录该用户的登录事件。在初始登录事件发生后不久，你可以在集群 HSMs中其他人的日志流中找到相应的登录事件。

```
Time: 01/16/18 01:48:49.824999, usecs:1516067329824999
Sequence No : 0x0
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0x7014006
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : admin
User Type : CN_CRYPTO_OFFICER (2)
```

以下示例事件记录 `admin` 加密员注销。序列号 `0x2` 表示这是日志流中的第三个事件。

如果已登录的用户关闭会话而不注销，则日志流会包含一个 `CN_APP_FINALIZE` 或关闭会话事件 (`CN_SESSION_CLOSE`)，而不是 `CN_LOGOUT` 事件。与登录事件不同，此注销事件通常只由执行命令的 HSM 记录。

```
Time: 01/16/18 01:49:55.993404, usecs:1516067395993404
Sequence No : 0x2
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGOUT (0xe)
Session Handle : 0x7014000
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : admin
User Type : CN_CRYPTO_OFFICER (2)
```

如果登录尝试因用户名称无效而导致失败，HSM 会记录一个 `CN_LOGIN` 事件（具有登录命令中提供的用户名和类型）。响应显示错误消息 157，这说明用户名不存在。

```
Time: 01/24/18 17:41:39.037255, usecs:1516815699037255
Sequence No : 0x4
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0xc008002
Response : 157:HSM Error: user isn't initialized or user with this name doesn't exist
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : ExampleUser
User Type : CN_CRYPTO_USER (1)
```

如果登录尝试因密码无效而导致失败，HSM 会记录一个 `CN_LOGIN` 事件（具有登录命令中提供的用户名和类型）。响应显示了错误消息，并返回 `RET_USER_LOGIN_FAILURE` 错误代码。

```
Time: 01/24/18 17:44:25.013218, usecs:1516815865013218
Sequence No : 0x5
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0xc008002
Response : 163:HSM Error: RET_USER_LOGIN_FAILURE
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : testuser
User Type : CN_CRYPTO_USER (1)
```

### 示例：创建和删除用户
<a name="example-audit-log-first-hsm"></a>

此示例显示了在加密员 (CO) 创建和删除用户时记录的日志事件。

第一个事件记录登录到 HSM 的 CO `admin`。序列号 `0x0` 表示这是日志流中的第一个事件。已登录的用户的名称和类型包含在事件中。

```
Time: 01/16/18 01:48:49.824999, usecs:1516067329824999
Sequence No : 0x0
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0x7014006
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : admin
User Type : CN_CRYPTO_OFFICER (2)
```

日志流中的下一个事件（序列 `0x1`）记录创建新的加密用户 (CU) 的 CO。新用户的名称和类型包含在事件中。

```
Time: 01/16/18 01:49:39.437708, usecs:1516067379437708
Sequence No : 0x1
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_CREATE_USER (0x3)
Session Handle : 0x7014006
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : bob
User Type : CN_CRYPTO_USER (1)
```

然后，CO 会创建另一个加密员 `alice`。序列号表明此操作紧跟上一个操作，而没有干预操作。

```
Time: 01/16/18 01:49:55.993404, usecs:1516067395993404
Sequence No : 0x2
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_CREATE_CO (0x4)
Session Handle : 0x7014007
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : alice
User Type : CN_CRYPTO_OFFICER (2)
```

稍后，名为 `admin` 的 CO 将登录并删除名为 `alice` 的加密员。HSM 会记录一个 `CN_DELETE_USER` 事件。已删除用户的名称和类型包含在事件中。

```
Time: 01/23/18 19:58:23.451420, usecs:1516737503451420
Sequence No : 0xb
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_DELETE_USER (0xa1)
Session Handle : 0x7014007
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : alice
User Type : CN_CRYPTO_OFFICER (2)
```

### 示例：创建和删除密钥对
<a name="example-audit-log-manage-keys"></a>

此示例显示了在您创建和删除密钥对时，HSM 审核日志中记录的事件。

以下事件记录名为 `crypto_user` 的加密用户 (CU) 登录到 HSM。

```
Time: 12/13/17 23:09:04.648952, usecs:1513206544648952
Sequence No: 0x28
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_LOGIN (0xd)
Session Handle: 0x2014005
Response: 0:HSM Return: SUCCESS
Log type: MGMT_USER_DETAILS_LOG (2)
User Name: crypto_user
User Type: CN_CRYPTO_USER (1)
```

接下来，CU 会生成一个密钥对 (`CN_GENERATE_KEY_PAIR`)。私有密钥具有密钥句柄 `131079`。公有密钥具有密钥句柄 `131078`。

```
Time: 12/13/17 23:09:04.761594, usecs:1513206544761594
Sequence No: 0x29
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_GENERATE_KEY_PAIR (0x19)
Session Handle: 0x2014004
Response: 0:HSM Return: SUCCESS
Log type: MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle: 131079
Public Key Handle: 131078
```

该 CU 会立即删除密钥对。CN\$1DESTROY\$1OBJECT 事件记录公有密钥的删除 (131078)。

```
Time: 12/13/17 23:09:04.813977, usecs:1513206544813977
Sequence No: 0x2a
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_DESTROY_OBJECT (0x11)
Session Handle: 0x2014004
Response: 0:HSM Return: SUCCESS
Log type: MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle: 131078
Public Key Handle: 0
```

然后，另一个 `CN_DESTROY_OBJECT` 事件记录私有密钥的删除 (`131079`)。

```
Time: 12/13/17 23:09:04.815530, usecs:1513206544815530
Sequence No: 0x2b
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_DESTROY_OBJECT (0x11)
Session Handle: 0x2014004
Response: 0:HSM Return: SUCCESS
Log type: MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle: 131079
Public Key Handle: 0
```

最后，CU 将注销。

```
Time: 12/13/17 23:09:04.817222, usecs:1513206544817222
Sequence No: 0x2c
Reboot counter: 0xe8
Command Type(hex): CN_MGMT_CMD (0x0)
Opcode: CN_LOGOUT (0xe)
Session Handle: 0x2014004
Response: 0:HSM Return: SUCCESS
Log type: MGMT_USER_DETAILS_LOG (2)
User Name: crypto_user
User Type: CN_CRYPTO_USER (1)
```

### 示例：生成和同步密钥
<a name="audit-log-example-gen-key"></a>

此示例显示了在具有多个密钥的集群中创建密钥的效果 HSMs。密钥在一个 HSM 上生成，作为被屏蔽的对象从 HSM 中提取，然后作为被屏蔽的对象插入到另一 HSMs 个 HSM 中。

**注意**  
客户端工具可能无法同步密钥。或者，该命令可能包含**min\$1srv**参数，该参数仅将密钥同步到指定数量 HSMs的。无论哪种情况， AWS CloudHSM 服务都会将密钥同步到集群 HSMs中的另一个密钥。由于其日志中仅 HSMs 记录客户端管理命令，因此服务器端同步不会记录在 HSM 日志中。

首先，考虑接收并执行命令的 HSM 的日志流。日志流以 HSM ID `hsm-abcde123456` 命名，但 HSM ID 不会出现在日志事件中。

首先，`testuser` 加密用户 (CU) 登录到 `hsm-abcde123456` HSM。

```
Time: 01/24/18 00:39:23.172777, usecs:1516754363172777
Sequence No : 0x0
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0xc008002
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : testuser
User Type : CN_CRYPTO_USER (1)
```

CU 运行[exSymKey](key_mgmt_util-genSymKey.md)命令来生成对称密钥。`hsm-abcde123456` HSM 生成一个具有密钥句柄 `262152` 的对称密钥。HSM 在其日志中记录一个 `CN_GENERATE_KEY` 事件。

```
Time: 01/24/18 00:39:30.328334, usecs:1516754370328334
Sequence No : 0x1
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_GENERATE_KEY (0x17)
Session Handle : 0xc008004
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 262152
Public Key Handle : 0
```

`hsm-abcde123456` 的日志流中的下一个事件记录密钥同步过程中的第一步。新密钥（密钥句柄 `262152`）是从 HSM 中作为遮蔽对象提取的。

```
Time: 01/24/18 00:39:30.330956, usecs:1516754370330956
Sequence No : 0x2
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_EXTRACT_MASKED_OBJECT_USER (0xf0)
Session Handle : 0xc008004
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 262152
Public Key Handle : 0
```

现在考虑 HSM `hsm-zyxwv987654`（同一集群中的另一个 HSM）的日志流。此日志流还包括 `testuser` CU 的登录事件。时间值显示在用户登录到 `hsm-abcde123456` HSM 后不久发生。

```
Time: 01/24/18 00:39:23.199740, usecs:1516754363199740
Sequence No : 0xd
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0x7004004
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : testuser
User Type : CN_CRYPTO_USER (1)
```

此 HSM 的日志流没有 `CN_GENERATE_KEY` 事件。但它有一个记录将密钥同步到此 HSM 的事件。`CN_INSERT_MASKED_OBJECT_USER` 事件记录将密钥 `262152` 接收为遮蔽对象。现在，集群 HSMs 中两者都`262152`存在密钥。

```
Time: 01/24/18 00:39:30.408950, usecs:1516754370408950
Sequence No : 0xe
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_INSERT_MASKED_OBJECT_USER (0xf1)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 262152
Public Key Handle : 0
```

当 CU 用户注销时，此 `CN_LOGOUT` 事件仅在接收了命令的 HSM 的日志流中出现。

### 示例：导出密钥
<a name="audit-log-example-export-key"></a>

此示例显示了加密用户 (CU) 从具有多个密钥的集群中导出密钥时记录的审计日志事件 HSMs。

以下事件记录了登录 [key\$1mgmt\$1util](key_mgmt_util.md) 的 CU (`testuser`)。

```
Time: 01/24/18 19:42:22.695884, usecs:1516822942695884
Sequence No : 0x26
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_LOGIN (0xd)
Session Handle : 0x7004004
Response : 0:HSM Return: SUCCESS
Log type : MGMT_USER_DETAILS_LOG (2)
User Name : testuser
User Type : CN_CRYPTO_USER (1)
```

CU 运行导出密钥的[exSymKey](key_mgmt_util-exSymKey.md)命令`7`，即 256 位 AES 密钥。该命令使用密钥`6`（上的 256 位 AES 密钥）作为包装密钥。 HSMs

接收命令的 HSM 记录密钥 `7`（正在导出的密钥）的 `CN_WRAP_KEY` 事件。

```
Time: 01/24/18 19:51:12.860123, usecs:1516823472860123
Sequence No : 0x27
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_WRAP_KEY (0x1a)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 7
Public Key Handle : 0
```

然后，HSM 记录包装密钥（密钥 `6`）的 `CN_NIST_AES_WRAP` 事件。先包装密钥，然后立即被解开包装，而 HSM 仅记录一个事件。

```
Time: 01/24/18 19:51:12.905257, usecs:1516823472905257
Sequence No : 0x28
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_NIST_AES_WRAP (0x1e)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 6
Public Key Handle : 0
```

该 **exSymKey** 命令将导出的密钥写入一个文件中，但不更改 HSM 上的密钥。因此，集群中其他 HSMs 人的日志中没有相应的事件。

### 示例：导入密钥
<a name="audit-log-example-import-key"></a>

此示例显示了在集群中将密钥导入时记录 HSMs 的审核日志事件。在此示例中，加密用户 (CU) 使用[imSymKey](key_mgmt_util-imSymKey.md)命令将 AES 密钥导入 HSMs。该命令使用密钥 `6` 作为包装密钥。

接收命令的 HSM 首先记录密钥 `6`（包装密钥）的 `CN_NIST_AES_WRAP` 事件。

```
Time: 01/24/18 19:58:23.170518, usecs:1516823903170518
Sequence No : 0x29
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_NIST_AES_WRAP (0x1e)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 6
Public Key Handle : 0
```

然后，HSM 记录一个 `CN_UNWRAP_KEY` 事件，该事件表示导入操作。将为导入的密钥分配密钥句柄 `11`。

```
Time: 01/24/18 19:58:23.200711, usecs:1516823903200711
Sequence No : 0x2a
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_UNWRAP_KEY (0x1b)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 11
Public Key Handle : 0
```

生成或导入新密钥时，客户端工具会自动尝试将新密钥与集群 HSMs 中的其他密钥同步。在此情况下，HSM 会在从 HSM 中将密钥 `11` 作为遮蔽对象提取时，记录一个 `CN_EXTRACT_MASKED_OBJECT_USER` 事件。

```
Time: 01/24/18 19:58:23.203350, usecs:1516823903203350
Sequence No : 0x2b
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_EXTRACT_MASKED_OBJECT_USER (0xf0)
Session Handle : 0x7004003
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 11
Public Key Handle : 0
```

集群 HSMs 中其他人的日志流反映了新导入的密钥的到来。

例如，已将此事件记录在同一个集群中的其他 HSM 的日志流中。此 `CN_INSERT_MASKED_OBJECT_USER` 事件记录表示密钥 `11` 的遮蔽对象已到达。

```
Time: 01/24/18 19:58:23.286793, usecs:1516823903286793
Sequence No : 0xb
Reboot counter : 0x107
Command Type(hex) : CN_MGMT_CMD (0x0)
Opcode : CN_INSERT_MASKED_OBJECT_USER (0xf1)
Session Handle : 0xc008004
Response : 0:HSM Return: SUCCESS
Log type : MGMT_KEY_DETAILS_LOG (1)
Priv/Secret Key Handle : 11
Public Key Handle : 0
```

### 示例：共享和取消共享密钥
<a name="audit-log-example-share-unshare-key"></a>

此示例显示当加密用户 (CU) 与其他加密用户共享或取消共享 ECC 私有密钥时记录的审计日志事件。CU 使用 [shareKey](cloudhsm_mgmt_util-shareKey.md) 命令并提供密钥句柄、用户 ID 和值 `1` 来共享密钥（或值 `0` 来取消共享密钥）。

在以下示例中，接收命令的 HSM 将记录一个表示共享操作的 `CM_SHARE_OBJECT` 事件。

```
Time: 02/08/19 19:35:39.480168, usecs:1549654539480168
Sequence No	: 0x3f
Reboot counter	: 0x38
Command Type(hex)	: CN_MGMT_CMD (0x0)
Opcode	: CN_SHARE_OBJECT (0x12)
Session Handle	: 0x3014007
Response	: 0:HSM Return: SUCCESS
Log type	: UNKNOWN_LOG_TYPE (5)
```