

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configurar la autenticación de quórum para los oficiales de AWS CloudHSM cifrado
<a name="quorum-authentication-crypto-officers-first-time-setup"></a>

En los siguientes temas se describen los pasos que debe seguir para configurar el módulo de seguridad de hardware (HSM) de forma que los AWS CloudHSM [criptooficiales (COs)](understanding-users-cmu.md#crypto-officer) puedan utilizar la autenticación de quórum. Debe realizar estos pasos solo una vez cuando configure por primera vez la autenticación de quórum para. COs Después de completar estos pasos, consulte [Administración de usuarios con autenticación de quórum habilitada para la utilidad AWS CloudHSM de administración](quorum-authentication-crypto-officers.md).

**Topics**
+ [Requisitos previos](#quorum-crypto-officers-prerequisites)
+ [Paso 1. Creación y registro de una clave de firma](#quorum-crypto-officers-create-and-register-key)
+ [Paso 2. Cómo establecer el valor mínimo de cuórum en el HSM](#quorum-crypto-officers-set-quorum-minimum-value)

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

Para comprender este ejemplo, debe estar familiarizado con la [cloudhsm\$1mgmt\$1util herramienta de línea de comandos (CMU)](cloudhsm_mgmt_util.md). En este ejemplo, el AWS CloudHSM clúster tiene dos HSMs, cada uno con el mismo valor COs, como se muestra en el siguiente resultado del **listUsers** comando. Para obtener más información sobre la creación de usuarios, consulte [Usuarios de 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
```

## Paso 1. Creación y registro de una clave de firma
<a name="quorum-crypto-officers-create-and-register-key"></a>

Para utilizar la autenticación de quórum, cada OC debe realizar *todos* los pasos siguientes: 

**Topics**
+ [Creación de un par de claves RSA](#mofn-key-pair-create)
+ [Creación y firma de un token de registro](#mofn-registration-token)
+ [Cómo registrar una clave pública con el HSM](#mofn-register-key)

### Creación de un par de claves RSA
<a name="mofn-key-pair-create"></a>

Hay muchas formas de crear y proteger un par de claves. El siguiente ejemplo muestra cómo hacerlo con [OpenSSL](https://www.openssl.org/).

**Example : creación de una clave privada con OpenSSL**  
El siguiente ejemplo ilustra cómo utilizar OpenSSL para crear una clave RSA de 2048 bits que está protegida por una frase de contraseña. Para usar este ejemplo, *officer1.key* reemplácelo por el nombre del archivo en el que desee almacenar la clave.  

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

A continuación, genere la clave pública usando la clave privada que acaba de crear.

**Example : creación de una clave pública con OpenSSL**  
El siguiente ejemplo muestra cómo usar OpenSSL para crear una clave pública a partir de la clave privada que acaba de crear.   

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

### Creación y firma de un token de registro
<a name="mofn-registration-token"></a>

 Cree un token y fírmelo con la clave privada que acaba de generar en el paso anterior.

**Example : cree un token.**  
El token de registro es solo un archivo con cualquier dato aleatorio que no supere el tamaño máximo de 245 bytes. Firme el token con la clave privada para demostrar que tiene acceso a la clave privada. El siguiente comando usa eco para redirigir una cadena a un archivo.  

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

Firme el token y guárdelo en un archivo de firma. Necesitará el token firmado, el token sin firmar y la clave pública para registrar al CO como usuario de MoFN en el HSM. 

**Example : firme el token.**  
Utilice OpenSSL y la clave privada para firmar el token de registro y crear el archivo de firma.  

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

### Cómo registrar una clave pública con el HSM
<a name="mofn-register-key"></a>

Después de crear una clave, el CO debe registrar la parte pública de la clave (la clave pública) en el HSM.

**Para registrar una clave pública en el HSM**

1. Utilice el siguiente comando para iniciar la herramienta de línea de comandos cloudhsm\$1mgmt\$1util.

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

1. Utilice el comando **loginHSM** para iniciar sesión en los HSM como CO. Para obtener más información, consulte [Administrar usuarios del HSM con la utilidad de administración de CloudHSM (CMU)](manage-hsm-users-cmu.md).

1. Utilice el comando **[registerQuorumPubKey](cloudhsm_mgmt_util-registerQuorumPubKey.md)** para registrar la clave pública. Para obtener más información, consulte el siguiente ejemplo o utilice el comando **help registerQuorumPubKey**.

**Example : registro de una clave pública con el HSM**  
En el siguiente ejemplo, se explica cómo se utiliza el comando **registerQuorumPubKey** en la herramienta de línea de comandos cloudhsm\$1mgmt\$1util para registrar una clave pública del CO con el HSM. Para utilizar este comando, el CO tiene que haber iniciado sesión en el HSM. Reemplace estos valores por sus propios valores:  

```
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>**  
La ruta a un archivo que contiene un token de registro sin firmar. Puede contener cualquier dato aleatorio con un tamaño máximo de archivo de 245 bytes.   
Obligatorio: sí  
**<officer1.token.sig>**  
La ruta a un archivo que contiene el hash firmado por el mecanismo SHA256 \$1PKCS del token de registro.  
Obligatorio: sí  
**<officer1.pub>**  
La ruta al archivo que contiene la clave pública de un par de claves asimétricas RSA-2048. Utilice la clave privada para firmar el token de registro.   
Obligatorio: sí
Una vez que todos hayan COs registrado sus claves públicas, el resultado del **listUsers** comando lo mostrará en la `MofnPubKey` columna, como se muestra en el siguiente ejemplo.  

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

## Paso 2. Cómo establecer el valor mínimo de cuórum en el HSM
<a name="quorum-crypto-officers-set-quorum-minimum-value"></a>

*Para utilizar la autenticación de quórum COs, un CO debe iniciar sesión en el HSM y, a continuación, establecer el *valor mínimo de quórum, también conocido como valor* m.* Este es el número mínimo de aprobaciones del CO necesarias para realizar las operaciones de administración de usuarios de HSM. Cualquier CO del HSM puede establecer el valor mínimo de quórum, incluso COs si no ha registrado una clave de firma. Puede cambiar el valor mínimo del cuórum en cualquier momento; para obtener más información, consulte [Cambio del valor mínimo](quorum-authentication-crypto-officers-change-minimum-value.md).

**Para establecer el valor mínimo de cuórum en el HSM**

1. Utilice el siguiente comando para iniciar la herramienta de línea de comandos cloudhsm\$1mgmt\$1util.

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

1. Utilice el comando **loginHSM** para iniciar sesión en los HSM como CO. Para obtener más información, consulte [Administrar usuarios del HSM con la utilidad de administración de CloudHSM (CMU)](manage-hsm-users-cmu.md).

1. Utilice el comando **setMValue** para establecer el valor mínimo de cuórum. Para obtener más información, consulte el siguiente ejemplo o utilice el comando **help setMValue**.

**Example : establecimiento del valor mínimo de cuórum del HSM**  
Este ejemplo utiliza un valor mínimo de cuórum de dos. Puede elegir cualquier valor, entre dos (2) y ocho (8), hasta el número total de valores del COs HSM. En este ejemplo, el HSM tiene seis COs, por lo que el valor máximo posible es seis.  
Para usar el siguiente comando de ejemplo, sustituya el número final (*2*) por el valor mínimo de quórum preferido.  

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

En el ejemplo anterior, el primer número (3) identifica el *servicio de HSM* cuyo valor mínimo de cuórum está estableciendo.

En la siguiente tabla se enumeran los identificadores del servicio de HSM junto con sus nombres, descripciones y los comandos que se incluyen en el servicio.


| Identificador del servicio | Nombre del servicio | Descripción del servicio | Comandos de HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Gestión de usuarios HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 
| 4 | MISC\$1CO | Servicio de CO misceláneo |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 

Para obtener el valor mínimo de cuórum de un servicio, utilice el comando **getMValue**, tal y como se muestra en el siguiente ejemplo.

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

El resultado del comando **getMValue** anterior muestra que el valor mínimo de cuórum para las operaciones de administración de usuarios de HSM (servicio 3) ahora es dos.

Después de completar estos pasos, consulte [Administración de usuarios con autenticación de quórum habilitada para la utilidad AWS CloudHSM de administración](quorum-authentication-crypto-officers.md).