

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Utilizzo di CloudHSM Management Utility (CMU) per gestire l'autenticazione del quorum (controllo dell'accesso "M of N")
<a name="quorum-authentication"></a>

Il HSMs tuo AWS CloudHSM cluster supporta l'autenticazione quorum, nota anche come controllo degli accessi M of N. Con l'autenticazione del quorum, nessun utente singolo sull'HSM può eseguire le operazioni controllate dal quorum sull'HSM. Invece, un numero minimo di utenti HSM (almeno 2) deve cooperare per eseguire queste operazioni. L'autenticazione del quorum ti consente di aggiungere un ulteriore livello di protezione, in quanto richiede l'approvazione da parte di più utenti HSM.

L'autenticazione del quorum consente di controllare le seguenti operazioni:
+ Gestione degli utenti HSM da parte di [funzionari crittografici (COs)](understanding-users-cmu.md#crypto-officer): creazione ed eliminazione di utenti HSM e modifica della password di un altro utente HSM. Per ulteriori informazioni, consulta [Gestione degli utenti con autenticazione del quorum abilitata per AWS CloudHSM Management Utility](quorum-authentication-crypto-officers.md).

Ricorda le seguenti informazioni aggiuntive sull'utilizzo dell'autenticazione del quorum in AWS CloudHSM.
+ Un utente HSM può firmare il proprio token del quorum, ovvero, l'utente richiedente può fornire una delle approvazioni richieste per l'autenticazione del quorum.
+ È possibile scegliere il numero minimo di approvatori del quorum per le operazioni controllate dal quorum. Il numero minore che si può scegliere è due (2) e il numero maggiore è otto (8).
+ L'HSM può archiviare fino a 1.024 token del quorum. Se l'HSM dispone già di 1.024 token quando tenta di crearne uno nuovo, l'HSM elimina uno di quelli scaduti. Per impostazione predefinita, i token scadono dieci minuti dopo la loro creazione.
+ Il cluster utilizza la stessa chiave per l'autenticazione del quorum e per l'autenticazione a due fattori (2FA). Per ulteriori informazioni sull'utilizzo dell'autenticazione del quorum e dell'autenticazione a due fattori, vedi [Autenticazione del quorum e 2FA](quorum-2fa.md).

I seguenti argomenti forniscono ulteriori informazioni sull'autenticazione del quorum in AWS CloudHSM.

**Topics**
+ [Processo di autenticazione del quorum](quorum-authentication-overview.md)
+ [Prima configurazione](quorum-authentication-crypto-officers-first-time-setup.md)
+ [Gestione degli utenti con quorum (M of N)](quorum-authentication-crypto-officers.md)
+ [Modifica del valore minimo](quorum-authentication-crypto-officers-change-minimum-value.md)

# Processo di autenticazione Quorum per Management Utility AWS CloudHSM
<a name="quorum-authentication-overview"></a>

Le seguenti operazioni riepilogano i processi di autenticazione del quorum. Per le operazioni e gli strumenti specifici, consultare [Gestione degli utenti con autenticazione del quorum abilitata per AWS CloudHSM Management Utility](quorum-authentication-crypto-officers.md).

1. Ciascun utente HSM crea una chiave asimmetrica per la firma. Completa questa operazione al di fuori dell'HSM, assicurandosi di proteggere la chiave in modo appropriato.

1. Ciascun utente HSM effettua l'accesso all'HSM e registra la parte pubblica della propria chiave di firma (la chiave pubblica) nell'HSM.

1. Quando un utente HSM desidera effettuare un'operazione controllata dal quorum, ciascun utente accede all'HSM e ottiene un *token del quorum*.

1. L'utente HSM assegna il token del quorum a uno o più utenti HSM e richiede la loro approvazione.

1. Gli altri utenti HSM approvano utilizzando le loro chiavi per firmare crittograficamente il token del quorum. Ciò si verifica al di fuori dell'HSM.

1. Quando l'utente HSM raggiunge il numero richiesto di approvazioni, accede all'HSM e fornisce il token del quorum e le approvazioni (firme) all'HSM.

1. L'HSM utilizza la chiavi pubbliche registrate di ciascun firmatario per verificare le firme. Se le firme sono valide, l'HSM approva il token.

1. L'utente HSM può quindi eseguire un'operazione controllata dal quorum.

# Imposta l'autenticazione del quorum per AWS CloudHSM i funzionari crittografici
<a name="quorum-authentication-crypto-officers-first-time-setup"></a>

I seguenti argomenti descrivono i passaggi da completare per configurare il modulo di sicurezza hardware (HSM) in modo che i [responsabili AWS CloudHSM crittografici () possano utilizzare l'autenticazione quorum COs](understanding-users-cmu.md#crypto-officer). È necessario eseguire questi passaggi solo una volta quando si configura per la prima volta l'autenticazione del quorum per. COs Una volta completata questa procedura, consultare [Gestione degli utenti con autenticazione del quorum abilitata per AWS CloudHSM Management Utility](quorum-authentication-crypto-officers.md).

**Topics**
+ [Prerequisiti](#quorum-crypto-officers-prerequisites)
+ [Passaggio 1. Creazione e registrazione di una chiave per la firma](#quorum-crypto-officers-create-and-register-key)
+ [Passaggio 2. Impostazione del valore minimo del quorum sull'HSM](#quorum-crypto-officers-set-quorum-minimum-value)

## Prerequisiti
<a name="quorum-crypto-officers-prerequisites"></a>

Per comprendere questo esempio, è bene avere familiarità con lo [strumento a riga di comando cloudhsm\$1mgmt\$1util (CMU)](cloudhsm_mgmt_util.md). In questo esempio, il AWS CloudHSM cluster ne ha due HSMs, ognuna con la stessa COs caratteristica, come illustrato nel seguente output del **listUsers** comando. Per ulteriori informazioni sulla creazione degli utenti, vedere [Utenti HSM](manage-hsm-users.md).

```
aws-cloudhsm > listUsers
Users on server 0(10.0.2.14):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                 NO               0               NO
         4              CO              officer2                                 NO               0               NO
         5              CO              officer3                                 NO               0               NO
         6              CO              officer4                                 NO               0               NO
         7              CO              officer5                                 NO               0               NO
Users on server 1(10.0.1.4):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                 NO               0               NO
         4              CO              officer2                                 NO               0               NO
         5              CO              officer3                                 NO               0               NO
         6              CO              officer4                                 NO               0               NO
         7              CO              officer5                                 NO               0               NO
```

## Passaggio 1. Creazione e registrazione di una chiave per la firma
<a name="quorum-crypto-officers-create-and-register-key"></a>

Per utilizzare l'autenticazione del quorum, ogni CO deve eseguire *tutti* i seguenti passaggi: 

**Topics**
+ [Creazione di una coppia di chiavi RSA](#mofn-key-pair-create)
+ [Creazione e firma di un token di registrazione](#mofn-registration-token)
+ [Registrazione della chiave pubblica con HSM](#mofn-register-key)

### Creazione di una coppia di chiavi RSA
<a name="mofn-key-pair-create"></a>

Esistono molti modi diversi per creare e proteggere una coppia di chiavi. Gli esempi a seguire mostrano come eseguire questa operazione con [OpenSSL](https://www.openssl.org/).

**Example - Creazione di una chiave privata con OpenSSL**  
L'esempio seguente spiega come utilizzare OpenSSL per creare una chiave RSA a 2.048 bit protetta da una passphrase. Per utilizzare questo esempio, *officer1.key* sostituitelo con il nome del file in cui desiderate memorizzare la chiave.  

```
$ openssl genrsa -out <officer1.key> -aes256 2048
        Generating RSA private key, 2048 bit long modulus
.....................................+++
.+++
e is 65537 (0x10001)
Enter pass phrase for officer1.key:
Verifying - Enter pass phrase for officer1.key:
```

Successivamente, genera la chiave pubblica utilizzando la chiave privata appena creata.

**Example - Creazione di una chiave pubblica con OpenSSL**  
L'esempio seguente dimostra come utilizzare OpenSSL per creare una chiave pubblica dalla chiave privata appena creata.   

```
$ openssl rsa -in officer1.key -outform PEM -pubout -out officer1.pub
Enter pass phrase for officer1.key:
writing RSA key
```

### Creazione e firma di un token di registrazione
<a name="mofn-registration-token"></a>

 Crea un token e firmalo con la chiave privata appena generata nella fase precedente.

**Example - Creazione di un token**  
Il token di registrazione è semplicemente un file con dati casuali che non supera la dimensione massima di 245 byte. Firma il token con la chiave privata per dimostrare di avere accesso alla chiave privata. Il comando seguente utilizza echo per reindirizzare una stringa in un file.  

```
$ echo <token to be signed> > officer1.token
```

Firma il token e salvalo in un file di firma. Avrai bisogno del token firmato, del token non firmato e della chiave pubblica per registrare il CO come utente MofN nell'HSM. 

**Example - Firma del token**  
Utilizza OpenSSL e la chiave privata per firmare il token di registrazione e creare il file di firma.  

```
$ openssl dgst -sha256 \
    -sign officer1.key \
    -out officer1.token.sig officer1.token
```

### Registrazione della chiave pubblica con HSM
<a name="mofn-register-key"></a>

Dopo aver creato una chiave, il CO deve registrare la parte pubblica della chiave (chiave pubblica) con l'HSM.

**Per registrare una chiave pubblica con l'HSM**

1. Per avviare lo strumento a riga di comando cloudhsm\$1mgmt\$1util, utilizza il comando seguente.

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

1. Utilizza il comando **loginHSM** per effettuare l'accesso all'HSM come CO. Per ulteriori informazioni, consulta [Gestione degli utenti HSM con CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Utilizza il comando **[registerQuorumPubKey](cloudhsm_mgmt_util-registerQuorumPubKey.md)** per registrare una chiave pubblica. Per ulteriori informazioni, vedi l'esempio seguente oppure utilizza il comando **help registerQuorumPubKey**.

**Example - Registrazione di una chiave pubblica nell'HSM**  
L'esempio seguente mostra come usare il comando **registerQuorumPubKey** nello strumento a riga di comando cloudhsm\$1mgmt\$1util per registrare una chiave pubblica CO con HSM. Per utilizzare questo comando, il CO deve accedere all'HSM. Sostituire questi valori con i propri valori:  

```
aws-cloudhsm > registerQuorumPubKey CO <officer1> <officer1.token> <officer1.token.sig> <officer1.pub>
*************************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
registerQuorumPubKey success on server 0(10.0.2.14)
```  
**<officer1.token>**  
Il percorso a un file che contiene un token di registrazione non firmato. Può contenere qualsiasi dato casuale con dimensioni massime del file pari a 245 byte.   
Obbligatorio: sì  
**<officer1.token.sig>**  
Il percorso di un file che contiene l'hash firmato dal meccanismo SHA256 \$1PKCS del token di registrazione.  
Obbligatorio: sì  
**<officer1.pub>**  
Il percorso al file che contiene la chiave pubblica di una coppia di chiavi simmetriche RSA-2048. Utilizza la chiave privata per firmare il token di registrazione.   
Obbligatorio: sì
Dopo aver COs registrato le proprie chiavi pubbliche, l'output del **listUsers** comando lo mostra nella `MofnPubKey` colonna, come mostrato nell'esempio seguente.  

```
aws-cloudhsm > listUsers
Users on server 0(10.0.2.14):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           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
Users on server 1(10.0.1.4):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           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
```

## Passaggio 2. Impostazione del valore minimo del quorum sull'HSM
<a name="quorum-crypto-officers-set-quorum-minimum-value"></a>

*Per utilizzare l'autenticazione quorum per COs, un CO deve accedere all'HSM e quindi impostare il *valore minimo del quorum, noto anche come valore* m.* Questo è il numero minimo di approvazioni CO necessarie per l'esecuzione delle operazioni di gestione degli utenti HSM. Qualsiasi CO sull'HSM può impostare il valore minimo del quorum, compresi quelli COs che non hanno registrato una chiave per la firma. È possibile modificare il valore minimo del quorum in qualsiasi momento; per ulteriori informazioni, consultare [Modifica del valore minimo](quorum-authentication-crypto-officers-change-minimum-value.md).

**Per impostare il valore minimo del quorum sull'HSM**

1. Per avviare lo strumento a riga di comando cloudhsm\$1mgmt\$1util, utilizza il comando seguente.

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

1. Utilizza il comando **loginHSM** per effettuare l'accesso all'HSM come CO. Per ulteriori informazioni, consulta [Gestione degli utenti HSM con CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Utilizzare il comando **setMValue** per impostare il valore minimo del quorum. Per ulteriori informazioni, vedi l'esempio seguente oppure utilizza il comando **help setMValue**.

**Example - Impostazione del valore minimo del quorum sull'HSM**  
Questo esempio utilizza un valore minimo del quorum pari a due. È possibile scegliere qualsiasi valore da due (2) a otto (8), fino al numero totale di COs sull'HSM. In questo esempio, l'HSM ne ha sei COs, quindi il valore massimo possibile è sei.  
Per utilizzare il comando di esempio seguente, sostituite il numero finale (*2*) con il valore minimo del quorum preferito.  

```
aws-cloudhsm > setMValue 3 <2>
*************************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
Setting M Value(2) for 3 on 2 nodes
```

Nell'esempio precedente, il primo numero (3) identifica il *servizio HSM* di cui si sta impostando il valore minimo del quorum.

La tabella seguente elenca gli identificatori del servizio HSM con i relativi nomi, descrizioni e comandi inclusi nel servizio.


| Identificatori servizio | Nome del servizio | Descrizione del servizio | Comandi HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Gestione degli utenti HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 
| 4 | MISC\$1CO | Servizio per CO vario |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 

Per ottenere il valore minimo del quorum per un servizio, utilizzare il comando **getMValue**, come nell'esempio seguente.

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

L'output del comando **getMValue** precedente mostra che il valore minimo del quorum per le operazioni di gestione degli utenti HSM (servizio 3) è ora due.

Una volta completata questa procedura, consultare [Gestione degli utenti con autenticazione del quorum abilitata per AWS CloudHSM Management Utility](quorum-authentication-crypto-officers.md).

# Gestione degli utenti con autenticazione del quorum abilitata per AWS CloudHSM Management Utility
<a name="quorum-authentication-crypto-officers"></a>

Un [ufficiale addetto alla AWS CloudHSM crittografia (CO)](understanding-users-cmu.md#crypto-officer) del modulo di sicurezza hardware (HSM) può configurare l'autenticazione quorum per le seguenti operazioni sull'HSM:
+ Creazione di utenti HSM
+ Eliminazione di utenti HSM
+ Modifica della password di un altro utente HSM

Dopo aver configurato l'HSM per l'autenticazione del quorum, COs non può eseguire autonomamente le operazioni di gestione degli utenti HSM. Nell'esempio seguente è mostrato l'output dopo che un CO ha tentato di creare un nuovo utente nell'HSM. Il comando ha esito negativo con un errore `RET_MXN_AUTH_FAILED`, che indica che l'autenticazione del quorum non è stata effettuata correttamente.

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

Per svolgere un'operazione di gestione degli utenti HSM, i CO devono completare le seguenti attività:

1. [Ottenere un *token del quorum*](#quorum-crypto-officers-get-token).

1. [Ottieni approvazioni (](#quorum-crypto-officers-get-approval-signatures)firme) da altri. COs

1. [Approvare il token sul modulo HSM](#quorum-crypto-officers-approve-token).

1. [Svolgere l'operazione di gestione degli utenti HSM](#quorum-crypto-officers-use-token).

Se non hai ancora configurato l'HSM per l'autenticazione quorum per, fallo ora. COs Per ulteriori informazioni, consulta [Prima configurazione](quorum-authentication-crypto-officers-first-time-setup.md).

## Passaggio 1. Ottenere un token del quorum
<a name="quorum-crypto-officers-get-token"></a>

Per prima cosa il CO deve utilizzare lo strumento a riga di comando cloudhsm\$1mgmt\$1util per richiedere un *token del quorum*.

**Per ottenere un token del quorum**

1. Per avviare lo strumento a riga di comando cloudhsm\$1mgmt\$1util, utilizza il comando seguente.

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

1. Utilizza il comando **loginHSM** per effettuare l'accesso all'HSM come CO. Per ulteriori informazioni, consulta [Gestione degli utenti HSM con CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Utilizza il comando **getToken** per ottenere un token del quorum. Per ulteriori informazioni, vedi l'esempio seguente oppure utilizza il comando **help getToken**.

**Example - Ottenere un token del quorum**  
In questo esempio si ottiene un token del quorum per il CO con nome utente officer1, che viene salvato nel file `officer1.token`. Per utilizzare il comando di esempio, sostituisci i valori i tuoi personali:  
+ *officer1*— Il nome del CO che riceve il token. Deve essere lo stesso CO che ha eseguito l'accesso all'HSM e sta eseguendo il comando.
+ *officer1.token*— Il nome del file da utilizzare per archiviare il token del quorum.
Nel comando seguente, `3` identifica il *servizio* per cui potrai utilizzare il token ottenuto. In questo caso, il token è destinato alle operazioni di gestione degli utenti HSM (servizio 3). Per ulteriori informazioni, consulta [Passaggio 2. Impostazione del valore minimo del quorum sull'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
```

## Passaggio 2. Ottieni firme dopo l'approvazione COs
<a name="quorum-crypto-officers-get-approval-signatures"></a>

Un CO che ha un quorum token deve ottenere l'approvazione del token da altri. COs Per dare la propria approvazione, l'altro COs usa la propria chiave di firma per firmare crittograficamente il token. Tale operazione viene svolta esternamente all'HSM.

Sono disponibili vari modi per firmare il token. L'esempio seguente mostra come eseguire questa operazione con [OpenSSL](https://www.openssl.org/). Per utilizzare un altro strumento di firma, assicurati che lo strumento utilizzi la chiave privata del CO (chiave di firma) per firmare un digest SHA-256 del token.

**Example — Ottieni firme dopo l'approvazione COs**  
In questo esempio, il CO che dispone del token (officer1) necessita di almeno due approvazioni. I seguenti comandi di esempio mostrano come due persone COs possono utilizzare OpenSSL per firmare crittograficamente il token.  
Nel primo comando, officer1 firma il proprio token. Per utilizzare i seguenti comandi di esempio, sostituisci i valori con i tuoi personali:  
+ *officer1.key*e *officer2.key* — Il nome del file che contiene la chiave di firma del CO.
+ *officer1.token.sig1*e *officer1.token.sig2* — Il nome del file da utilizzare per memorizzare la firma. Assicurati di salvare ogni firma in un file diverso.
+ *officer1.token*— Il nome del file che contiene il token che il CO sta firmando.

```
$ openssl dgst -sha256 -sign officer1.key -out officer1.token.sig1 officer1.token
Enter pass phrase for officer1.key:
```
Nel comando seguente, officer2 firma lo stesso token.  

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

## Fase 3. Approvazione del token firmato nell'HSM
<a name="quorum-crypto-officers-approve-token"></a>

Dopo che un CO ottiene il numero minimo di approvazioni (firme) da altri COs, deve approvare il token firmato sull'HSM.

**Per approvare il token firmato nell'HSM.**

1. Crea un file di approvazione del token. Per maggiori informazioni, consulta il seguente esempio:

1. Per avviare lo strumento a riga di comando cloudhsm\$1mgmt\$1util, utilizza il comando seguente.

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

1. Utilizza il comando **loginHSM** per effettuare l'accesso all'HSM come CO. Per ulteriori informazioni, consulta [Gestione degli utenti HSM con CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Utilizza il comando **approveToken** per approvare il token firmato, trasferendo il file di approvazione del token. Per maggiori informazioni, consulta il seguente esempio:

**Example - Creazione di un file di approvazione del token e approvazione del token firmato nell'HSM**  
Il file di approvazione del token è un file di testo in un formato particolare richiesto dall'HSM. Il file contiene informazioni sui token, sui relativi approvatori e sulle firme degli approvatori. Di seguito è mostrato un esempio di file di approvazione del token.  

```
# 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;
```
Dopo aver creato il file di approvazione token, il CO utilizza lo strumento a riga di comando di cloudhsm\$1mgmt\$1util per l'accesso all'HSM. Il CO utilizza quindi il comando **approveToken** per approvare il token, come mostrato nel seguente esempio. *approval.txt*Sostituiscilo con il nome del file di approvazione del token.  

```
aws-cloudhsm > approveToken approval.txt
approveToken success on server 0(10.0.2.14)
approveToken success on server 1(10.0.1.4)
```
Se questo comando viene eseguito correttamente, l'HSM approva il token del quorum. Per controllare lo stato di un token, utilizza il comando **listTokens**, come mostrato nell'esempio di seguito. L'output del comando mostra che il token dispone del numero richiesto di approvazioni.  
Il periodo di validità dei token indica per quanto tempo è garantita la persistenza del token nell'HSM. Potrai utilizzare il token anche dopo la scadenza del periodo di validità (zero secondi).  

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

## Passaggio 4. Utilizza il token per operazioni di gestione degli utenti
<a name="quorum-crypto-officers-use-token"></a>

Dopo avere ottenuto un token con il numero richiesto di approvazioni, come mostrato nella sezione precedente, il CO è in grado di eseguire una delle seguenti operazioni di gestione degli utenti HSM:
+ Creare un utente HSM con il comando [createUser](cloudhsm_mgmt_util-createUser.md)
+ Eliminare un utente HSM con il comando **deleteUser**
+ Modificare la password di un altro utente HSM con il comando **changePswd**

Per ulteriori informazioni sull'utilizzo di questi comandi, consulta [Utenti HSM](manage-hsm-users.md).

Il CO può utilizzare il token per un'unica operazione. Quando tale operazione va a buon fine, il token non è più valido. Per eseguire un'altra operazione di gestione degli utenti HSM, il CO deve ottenere un nuovo token del quorum e nuove firme dagli approvatori, quindi approvare il nuovo token nell'HSM.

**Nota**  
Il token MofN è valido solo finché la sessione di accesso corrente è aperta. Se ti disconnetti da cloudhsm\$1mgmt\$1util o se la rete si disconnette, il token non è più valido. Analogamente, un token autorizzato può essere utilizzato solo all'interno di cloudhsm\$1mgmt\$1util e non può essere utilizzato per l'autenticazione in un'applicazione diversa.

Nel seguente comando di esempio, il CO crea un nuovo utente nell'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
```

Dopo che quello precedente è stato eseguito correttamente, il comando **listUsers** successivo mostra il nuovo utente.

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

Se il CO tenta di eseguire un'altra operazione di gestione degli utenti HSM, questa avrà esito negativo con un errore di autenticazione del quorum, come mostrato nel seguente esempio.

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

Il comando **listTokens** mostra che il CO non dispone di token approvati, come illustrato nel seguente esempio. Per eseguire un'altra operazione di gestione degli utenti HSM, il CO deve ottenere un nuovo token del quorum e nuove firme dagli approvatori, quindi approvare il nuovo token nell'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
```

# Modifica il valore minimo del quorum con Management Utility AWS CloudHSM
<a name="quorum-authentication-crypto-officers-change-minimum-value"></a>

Dopo aver [impostato il valore minimo del quorum](quorum-authentication-crypto-officers-first-time-setup.md#quorum-crypto-officers-set-quorum-minimum-value) in modo che i [funzionari AWS CloudHSM crittografici (COs)](understanding-users-cmu.md#crypto-officer) possano utilizzare l'autenticazione del quorum, potresti voler modificare il valore minimo del quorum. Il modulo HSM ti consente di modificare il valore minimo del quorum solo se il numero di approvatori è uguale o superiore al valore minimo corrente. Ad esempio, se il valore minimo del quorum è due, almeno due COs devono approvare la modifica del valore minimo del quorum.

Per ottenere l'approvazione a modificare tale valore, occorre un *token del quorum* per il comando **setMValue** (servizio 4). Per ottenere un token del quorum per il comando **setMValue** setMValue (servizio 4), il valore minimo del quorum per il servizio 4 deve essere superiore a uno. Ciò significa che prima di poter modificare il valore minimo del quorum per COs (servizio 3), potrebbe essere necessario modificare il valore minimo del quorum per il servizio 4.

La tabella seguente elenca gli identificatori del servizio HSM con i relativi nomi, descrizioni e comandi inclusi nel servizio.


| Identificatori servizio | Nome del servizio | Descrizione del servizio | Comandi HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Gestione degli utenti HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-change-minimum-value.html)  | 
| 4 | MISC\$1CO | Servizio per CO vario |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-change-minimum-value.html)  | 

**Per modificare il valore minimo del quorum per i responsabili della crittografia**

1. Per avviare lo strumento a riga di comando cloudhsm\$1mgmt\$1util, utilizza il comando seguente.

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

1. Utilizza il comando **loginHSM** per effettuare l'accesso all'HSM come CO. Per ulteriori informazioni, consulta [Gestione degli utenti HSM con CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Utilizzare il comando **getMValue** per ottenere il valore minimo del quorum per il servizio 3. Per maggiori informazioni, consulta il seguente esempio:

1. Utilizzare il comando **getMValue** per ottenere il valore minimo del quorum per il servizio 4. Per maggiori informazioni, consulta il seguente esempio:

1. Se il valore minimo del quorum del servizio 4 è inferiore a quello del servizio 3, utilizzare il comando **setMValue** per modificare il valore del servizio 4. Cambiare il valore del servizio 4 impostandolo su un valore uguale o superiore a quello del servizio 3. Per maggiori informazioni, consulta il seguente esempio:

1. [Ottenere un *token del quorum*](quorum-authentication-crypto-officers.md#quorum-crypto-officers-get-token), accertandosi di specificare il servizio 4 come servizio per il quale è possibile utilizzare il token.

1. [Ottieni approvazioni (](quorum-authentication-crypto-officers.md#quorum-crypto-officers-get-approval-signatures)firme) da altri. COs

1. [Approvare il token sul modulo HSM](quorum-authentication-crypto-officers.md#quorum-crypto-officers-approve-token).

1. Utilizzare il **setMValue** comando per modificare il valore minimo del quorum per il servizio 3 (operazioni di gestione degli utenti eseguite da). COs

**Example - Ottenimento dei valori minimi del quorum e modifica del valore per il servizio 4**  
Il seguente esempio di comando mostra che il valore minimo corrente del quorum per il servizio 3 è due.  

```
aws-cloudhsm > getMValue 3
MValue of service 3[USER_MGMT] on server 0 : [2]
MValue of service 3[USER_MGMT] on server 1 : [2]
```
Il seguente esempio di comando mostra che il valore minimo corrente del quorum per il servizio 4 è uno.  

```
aws-cloudhsm > getMValue 4
MValue of service 4[MISC_CO] on server 0 : [1]
MValue of service 4[MISC_CO] on server 1 : [1]
```
Per modificare il valore minimo del quorum del servizio 4, utilizzare il comando **setMValue** impostando un valore uguale o superiore al valore del servizio 3. L'esempio seguente imposta il valore minimo del quorum per il servizio 4 su due (2), lo stesso valore impostato per il servizio 3.  

```
aws-cloudhsm > setMValue 4 2
*************************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
Setting M Value(2) for 4 on 2 nodes
```
I seguenti comandi mostrano che il valore minimo del quorum adesso è due per il servizio 3 e per il servizio 4.  

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

```
aws-cloudhsm > getMValue 4
MValue of service 4[MISC_CO] on server 0 : [2]
MValue of service 4[MISC_CO] on server 1 : [2]
```