

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

# AWS CloudHSM 客户端 SDK 5 配置工具
<a name="configure-sdk-5"></a>

使用 AWS CloudHSM 客户端 SDK 5 配置工具更新客户端配置文件。

客户端软件开发工具包 5 中的每个组件都包含一个配置工具，配置工具的文件名中包含该组件的指示符。例如，客户端软件开发工具包 5 的 PKCS \$111 库包括一个在 Linux 或 `configure-pkcs11.exe` Windows 上名为 `configure-pkcs11` 的配置工具。

**Topics**
+ [语法](configure-tool-syntax5.md)
+ [参数](configure-tool-params5.md)
+ [示例](configure-tool-examples5.md)
+ [Bootstrap OpenSSL 提供商](configure-openssl-provider.md)
+ [高级配置](configure-sdk5-advanced-configs.md)
+ [相关主题](configure-tool-seealso5.md)

# AWS CloudHSM 客户端 SDK 5 配置语法
<a name="configure-tool-syntax5"></a>

 下表说明了客户端 SDK 5 的 AWS CloudHSM 配置文件的语法。有关这些参数的更多信息，请参阅[AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

------
#### [ PKCS \$111 ]

```
Usage: configure-pkcs11[ .exe ] [OPTIONS]

Options:
      --disable-certificate-storage
          Disables Certificate Storage
      --enable-certificate-storage
          Enables Certificate Storage
  -a <HSM ENI IP>...
          The address of the HSM instance
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
  -h, --help
          Print help
```

------
#### [ OpenSSL ]

```
Usage: configure-dyn[ .exe ] [OPTIONS]

Options:
  -a <HSM ENI IP>...
          The address of the HSM instance
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
  -h, --help
          Print help
```

------
#### [ KSP ]

```
Usage: configure-ksp.exe [OPTIONS]

Options:
  -a <HSM ENI IP>...
          The address of the HSM instance
      --server-client-cert-file <CLIENT CERTIFICATE FILE>
          The client certificate used for TLS client-server mutual authentication
      --server-client-key-file <CLIENT KEY FILE>
          The client private key used for TLS client-server mutual authentication
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
      --enable-sdk3-compatibility-mode
          Enables key file usage for KSP
      --disable-sdk3-compatibility-mode
          Disables key file usage for KSP
  -h, --help
          Print help
```

------
#### [ JCE ]

```
Usage: configure-jce[ .exe ] [OPTIONS]

Options:
  -a <HSM ENI IP>...
          The address of the HSM instance
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
  -h, --help
          Print help
```

------
#### [ CloudHSM CLI ]

```
Usage: configure-cli[ .exe ] [OPTIONS]

Options:
  -a <HSM ENI IP>...
          The address of the HSM instance
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
  -h, --help
          Print help
```

------
#### [ OpenSSL Provider ]

```
Usage: configure-openssl-provider[ .exe ] [OPTIONS]

Options:
  -a <HSM ENI IP>...
          The address of the HSM instance
      --cluster-id <CLUSTER ID>
          The id of the cluster containing the HSM instance(s)
      --disable-key-availability-check
          Disables key availability check during key use
      --enable-key-availability-check
          Enables key availability check during key use
      --disable-validate-key-at-init
          Disables parameter validation during initialization of crypto operations
      --enable-validate-key-at-init
          Enables parameter validation during initialization of crypto operations
      --endpoint <ENDPOINT>
          Specify the AWS CloudHSM API Endpoint
      --region <REGION>
          The region of the cluster
      --hsm-ca-cert <HSM CA CERTIFICATE FILE>
          The HSM CA certificate file
      --log-type <LOG TYPE>
          The log type [possible values: term, file]
      --log-file <LOG FILE>
          The log file
      --log-level <LOG LEVEL>
          The logging level [possible values: error, warn, info, debug, trace]
      --log-rotation <LOG ROTATION>
          The log rotation interval [possible values: never, hourly, daily]
      --default-retry-mode <RETRY MODE>
          The default method of retry to use for certain non-terminal failures [possible values: off, standard]
      --client-cert-hsm-tls-file <CLIENT CERTIFICATE HSM TLS FILE>
          The client certificate used for TLS client-hsm mutual authentication
      --client-key-hsm-tls-file <CLIENT KEY HSM TLS FILE>
          The client private key used for TLS client-hsm mutual authentication
  -h, --help
          Print help
```

------

# AWS CloudHSM 客户端 SDK 5 配置参数
<a name="configure-tool-params5"></a>

以下是配置 AWS CloudHSM 客户端 SDK 5 的参数列表。

**-a *<ENI IP address>***  
将指定的 IP 地址添加到客户端软件开发工具包 5 配置文件。输入集群中 HSM 的任何 ENI IP 地址。有关如何使用该选项的更多信息，请参阅[引导客户端软件开发工具包 5](cluster-connect.md#sdk8-connect)。  
是否必需：是

**--hsm-ca-cert *<customerCA certificate file path>***  
 存储用于将 EC2 客户端实例连接到集群的证书颁发机构 (CA, certificate authority) 证书的目录路径。这是您在初始化集群时创建的文件。默认情况下，系统会在以下位置查找此文件：  
Linux  

```
/opt/cloudhsm/etc/customerCA.crt
```
Windows  

```
C:\ProgramData\Amazon\CloudHSM\customerCA.crt
```
有关初始化集群或放置证书的更多信息，请参阅 [在每个 EC2 实例上使用颁发证书](cluster-connect.md#place-hsm-cert) 和 [在中初始化集群 AWS CloudHSM](initialize-cluster.md)。  
必需：否

**--cluster-id *<cluster ID>***  
 进行 `DescribeClusters` 调用以查找集群中与集群 ID 关联的所有 HSM 弹性网络接口（ENI）IP 地址。系统将 ENI IP 地址添加到 AWS CloudHSM 配置文件中。  
如果您在无法访问公共互联网的 VPC 中使用来自 EC2 实例的`--cluster-id`参数，则必须创建要连接的接口 VPC 终端节点 AWS CloudHSM。有关 VPC 端点的更多信息，请参阅 [AWS CloudHSM 和 VPC 终端节点](cloudhsm-vpc-endpoint.md)。
必需：否

**--端点 *<endpoint>***  
指定用于进行`DescribeClusters`呼叫的 AWS CloudHSM API 端点。设置此选项时，您必须与 `--cluster-id` 结合。  
必需：否

**--区域 *<region>***  
指定集群所在区域。设置此选项时，您必须与 `--cluster-id` 结合。  
如果您不提供 `--region` 参数，则系统会通过尝试读取 `AWS_DEFAULT_REGION` 或 `AWS_REGION` 环境变量选择区域。如果未设置这些变量，则系统会在 AWS Conﬁg 文件中检查与您的配置文件关联的区域（通常 `~/.aws/config`），除非您在 `AWS_CONFIG_FILE` 环境变量中指定了其他文件。如果以上均未设置，则系统默认为 `us-east-1` 区域。  
必需：否

**-client-cert-hsm-tls-文件 *<client certificate hsm tls path>***  
 用于 TLS 客户端-服务器双向身份验证的客户端证书的路径。  
 仅当您已使用 CloudHSM CLI 在 HSM 上注册了至少一个信任锚时，才使用此选项。设置此选项时，您必须与 `--client-key-hsm-tls-file` 结合。  
必需：否

**-client-key-hsm-tls-文件 *<client key hsm tls path>***  
 用于 TLS 客户端-HSM 双向身份验证的客户端密钥的路径。  
 仅当您已使用 CloudHSM CLI 在 HSM 上注册了至少一个信任锚时，才使用此选项。设置此选项时，您必须与 `--client-cert-hsm-tls-file` 结合。  
必需：否

**--日志级别 *<error \$1 warn \$1 info \$1 debug \$1 trace>***  
指定系统应写入日志文件的最低日志记录级别。每个级别都包括之前的级别，以“error”为最低等级，并追踪最高等级。这意味着，如果您指定“error”，系统只会将错误写入日志。如果指定“trace”，则系统会将错误、警告、提示 (info) 消息和调试消息写入日志。有关更多信息，请参阅[客户端软件开发工具包 5 日志记录](hsm-client-logs.md#sdk5-logging)。  
必需：否

**--日志轮换 *<daily \$1 weekly>***  
指定系统轮换日志的频率。有关更多信息，请参阅[客户端软件开发工具包 5 日志记录](hsm-client-logs.md#sdk5-logging)。  
必需：否

**--日志文件 *<file name with path>***  
指定系统将写入日志文件的位置。有关更多信息，请参阅[客户端软件开发工具包 5 日志记录](hsm-client-logs.md#sdk5-logging)。  
必需：否

**--日志类型 *<term \$1 file>***  
指定系统是将日志写入文件还是终端。有关更多信息，请参阅[客户端软件开发工具包 5 日志记录](hsm-client-logs.md#sdk5-logging)。  
必需：否

**-h \$1 --help**  
显示“帮助”。  
必需：否

**--disable-key-availability-check **  
标记以禁用密钥可用性仲裁。使用此标志表示 AWS CloudHSM 应禁用密钥可用性法定人数，并且您可以使用集群中仅存在于一个 HSM 上的密钥。有关使用此标记设置密钥可用性仲裁的更多信息，请参阅 [管理客户端密钥持久性设置](working-client-sync.md#setting-file-sdk8)。  
必需：否

**--enable-key-availability-check **  
标记以启用密钥可用性仲裁。使用此标志表示 AWS CloudHSM 应使用密钥可用性法定人数，并且在这些密钥存在于集群 HSMs 中的两个密钥之前不允许您使用密钥。有关使用此标记设置密钥可用性仲裁的更多信息，请参阅 [管理客户端密钥持久性设置](working-client-sync.md#setting-file-sdk8)。  
默认情况下启用。  
必需：否

**--disable-validate-key-at-init **  
通过指定您可以跳过初始化调用来验证密钥的权限以便后续调用，从而提高性能。请谨慎使用。  
背景：PKCS \$111 库中的某些机制支持多部分操作，在这些操作中，初始化调用会验证您是否可以在后续调用中使用该密钥。这需要对 HSM 进行验证调用，这会延长整体操作的延迟。此选项使您可以禁用后续调用，并有可能提高性能。  
必需：否

**--enable-validate-key-at-init **  
指定您应该使用初始化调用来验证密钥的权限，以便后续调用。这是默认选项。`enable-validate-key-at-init` 用于在您使用 `disable-validate-key-at-init` 暂停这些初始化调用后恢复这些调用。  
必需：否

# AWS CloudHSM 客户端 SDK 5 配置示例
<a name="configure-tool-examples5"></a>

这些示例说明如何使用 AWS CloudHSM 客户端 SDK 5 的配置工具。

## 引导客户端软件开发工具包 5
<a name="ex1"></a>

**Example**  
本示例使用 `-a` 参数更新客户端软件开发工具包 5 的 HSM 数据。要使用该`-a`参数，您必须拥有集群 HSMs 中其中一个的 IP 地址。  

**引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用 configure 工具指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" -a <HSM IP addresses>
  ```

**引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用配置工具指定集群中 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```

**引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用配置工具指定集群中 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```
您可以使用 `–-cluster-id` 参数代替 `-a <HSM_IP_ADDRESSES>`。要查看使用 `–-cluster-id` 的要求，请参阅 [AWS CloudHSM 客户端 SDK 5 配置工具](configure-sdk-5.md)。
有关 `-a` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

## 为客户端软件开发工具包 5 指定集群、区域和端点
<a name="ex2"></a>

**Example**  
 此示例使用 `cluster-id` 参数通过 `DescribeClusters` 调用来引导客户端软件开发工具包 5。  

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Linux EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --cluster-id <cluster-1234567>
  ```

**使用 `cluster-id` 引导适用于客户端软件开发工具包 5 的 Windows EC2 实例**
+  使用集群 ID `cluster-1234567` 指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --cluster-id <cluster-1234567>
  ```
 您可以将 `--region` 和 `--endpoint` 参数与 `cluster-id` 参数结合使用，以指定系统如何进行 `DescribeClusters` 调用。例如，如果集群的区域与 AWS CLI 默认配置区域不同，则应使用 `--region` 参数使用该区域。此外，您还可以指定用于调用的 AWS CloudHSM API 终端节点，这可能是各种网络设置所必需的，例如使用不使用默认 DNS 主机名的 VPC 接口终端节点。 AWS CloudHSM  

**使用自定义端点和区域启动 Linux EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**启动带有端点和区域的 Windows EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --cluster-id <cluster-1234567>--region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**使用自定义端点和区域启动 Linux EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**启动带有端点和区域的 Windows EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**使用自定义端点和区域启动 Linux EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**启动带有端点和区域的 Windows EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**使用自定义端点和区域启动 Linux EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```

**启动带有端点和区域的 Windows EC2 实例**
+  使用 configure 工具通过自定义区域和端点指定集群中某一 HSM 的 IP 地址。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --cluster-id <cluster-1234567> --region <us-east-1> --endpoint <https://cloudhsmv2.us-east-1.amazonaws.com>
  ```
有关 `--cluster-id`、`--region` 和 `--endpoint` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

## 更新 TLS 客户端-HSM 双向身份验证的客户端证书和密钥
<a name="ex3"></a>

**Example**  
 此示例说明如何使用`--client-cert-hsm-tls-file`和`--client-key-hsm-tls-file`参数通过为其指定自定义密钥和 SSL 证书来重新配置 SSL AWS CloudHSM   

**在 Linux 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   $ sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  使用配置工具指定 `ssl-client.pem` 和 `ssl-client.key`。

   ```
   $ sudo /opt/cloudhsm/bin/configure-pkcs11 \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**在 Windows 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  使用 PowerShell 解释器，使用配置工具指定`ssl-client.pem`和`ssl-client.key`。

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

**在 Linux 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  使用配置工具指定 `ssl-client.pem` 和 `ssl-client.key`。

   ```
   $ sudo /opt/cloudhsm/bin/configure-dyn \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**在 Windows 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  使用 PowerShell 解释器，使用配置工具指定`ssl-client.pem`和`ssl-client.key`。

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

**在 Linux 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  使用配置工具指定 `ssl-client.pem` 和 `ssl-client.key`。

   ```
   $ sudo /opt/cloudhsm/bin/configure-jce \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**在 Windows 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  使用 PowerShell 解释器，使用配置工具指定`ssl-client.pem`和`ssl-client.key`。

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

**在 Linux 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  使用配置工具指定 `ssl-client.pem` 和 `ssl-client.key`。

   ```
   $ sudo /opt/cloudhsm/bin/configure-cli \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**在 Windows 上对 Client SDK 5 使用自定义证书和密钥进行 TLS 客户端-HSM 双向身份验证**

1. 将您的密钥和证书复制到相应目录。

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  使用 PowerShell 解释器，使用配置工具指定`ssl-client.pem`和`ssl-client.key`。

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```
有关 `--client-cert-hsm-tls-file` 和 `--client-key-hsm-tls-file` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

## 禁用客户端密钥持久性设置
<a name="ex4"></a>

**Example**  
此示例使用 `--disable-key-availability-check` 参数禁用客户端密钥持久性设置。要使用单个 HSM 运行集群，必须禁用客户端密钥持久性设置。  

**在 Linux 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --disable-key-availability-check
  ```

**在 Windows 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --disable-key-availability-check
  ```

**在 Linux 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --disable-key-availability-check
  ```

**在 Linux 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --disable-key-availability-check
  ```

**在 Windows 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --disable-key-availability-check
  ```

**在 Linux 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --disable-key-availability-check
  ```

**在 Windows 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --disable-key-availability-check
  ```

**在 Linux 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --disable-key-availability-check
  ```

**在 Windows 上禁用客户端软件开发工具包 5 的客户端密钥持久性**
+  使用配置工具禁用客户端密钥持久性设置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --disable-key-availability-check
  ```
有关 `--disable-key-availability-check` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

## 管理日志记录选项
<a name="ex5"></a>

**Example**  
客户端软件开发工具包 5 使用 `log-file`、`log-level`、`log-rotation` 和 `log-type` 参数来管理日志记录。  
要为无服务器环境（例如 AWS Fargate 或 AWS Lambda）配置您的软件开发工具包，我们建议您将日志类型配置为 AWS CloudHSM 。`term`客户机日志将输出到为该环境配置的 Lo CloudWatch gs 日志组，`stderr`并在该组中捕获。

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Linux

  ```
  /opt/cloudhsm/run/cloudhsm-pkcs11.log
  ```

  Windows

  ```
  C:\Program Files\Amazon\CloudHSM\cloudhsm-pkcs11.log
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --log-type term --log-level info
  ```

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Linux

  ```
  stderr
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --log-type term --log-level info
  ```

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Linux

  ```
  stderr
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --log-type term --log-level info
  ```

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Windows

  ```
  C:\Program Files\Amazon\CloudHSM\cloudhsm-ksp.log
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --log-type term --log-level info
  ```

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Linux

  ```
  /opt/cloudhsm/run/cloudhsm-jce.log
  ```

  Windows

  ```
  C:\Program Files\Amazon\CloudHSM\cloudhsm-jce.log
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --log-type term --log-level info
  ```

**默认日志记录位置**
+ 如果您没有为文件指定位置，则系统会将日志写入以下默认位置：

  Linux

  ```
  /opt/cloudhsm/run/cloudhsm-cli.log
  ```

  Windows

  ```
  C:\Program Files\Amazon\CloudHSM\cloudhsm-cli.log
  ```

**配置日志记录级别并将其他日志记录选项设置为默认值**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --log-level info
  ```

**配置文件日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --log-type file --log-file <file name with path> --log-rotation daily --log-level info
  ```

**配置终端日志记录选项**
+ 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --log-type term --log-level info
  ```
有关 `log-file`、`log-level`、`log-rotation` 和 `log-type` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

## 为客户端软件开发工具包 5 放置颁发证书
<a name="ex6"></a>

**Example**  
此示例使用 `--hsm-ca-cert` 参数更新客户端软件开发工具包 5 的颁发证书的位置。  

**在 Linux 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --hsm-ca-cert <customerCA certificate file>
  ```

**在 Windows 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --hsm-ca-cert <customerCA certificate file>
  ```

**在 Linux 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --hsm-ca-cert <customerCA certificate file>
  ```

**在 Linux 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --hsm-ca-cert <customerCA certificate file>
  ```

**在 Windows 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --hsm-ca-cert <customerCA certificate file>
  ```

**在 Linux 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --hsm-ca-cert <customerCA certificate file>
  ```

**在 Windows 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --hsm-ca-cert <customerCA certificate file>
  ```

**在 Linux 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --hsm-ca-cert <customerCA certificate file>
  ```

**在 Windows 上放置适用于客户端软件开发工具包 5 的颁发证书**
+  使用配置工具指定签发证书的位置。

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --hsm-ca-cert <customerCA certificate file>
  ```
有关 `--hsm-ca-cert` 参数的更多信息，请参阅 [AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

# Bootstrap OpenSSL 提供商
<a name="configure-openssl-provider"></a>

使用该 configure-openssl-provider工具引导您的 OpenSSL 提供程序安装并将其连接到 AWS CloudHSM 您的集群。

**引导 OpenSSL 提供程序**

1. 使用集群中 HSM 的 IP 地址运行 configure-openssl-provider命令：

   ```
   $ sudo /opt/cloudhsm/bin/configure-openssl-provider -a <HSM IP address>
   ```

   *<HSM IP address>*替换为集群中任何 HSM 的 IP 地址。

1. 通过检查 OpenSSL 提供程序是否可以连接到您的集群来验证配置：

   ```
   $ openssl list -providers -provider-path /opt/cloudhsm/lib -provider cloudhsm
   ```

有关配置参数的更多信息，请参阅[AWS CloudHSM 客户端 SDK 5 配置参数](configure-tool-params5.md)。

# 客户端软件开发工具包 5 配置工具的高级配置
<a name="configure-sdk5-advanced-configs"></a>

 AWS CloudHSM Client SDK 5 配置工具包括高级配置，这些配置不是大多数客户使用的常规功能的一部分。高级配置提供了其他功能。

**重要**  
对配置进行任何更改之后，均需重启应用程序才能使更改生效。
+ PKCS \$111 高级配置
  + [使用 PKCS \$111 库进行多插槽配置 AWS CloudHSM](pkcs11-library-configs-multi-slot.md)
  + [PKCS \$111 库的重试命令 AWS CloudHSM](pkcs11-library-configs-retry.md)
+ OpenSSL 的高级配置
  + [重试适用于 OpenSSL 的命令 AWS CloudHSM](openssl-library-configs-retry.md)
+ KSP 的高级配置
  + [SDK3 密钥存储提供程序 (KSP) 的兼容模式 AWS CloudHSM](ksp-library-configs-sdk3-compatibility-mode.md)
+ JCE 的高级配置
  + [使用 JCE 提供程序连接到多个 AWS CloudHSM 集群](java-lib-configs-multi.md)
  + [用于 JCE 的重试命令 AWS CloudHSM](java-lib-configs-retry.md)
  + [使用 JCE 提取密钥 AWS CloudHSM](java-lib-configs-getencoded.md)
+  AWS CloudHSM 命令行界面 (CLI) 的高级配置
  + [使用 CloudHSM CLI 连接到多个集群](cloudhsm_cli-configs-multi-cluster.md)

# AWS CloudHSM 客户端 SDK 5 相关主题
<a name="configure-tool-seealso5"></a>

要了解有关 AWS CloudHSM 客户端 SDK 5 的更多信息，请参阅以下相关主题。
+ [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) API 操作
+ [describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html) AWS CLI
+ [Get-HSM2Cluster](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-HSM2Cluster.html) PowerShell cmdlet
+ [引导客户端软件开发工具包 5](cluster-connect.md#sdk8-connect)
+ [Bootstrap OpenSSL 提供商](configure-openssl-provider.md)
+ [AWS CloudHSM VPC 端点](cloudhsm-vpc-endpoint.md)
+ [管理客户端软件开发工具包 5 密钥持久性设置](working-client-sync.md#setting-file-sdk8)
+ [客户端软件开发工具包 5 日志记录](hsm-client-logs.md#sdk5-logging)
+ [设置 mTLS（推荐）](getting-started-setup-mtls.md)