使用 CloudHSM 管理实用程序 (CMU, CloudHSM Management Utility) 管理用户 - AWS CloudHSM

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

使用 CloudHSM 管理实用程序 (CMU, CloudHSM Management Utility) 管理用户

本主题提供有关使用 CloudHSM 管理实用程序 (CMU)(客户端 SDK 附带的命令行工具)管理硬件安全模块 (HSM) 用户的 step-by-step 说明。有关 CMU 或 HSM 用户的更多信息,请参阅 CloudHSM 管理实用程序了解 HSM 用户

使用 CMU 了解 HSM 用户管理

要管理 HSM 用户,您必须使用加密员 (CO, cryptographic officer) 的用户名和密码登录到 HSM。只有 CO 才能管理用户。HSM 包含名为 admin 的默认 CO。在激活集群时,您可以设置 admin 的密码。

要使用 CMU,必须使用配置工具更新本地配置。CMU 创建自己的集群连接,但此连接具备集群感知功能。为了跟踪集群信息,CMU 会维护一个本地配置文件。这意味着,每次使用 CMU 时,都应首先通过运行带有 --cmu 参数的配置命令行工具来更新配置文件。如果您正在使用客户端软件开发工具包 3.2.1 或更早版本,则必须使用与 --cmu 不同的参数。有关更多信息,请参阅 通过客户端软件开发工具包 3.2.1 及更早版本使用 CMU

--cmu 参数要求您在集群中添加 HSM 的 IP 地址。如果您有多个 HSM,则可以使用任一 IP 地址。这可确保 CMU 可以将您所做的任何变更传播到整个集群中。请记住,CMU 使用其本地文件来跟踪集群信息。如果自上次在特定主机上使用 CMU 以来该集群已更改,则必须将此类更改添加到存储在该主机上的本地配置文件中。使用 CMU 时,切勿添加或删除 HSM。

获取 HSM 的 IP 地址(控制台)
  1. 打开 AWS CloudHSM 控制台,网址为 https://console.aws.amazon.com/cloudhsm/home

  2. 要更改 Amazon Web Services Region,请使用页面右上角的区域选择器(Region selector)。

  3. 要打开该集群的详细信息页面,请在集群表中选择集群 ID。

  4. 要获取 IP 地址,请在 HSM 选项卡上,选择 ENI IP 地址下列出的 IP 地址之一。

获取 HSM 的 IP 地址 ()AWS CLI
  • 使用 AWS CLI中的 describe-clusters 命令获取 HSM 的 IP 地址。在该命令的输出中,HSM 的 IP 地址为 EniIp 的值。

    $ aws cloudhsmv2 describe-clusters { "Clusters": [ { ... } "Hsms": [ { ... "EniIp": "10.0.0.9", ... }, { ... "EniIp": "10.0.1.6", ...

通过客户端软件开发工具包 3.2.1 及更早版本使用 CMU

在 Client SDK 3.3.0 AWS CloudHSM 中,增加了对--cmu参数的支持,这简化了更新 CMU 配置文件的过程。如果您正在使用来自客户端软件开发工具包 3.2.1 或更早版本的 CMU,则必须继续使用 -a-m 参数来更新配置文件。有关这些参数的更多信息,请参阅配置工具

下载 CloudHSM 管理实用程序

无论您正在使用客户端软件开发工具包 5 还是客户端软件开发工具包 3,最新版本的 CMU 都可用于 HSM 用户管理任务。

下载并安装 CMU。
  • 下载并安装 CMU。

    Amazon Linux
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL6/cloudhsm-mgmt-util-latest.el6.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el6.x86_64.rpm
    Amazon Linux 2
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    CentOS 7.8+
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    CentOS 8.3+
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-mgmt-util-latest.el8.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el8.x86_64.rpm
    RHEL 7 (7.8+)
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
    RHEL 8 (8.3+)
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-mgmt-util-latest.el8.x86_64.rpm
    $ sudo yum install ./cloudhsm-mgmt-util-latest.el8.x86_64.rpm
    Ubuntu 16.04 LTS
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Xenial/cloudhsm-mgmt-util_latest_amd64.deb
    $ sudo apt install ./cloudhsm-mgmt-util_latest_amd64.deb
    Ubuntu 18.04 LTS
    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Bionic/cloudhsm-mgmt-util_latest_u18.04_amd64.deb
    $ sudo apt install ./cloudhsm-mgmt-util_latest_u18.04_amd64.deb
    Windows Server 2012
    1. 下载 CloudHSM 管理实用程序

    2. 使用 Windows 管理权限运行 CMU 安装程序 (AWSCloudHSMManagementUtil-latest.msi)。

    Windows Server 2012 R2
    1. 下载 CloudHSM 管理实用程序

    2. 使用 Windows 管理权限运行 CMU 安装程序 (AWSCloudHSMManagementUtil-latest.msi)。

    Windows Server 2016
    1. 下载 CloudHSM 管理实用程序

    2. 使用 Windows 管理权限运行 CMU 安装程序 (AWSCloudHSMManagementUtil-latest.msi)。

如何使用 CMU 管理 HSM 用户

本节包括使用 CMU 管理 HSM 用户的基本命令。

createUser 用于在 HSM 上创建新用户。必须以 CO 身份登录才能创建用户。

创建一个新的 CO 用户
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 以 CO 用户身份登录 HSM。

    aws-cloudhsm>loginHSM CO admin co12345

    确保 CMU 列出的连接数与集群中的 HSM 数量相匹配。如果没有,请注销并重新开始。

  4. 使用 createUser 创建名为 example_officer 的 CO 用户,密码为 password1

    aws-cloudhsm>createUser CO example_officer password1

    CMU 会提示您关于创建用户操作的信息。

    *************************CAUTION******************************** This is a CRITICAL operation, should be done on all nodes in the cluster. AWS does NOT synchronize these changes automatically with the nodes on which this operation is not executed or failed, please ensure this operation is executed on all nodes in the cluster. **************************************************************** Do you want to continue(y/n)?
  5. 键入 y

创建一个新的 CU 用户
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 以 CO 用户身份登录 HSM。

    aws-cloudhsm>loginHSM CO admin co12345

    确保 CMU 列出的连接数与集群中的 HSM 数量相匹配。如果没有,请注销并重新开始。

  4. 使用 createUser 创建名为 example_user 的 CU 用户,密码为 password1

    aws-cloudhsm>createUser CU example_user password1

    CMU 会提示您关于创建用户操作的信息。

    *************************CAUTION******************************** This is a CRITICAL operation, should be done on all nodes in the cluster. AWS does NOT synchronize these changes automatically with the nodes on which this operation is not executed or failed, please ensure this operation is executed on all nodes in the cluster. **************************************************************** Do you want to continue(y/n)?
  5. 键入 y

有关 createUser 的更多信息,请参阅 createUser

使用 listUsers 命令列出该集群中的所有用户。您无需登录即可运行 listUsers,且所有用户类型都可以列出用户。

列出集群上的所有用户
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 使用 listUsers 列出集群上的所有用户。

    aws-cloudhsm>listUsers

    CMU 会列出集群上的所有用户。

    Users on server 0(10.0.2.9): Number of users found:4 User Id User Type User Name MofnPubKey LoginFailureCnt 2FA 1 AU app_user NO 0 NO 2 CO example_officer NO 0 NO 3 CU example_user NO 0 NO Users on server 1(10.0.3.11): Number of users found:4 User Id User Type User Name MofnPubKey LoginFailureCnt 2FA 1 AU app_user NO 0 NO 2 CO example_officer NO 0 NO 3 CU example_user NO 0 NO Users on server 2(10.0.1.12): Number of users found:4 User Id User Type User Name MofnPubKey LoginFailureCnt 2FA 1 AU app_user NO 0 NO 2 CO example_officer NO 0 NO 3 CU example_user NO 0 NO

有关 listUsers 的更多信息,请参阅 listUsers

要更改用户密码,请使用 changePswd

用户类型和密码区分大小写,但是用户名不区分大小写。

CO、加密用户(CU)和应用程序用户(AU)能更改自己的密码。要更改其他用户的密码,您必须以 CO 身份登录。您无法更改当前已登录用户的密码。

更改您自己的密码
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 登录到 HSM。

    aws-cloudhsm>loginHSM CO admin co12345

    确保 CMU 列出的连接数与集群中的 HSM 数量相匹配。如果没有,请注销并重新开始。

  4. 使用 changePswd 更改您自己的密码。

    aws-cloudhsm>changePswd CO example_officer <new password>

    CMU 会提示您更改密码的操作。

    *************************CAUTION******************************** This is a CRITICAL operation, should be done on all nodes in the cluster. AWS does NOT synchronize these changes automatically with the nodes on which this operation is not executed or failed, please ensure this operation is executed on all nodes in the cluster. **************************************************************** Do you want to continue(y/n)?
  5. 键入 y

    CMU 会提示您更改密码的操作。

    Changing password for example_officer(CO) on 3 nodes
更改其他用户的密码
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 以 CO 用户身份登录 HSM。

    aws-cloudhsm>loginHSM CO admin co12345

    确保 CMU 列出的连接数与集群中的 HSM 数量相匹配。如果没有,请注销并重新开始。

  4. 使用 changePswd 更改其他用户的密码。

    aws-cloudhsm>changePswd CU example_user <new password>

    CMU 会提示您更改密码的操作。

    *************************CAUTION******************************** This is a CRITICAL operation, should be done on all nodes in the cluster. AWS does NOT synchronize these changes automatically with the nodes on which this operation is not executed or failed, please ensure this operation is executed on all nodes in the cluster. **************************************************************** Do you want to continue(y/n)?
  5. 键入 y

    CMU 会提示您更改密码的操作。

    Changing password for example_user(CU) on 3 nodes

有关 changePswd 的更多信息,请参阅 changePswd

使用 deleteUser 删除用户。您必须以 CO 身份登录才能删除其他用户。

提示

您无法删除拥有密钥的加密用户 (CU)。

删除用户
  1. 使用配置工具更新 CMU 配置。

    Linux
    $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\ configure.exe --cmu <IP address>
  2. 启动 CMU。

    Linux
    $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    Windows
    C:\Program Files\Amazon\CloudHSM> .\cloudhsm_mgmt_util.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
  3. 以 CO 用户身份登录 HSM。

    aws-cloudhsm>loginHSM CO admin co12345

    确保 CMU 列出的连接数与集群中的 HSM 数量相匹配。如果没有,请注销并重新开始。

  4. 使用 deleteUser 删除用户。

    aws-cloudhsm>deleteUser CO example_officer

    CMU 会删除该用户。

    Deleting user example_officer(CO) on 3 nodes deleteUser success on server 0(10.0.2.9) deleteUser success on server 1(10.0.3.11) deleteUser success on server 2(10.0.1.12)

有关 deleteUser 的更多信息,请参阅 deleteUser