Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Benutzerverwaltung mit aktivierter Quorum-Authentifizierung für AWS CloudHSM Management Utility
Ein AWS CloudHSM Crypto Officer (CO) auf dem Hardware-Sicherheitsmodul (HSM) kann die Quorumauthentifizierung für die folgenden Operationen auf dem konfigurieren: HSM
-
Benutzer erstellen HSM
-
HSMBenutzer löschen
-
Das Passwort eines anderen HSM Benutzers ändern
Nachdem der für HSM die Quorumauthentifizierung konfiguriert wurde, COs können HSM Benutzerverwaltungsvorgänge nicht mehr eigenständig ausgeführt werden. Das folgende Beispiel zeigt die Ausgabe, wenn ein CO versucht, einen neuen Benutzer auf dem HSM zu erstellen. Der Befehl schlägt mit einem RET_MXN_AUTH_FAILED
-Fehler fehl. Dies weist darauf hin, dass die Quorum-Authentifizierung nicht möglich war.
aws-cloudhsm>
createUser CU user1 password
*************************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)?
y
Creating User user1(CU) on 2 nodes createUser failed: RET_MXN_AUTH_FAILED creating user on server 0(10.0.2.14) failed Retry/Ignore/Abort?(R/I/A):
A
Um einen HSM Benutzerverwaltungsvorgang durchzuführen, muss ein CO die folgenden Aufgaben ausführen:
Wenn Sie die Quorum-Authentifizierung HSM für noch nicht konfiguriert habenCOs, tun Sie dies jetzt. Weitere Informationen finden Sie unter Erstmalige Einrichtung.
Schritt 1. Abrufen eines Quorum-Tokens
Zunächst muss der CO cloudhsm_mgmt_util das Befehlszeilen-Tool verwenden, um ein Quorum-Token anzufordern.
So fordern Sie ein Quorum-Token an
-
Verwenden Sie den folgenden Befehl, um das zu starten cloudhsm_mgmt_util Befehlszeilentool.
$
/opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
-
Verwenden Sie den loginHSM Befehl, um sich HSM als CO anzumelden. Weitere Informationen finden Sie unter HSMBenutzerverwaltung mit Cloud HSM Management Utility (CMU).
-
Verwenden Sie zum Abrufen eines Quorum-Tokens den Befehl getToken. Weitere Informationen finden Sie im folgenden Beispiel. Alternativ können Sie auch den Befehl help getToken ausführen.
Beispiel – Abrufen eines Quorum-Tokens
In diesem Beispiel wird ein Quorum-Token für den CO mit dem Benutzernamen „officer1“ abgerufen und in einer Datei namens officer1.token
gespeichert. Zum Verwenden des Beispielbefehls ersetzen Sie diese Werte durch Ihre eigenen:
-
officer1
— Der Name des CO, der das Token erhält. Dies muss derselbe CO sein, der bei dem angemeldet ist HSM und diesen Befehl ausführt. -
officer1.token
— Der Name der Datei, die zum Speichern des Quorum-Tokens verwendet werden soll.
Beim folgenden Befehl identifiziert 3
den Service, für den Sie das Token verwenden können, das Sie abrufen. In diesem Fall ist das Token für HSM Benutzerverwaltungsoperationen (Dienst 3) bestimmt. Weitere Informationen finden Sie unter Schritt 2. Stellen Sie den Quorum-Mindestwert auf HSM.
aws-cloudhsm>
getToken 3
getToken success on server 0(10.0.2.14) Token: Id:1 Service:3 Node:1 Key Handle:0 User:officer1 getToken success on server 1(10.0.1.4) Token: Id:1 Service:3 Node:0 Key Handle:0 User:officer1officer1
officer1.token
Schritt 2. Holen Sie sich Signaturen beim Genehmigen COs
Ein CO, der über ein Quorum-Token verfügt, muss das Token von anderen genehmigen lassen. COs Um ihre Zustimmung zu erteilen, COs verwenden die anderen ihren Signaturschlüssel, um das Token kryptografisch zu signieren. Sie tun das außerhalb der. HSM
Es gibt viele verschiedene Möglichkeiten, ein Token zu signieren. Das folgende Beispiel zeigt, wie das mit Open
Beispiel — Holen Sie sich Signaturen beim Genehmigen COs
In diesem Beispiel benötigt der CO mit dem Token (officer1) mindestens zwei Genehmigungen. Die folgenden Beispielbefehle zeigen, wie zwei Personen Open verwenden COs können, SSL um das Token kryptografisch zu signieren.
Beim ersten Befehl signiert „officer1“ das eigene Token. Wenn Sie die folgenden Beispielbefehle verwenden, ersetzen Sie diese Werte durch Ihre eigenen:
-
officer1.key
andofficer2.key
— Der Name der Datei, die den Signaturschlüssel des CO enthält. -
officer1.token.sig1
andofficer1.token.sig2
— Der Name der Datei, die zum Speichern der Signatur verwendet werden soll. Stellen Sie sicher, dass jede Signatur in einer anderen Datei gespeichert wird. -
officer1.token
— Der Name der Datei, die das Token enthält, das der CO signiert.
$
openssl dgst -sha256 -sign
officer1.key
-outofficer1.token.sig1
officer1.token
Enter pass phrase for officer1.key:
Beim folgenden Befehl signiert „officer2“ dasselbe Token.
$
openssl dgst -sha256 -sign
officer2.key
-outofficer1.token.sig2
officer1.token
Enter pass phrase for officer2.key:
Schritt 3. Genehmigen Sie das signierte Token auf dem HSM
Nachdem ein CO die Mindestanzahl an Genehmigungen (Signaturen) von anderen erhalten hatCOs, muss er oder sie das signierte Token auf dem HSM genehmigen.
Um das signierte Token auf dem zu genehmigen HSM
-
Erstellen Sie eine Token-Genehmigungs-Datei. Weitere Informationen finden Sie im folgenden Beispiel.
-
Verwenden Sie den folgenden Befehl, um das zu starten cloudhsm_mgmt_util Befehlszeilentool.
$
/opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
-
Verwenden Sie den loginHSM Befehl, um sich HSM als CO anzumelden. Weitere Informationen finden Sie unter HSMBenutzerverwaltung mit Cloud HSM Management Utility (CMU).
-
Verwenden Sie den Befehl approveToken zum Genehmigen des signierten Tokens, indem Sie die Token-Genehmigungs-Datei übergeben. Weitere Informationen finden Sie im folgenden Beispiel.
Beispiel — Erstellen Sie eine Token-Genehmigungsdatei und genehmigen Sie das signierte Token auf dem HSM
Die Token-Genehmigungsdatei ist eine Textdatei in einem bestimmten Format, das für HSM erforderlich ist. Die Datei enthält Informationen über das Token, die Genehmigenden und dessen Signaturen. Im Folgenden wird ein Beispiel einer Token-Genehmigungs-Datei gezeigt.
# For "Multi Token File Path", type the path to the file that contains # the token. You can type the same value for "Token File Path", but # that's not required. The "Token File Path" line is required in any # case, regardless of whether you type a value. Multi Token File Path = officer1.token; Token File Path = ; # Total number of approvals Number of Approvals = 2; # Approver 1 # Type the approver's type, name, and the path to the file that # contains the approver's signature. Approver Type = 2; # 2 for CO, 1 for CU Approver Name = officer1; Approval File = officer1.token.sig1; # Approver 2 # Type the approver's type, name, and the path to the file that # contains the approver's signature. Approver Type = 2; # 2 for CO, 1 for CU Approver Name = officer2; Approval File = officer1.token.sig2;
Nach dem Erstellen der Token-Genehmigungs-Datei verwendet der CO das cloudhsm_mgmt_util Befehlszeilentool zum Anmelden beiHSM. Anschließend genehmigt der CO das Token mit dem Befehl approveToken, wie im folgenden Beispiel gezeigt. Ersetzen approval.txt
mit dem Namen der Token-Genehmigungsdatei.
aws-cloudhsm>
approveToken
approval.txt
approveToken success on server 0(10.0.2.14) approveToken success on server 1(10.0.1.4)
Wenn dieser Befehl erfolgreich ist, HSM hat er das Quorum-Token genehmigt. Zum Prüfen des Token-Status nutzen Sie den Befehl listTokens, wie im folgenden Beispiel gezeigt. Die Befehlsausgabe zeigt, dass das Token über die erforderliche Anzahl von Genehmigungen verfügt.
Die Gültigkeitsdauer des Tokens gibt an, wie lange das Token garantiert auf dem gespeichert ist. HSM Sie können das Token auch nach Ablauf der Token-Gültigkeitsdauer (null Sekunden) noch verwenden.
aws-cloudhsm>
listTokens
===================== Server 0(10.0.2.14) ===================== -------- Token - 0 ---------- Token: Id:1 Service:3 Node:1 Key Handle:0 User:officer1 Token Validity: 506 sec Required num of approvers : 2 Current num of approvals : 2 Approver-0: officer1 Approver-1: officer2 Num of tokens = 1 ===================== Server 1(10.0.1.4) ===================== -------- Token - 0 ---------- Token: Id:1 Service:3 Node:0 Key Handle:0 User:officer1 Token Validity: 506 sec Required num of approvers : 2 Current num of approvals : 2 Approver-0: officer1 Approver-1: officer2 Num of tokens = 1 listTokens success
Schritt 4. Verwenden des Tokens für Benutzermanagement-Vorgänge
Sobald ein CO über ein Token mit der erforderlichen Anzahl von Genehmigungen verfügt, wie im vorherigen Abschnitt beschrieben, kann das CO eine der folgenden HSM Benutzerverwaltungsoperationen ausführen:
-
Erstellen Sie einen HSM Benutzer mit dem Befehl createUser
-
Löschen Sie einen HSM Benutzer mit dem deleteUser Befehl
-
Ändern Sie das Passwort eines anderen HSM Benutzers mit dem changePswd Befehl
Weitere Informationen zur Verwendung dieser Befehle finden Sie unter HSMBenutzer.
Der CO kann das Token nur für einen Vorgang nutzen. Wurde dieser erfolgreich ausgeführt, verliert das Token seine Gültigkeit. Um einen weiteren HSM Benutzerverwaltungsvorgang durchführen zu können, muss das CO ein neues Quorum-Token erhalten, neue Signaturen von Genehmigern einholen und das neue Token auf dem genehmigen. HSM
Anmerkung
Das MofN-Token ist nur gültig, solange Ihre aktuelle Anmeldesitzung geöffnet ist. Wenn Sie sich von cloudhsm_mgmt_util abmelden oder die Netzwerkverbindung unterbrochen wird, ist das Token nicht mehr gültig. Ebenso kann ein autorisiertes Token nur innerhalb von cloudhsm_mgmt_util verwendet werden, es kann nicht zur Authentifizierung in einer anderen Anwendung verwendet werden.
Im folgenden Beispielbefehl erstellt das CO einen neuen Benutzer auf dem. HSM
aws-cloudhsm>
createUser CU user1
password
*************************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)?
y
Creating User user1(CU) on 2 nodes
Nachdem der vorherige Befehl erfolgreich durchgeführt wurde, zeigt der nachfolgende Befehl listUsers den neuen Benutzer an.
aws-cloudhsm>
listUsers
Users on server 0(10.0.2.14): Number of users found:8 User Id User Type User Name MofnPubKey LoginFailureCnt 2FA 1 PCO admin NO 0 NO 2 AU app_user NO 0 NO 3 CO officer1 YES 0 NO 4 CO officer2 YES 0 NO 5 CO officer3 YES 0 NO 6 CO officer4 YES 0 NO 7 CO officer5 YES 0 NO 8 CU user1 NO 0 NO Users on server 1(10.0.1.4): Number of users found:8 User Id User Type User Name MofnPubKey LoginFailureCnt 2FA 1 PCO admin NO 0 NO 2 AU app_user NO 0 NO 3 CO officer1 YES 0 NO 4 CO officer2 YES 0 NO 5 CO officer3 YES 0 NO 6 CO officer4 YES 0 NO 7 CO officer5 YES 0 NO 8 CU user1 NO 0 NO
Wenn das CO versucht, einen weiteren HSM Benutzerverwaltungsvorgang auszuführen, schlägt er fehl und es wird ein Fehler bei der Quorumauthentifizierung angezeigt, wie im folgenden Beispiel gezeigt.
aws-cloudhsm>
deleteUser CU user1
Deleting user user1(CU) on 2 nodes deleteUser failed: RET_MXN_AUTH_FAILED deleteUser failed on server 0(10.0.2.14) Retry/rollBack/Ignore?(R/B/I):
I
deleteUser failed: RET_MXN_AUTH_FAILED deleteUser failed on server 1(10.0.1.4) Retry/rollBack/Ignore?(R/B/I):
I
Der Befehl listTokens zeigt an, dass der CO nicht über genehmigte Tokens verfügt, wie im folgenden Beispiel gezeigt. Um einen weiteren HSM Benutzerverwaltungsvorgang durchzuführen, muss das CO ein neues Quorum-Token abrufen, neue Signaturen von Genehmiger einholen und das neue Token auf dem genehmigen. HSM
aws-cloudhsm>
listTokens
===================== Server 0(10.0.2.14) ===================== Num of tokens = 0 ===================== Server 1(10.0.1.4) ===================== Num of tokens = 0 listTokens success