使用 Client SDK 5 将 AWS CloudHSM 与 Java Keytool 和 Jarsigner 集成的先决条件 - AWS CloudHSM

使用 Client SDK 5 将 AWS CloudHSM 与 Java Keytool 和 Jarsigner 集成的先决条件

要使用 AWS CloudHSM 密钥库,必须首先初始化和配置 AWS CloudHSM JCE 开发工具包。请按照以下步骤进行操作。

步骤 1:安装 JCE

要安装 JCE(包括 AWS CloudHSM 客户端先决条件),请按照安装 Java 库的步骤操作。

步骤 2:将 HSM 登录凭证添加到环境变量

设置环境变量以包含 HSM 登录凭证。

Linux
$ export HSM_USER=<HSM user name>
$ export HSM_PASSWORD=<HSM password>
Windows
PS C:\> $Env:HSM_USER=<HSM user name>
PS C:\> $Env:HSM_PASSWORD=<HSM password>
注意

AWS CloudHSM JCE 提供各类登录选项。要将 AWS CloudHSM 密钥库与第三方应用程序一起使用,必须通过环境变量使用隐式登录。如果要通过应用程序代码使用显式登录,必须使用 AWS CloudHSM 密钥库构建自己的应用程序。有关其他信息,请参阅使用 AWS CloudHSM 密钥库上的文章。

步骤 3:注册 JCE 提供程序

要在 Java CloudProvider 配置中注册 JCE 提供程序,请执行以下操作:

  1. 在 Java 安装中打开 java.security 配置文件进行编辑。

  2. java.security 配置文件中,添加 com.amazonaws.cloudhsm.jce.provider.CloudHsmProvider 作为最后一个提供程序。例如,如果 java.security 文件中有 9 个提供程序,则将以下提供程序添加为本节中的最后一个提供程序:

    security.provider.10=com.amazonaws.cloudhsm.jce.provider.CloudHsmProvider

注意

将 AWS CloudHSM 提供程序添加到更高的优先级可能会对系统性能产生负面影响,因为 AWS CloudHSM 提供程序将优先执行可以安全分流到软件的操作。作为最佳实践,请始终指定要用于某一操作的提供程序,无论该程序是 AWS CloudHSM 还是基于软件的提供程序。

注意

在使用带有 AWS CloudHSM 密钥库的 keytool 生成密钥时指定 -providerName-providerclass-providerpath 命令行选项可能会导致错误。