

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
<a name="quorum-authentication-crypto-officers"></a>

Ein AWS CloudHSM [Crypto Officer (CO)](understanding-users-cmu.md#crypto-officer) auf dem Hardware-Sicherheitsmodul (HSM) kann die Quorumauthentifizierung für die folgenden Vorgänge auf dem HSM konfigurieren:
+ Erstellen von HSM-Benutzern
+ Löschen von HSM-Benutzern
+ Ändern des Passworts eines anderen HSM-Benutzers

Nachdem das HSM für die Quorumauthentifizierung konfiguriert wurde, COs können HSM-Benutzerverwaltungsvorgänge nicht mehr eigenständig ausgeführt werden. Das folgende Beispiel zeigt die Ausgabe, die angezeigt wird, wenn ein CO versucht, einen neuen Benutzer auf dem HSM anzulegen. 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
```

Zum Ausführen eines HSM-Benutzermanagement-Vorgangs muss ein CO folgende Aufgaben erledigen:

1. [Abrufen eines *Quorum-Tokens*](#quorum-crypto-officers-get-token).

1. [Holen Sie sich Genehmigungen (Signaturen)](#quorum-crypto-officers-get-approval-signatures) von anderen ein. COs

1. [Genehmigen des Tokens im HSM](#quorum-crypto-officers-approve-token).

1. [Durchführen des HSM-Benutzermanagement-Vorgangs](#quorum-crypto-officers-use-token).

Wenn Sie das HSM noch nicht für die Quorumauthentifizierung für konfiguriert haben COs, tun Sie das jetzt. Weitere Informationen finden Sie unter [Erstmalige Einrichtung](quorum-authentication-crypto-officers-first-time-setup.md).

## Schritt 1. Abrufen eines Quorum-Tokens
<a name="quorum-crypto-officers-get-token"></a>

Zunächst muss der CO das cloudhsm\$1mgmt\$1util-Befehlszeilen-Tool verwenden, um ein *Quorum-Token* anzufordern.

**So fordern Sie ein Quorum-Token an**

1. Starten Sie das Befehlszeilen-Toolcloudhsm\$1mgmt\$1util mit folgendem Befehl.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Verwenden Sie den Befehl **loginHSM**, um sich bei den HSMs als CO anzumelden. Weitere Informationen finden Sie unter [HSM-Benutzerverwaltung mit CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. 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.

**Example – 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 am HSM angemeldet ist 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 die HSM-Benutzermanagement-Vorgänge (Service 3). Weitere Informationen finden Sie unter [Schritt 2. Setzten des Quorum-Mindestwerts für das HSM](quorum-authentication-crypto-officers-first-time-setup.md#quorum-crypto-officers-set-quorum-minimum-value).  

```
aws-cloudhsm > getToken 3 officer1 officer1.token
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:officer1
```

## Schritt 2. Holen Sie sich Signaturen beim Genehmigen COs
<a name="quorum-crypto-officers-get-approval-signatures"></a>

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. Dies geschieht außerhalb des HSMs.

Es gibt viele verschiedene Möglichkeiten, ein Token zu signieren. Im folgenden Beispiel wird gezeigt, wie dies mit [OpenSSL](https://www.openssl.org/) durchgeführt wird. Wenn Sie ein anderes Signatur-Tool verwenden, müssen Sie sicherstellen, dass dieses den privaten Schlüssel (Signaturschlüssel) des COs zur Signierung des SHA-256-Digests des Tokens verwendet.

**Example — 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 OpenSSL verwenden COs können, 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*und *officer2.key* — Der Name der Datei, die den Signaturschlüssel des CO enthält.
+ *officer1.token.sig1*und *officer1.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 -out officer1.token.sig1 officer1.token
Enter pass phrase for officer1.key:
```
Beim folgenden Befehl signiert „officer2“ dasselbe Token.  

```
$ openssl dgst -sha256 -sign officer2.key -out officer1.token.sig2 officer1.token
Enter pass phrase for officer2.key:
```

## Schritt 3. Genehmigen des signierten Tokens auf dem HSM
<a name="quorum-crypto-officers-approve-token"></a>

Nachdem ein CO die Mindestanzahl an Genehmigungen (Signaturen) von anderen Personen erhalten hat COs, muss er oder sie das signierte Token auf dem HSM genehmigen.

**So genehmigen Sie das signierte Token auf dem HSM**

1. Erstellen Sie eine Token-Genehmigungs-Datei. Weitere Informationen finden Sie im folgenden Beispiel.

1. Starten Sie das Befehlszeilen-Toolcloudhsm\$1mgmt\$1util mit folgendem Befehl.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Verwenden Sie den Befehl **loginHSM**, um sich bei den HSMs als CO anzumelden. Weitere Informationen finden Sie unter [HSM-Benutzerverwaltung mit CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Verwenden Sie den Befehl **approveToken** zum Genehmigen des signierten Tokens, indem Sie die Token-Genehmigungs-Datei übergeben. Weitere Informationen finden Sie im folgenden Beispiel.

**Example – Erstellen einer Token-Genehmigungs-Datei und Genehmigen des signierten Tokens auf dem HSM**  
Die Token-Genehmigungs-Datei ist eine Textdatei in einem Format, das für das 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-Genehmigungsdatei verwendet der CO das cloudhsm\$1mgmt\$1util-Befehlszeilen-Tool für die Anmeldung am HSM. Anschließend genehmigt der CO das Token mit dem Befehl **approveToken**, wie im folgenden Beispiel gezeigt. *approval.txt*Ersetzen Sie es durch den 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)
```
Wurde der Befehl erfolgreich ausgeführt, hat das HSM 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 Token-Gültigkeitsdauer gibt an, wie lange das Token auf dem HSM erhalten bleibt. 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
<a name="quorum-crypto-officers-use-token"></a>

Nachdem ein CO über ein Token mit ausreichender Anzahl an Genehmigungen verfügt (wie im vorherigen Abschnitt gezeigt), kann er eine der folgenden HSM-Benutzermanagement-Vorgänge ausführen:
+ Erstellen eines HSM-Benutzers mit dem Befehl [createUser](cloudhsm_mgmt_util-createUser.md)
+ Löschen eines HSM-Benutzers mit dem Befehl **deleteUser**
+ Ändern des Passworts eines anderen HSM-Benutzers mit dem Befehl **changePswd**

Weitere Informationen zur Verwendung dieser Befehle finden Sie unter [HSM-Benutzer](manage-hsm-users.md).

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-Benutzermanagement-Vorgang auszuführen, benötigt der CO ein neues Quorum-Token sowie neue Signaturen von den Genehmigenden. Zudem muss er das neue Token auf dem HSM genehmigen.

**Anmerkung**  
Das MofN-Token ist nur gültig, solange Ihre aktuelle Anmeldesitzung geöffnet ist. Wenn Sie sich von cloudhsm\$1mgmt\$1util abmelden oder die Netzwerkverbindung unterbrochen wird, ist das Token nicht mehr gültig. Ebenso kann ein autorisiertes Token nur innerhalb von cloudhsm\$1mgmt\$1util verwendet werden, es kann nicht zur Authentifizierung in einer anderen Anwendung verwendet werden.

Beim folgenden Beispielbefehl erstellt der 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 der CO versucht, einen weiteren HSM-Benutzermanagement-Vorgang durchzuführen, schlägt dieser aufgrund eines Quorum-Authentifizierungsfehlers fehl, 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-Benutzermanagement-Vorgang auszuführen, benötigt der CO ein neues Quorum-Token sowie neue Signaturen von den Genehmigenden. Zudem muss er das neue Token auf dem HSM genehmigen.

```
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
```