如何解决 CloudHSM cloudhsm_mgmt_util 命令的“RET_MXN_AUTH_FAILED”错误?

上次更新时间:2019 年 9 月 6 日

我的 AWS CloudHSM 集群的 cloudhsm_mgmt_util 命令行工具返回了与以下类似的错误消息:

RET_MXN_AUTH_FAILED

如何解决此问题?

简短描述

此错误表示没有提供 M of N 身份验证。M of N 是一种基于仲裁的身份验证,这意味着必须至少有 2 名用户签署令牌才能运行命令。这可确保单个用户无法导致 CloudHSM 集群出现不正确的活动。有关更多信息,请参阅强制执行仲裁身份验证(M of N 访问控制)

listUsers 命令显示 MofnPubKey 的值被设置为 NO

aws-cloudhsm>aws-cloudhsm>listUsers
Users on server 0(172.31.21.34):
Number of users found:6
    User Id        User Type    User Name     MofnPubKey    LoginFailureCnt     2FA
         1            CO        admin           NO               0               NO
         2            AU        app_user        NO               0               NO
         3            CU        cryptouser      NO               0               NO
         4            CO        admin1          NO               0               NO
         5            CO        palmep          NO               0               NO
         6            CU        user1           NO               0               NO

这表示没有用户具有可以签署仲裁令牌的公有密钥。CO(加密管理者)用户必须使用 registerMofnPubKey 命令为 CloudHSM 集群注册该公有密钥。有关更多信息,请参阅创建并注册签名密钥

解决方法

在 CloudHSM 集群上运行 getMValue 命令。使用参数 3 来指示服务 3 下命令的值。操作将使用 createuserdeleteUserchangePswd 命令。

aws-cloudhsm>getMValue 3
MValue of service 3[USER_MGMT] on server 0 : [2]
MValue of service 3[USER_MGMT] on server 1 : [2]

在此例中,集群的 HSM 服务器的值为 2。此值不能下调至低于 2 的值,但可以上调。如果意外启用了该值,您可以从较旧的 CloudHSM 集群备份还原。要解决此问题,您必须使用 getMValue 中指定的用户数创建并注册一个非对称密钥。然后,您必须根据 getMValue中指定的用户数检索并签署仲裁令牌 。有关说明,请参阅使用面向加密管理者的仲裁身份验证:首次设置


这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助吗?