

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Configure a autenticação de quórum para agentes de criptografia AWS CloudHSM
<a name="quorum-authentication-crypto-officers-first-time-setup"></a>

Os tópicos a seguir descrevem as etapas que você deve concluir para configurar seu módulo de segurança de hardware (HSM) para que [os agentes de AWS CloudHSM criptografia (COs)](understanding-users-cmu.md#crypto-officer) possam usar a autenticação de quorum. Você precisa executar essas etapas somente uma vez ao configurar a autenticação de quorum pela primeira vez para. COs Depois de concluir essas etapas, consulte [Gerenciamento de usuários com autenticação de quorum habilitada para AWS CloudHSM o Management Utility](quorum-authentication-crypto-officers.md).

**Topics**
+ [Pré-requisitos](#quorum-crypto-officers-prerequisites)
+ [Etapa 1. Criar e registrar uma chave para assinatura](#quorum-crypto-officers-create-and-register-key)
+ [Etapa 2. Definir o valor mínimo do quorum no HSM](#quorum-crypto-officers-set-quorum-minimum-value)

## Pré-requisitos
<a name="quorum-crypto-officers-prerequisites"></a>

Para entender esse exemplo, você deve estar familiarizado com a [ferramenta da linha de comando do CMUcloudhsm\$1mgmt\$1util](cloudhsm_mgmt_util.md). Neste exemplo, o AWS CloudHSM cluster tem dois HSMs, cada um com o mesmo COs, conforme mostrado na saída a seguir do **listUsers** comando. Para obter mais informações sobre como criar usuários, consulte [Usuários do 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
```

## Etapa 1. Criar e registrar uma chave para assinatura
<a name="quorum-crypto-officers-create-and-register-key"></a>

Para usar a autenticação de quórum, cada CO deve executar *todas* as etapas a seguir: 

**Topics**
+ [Criar um par de chaves RSA](#mofn-key-pair-create)
+ [Crie e assine um token de registro](#mofn-registration-token)
+ [Registrar uma chave pública no HSM](#mofn-register-key)

### Criar um par de chaves RSA
<a name="mofn-key-pair-create"></a>

Existem muitas maneiras diferentes de criar e proteger um par de chaves. O exemplo a seguir mostra como fazer isso com o [OpenSSL](https://www.openssl.org/).

**Example Crie uma chave privada com o OpenSSL**  
O exemplo a seguir demonstra como usar o OpenSSL para criar uma chave RSA de 2048 bits protegida por um código de acesso. Para usar esse exemplo, *officer1.key* substitua pelo nome do arquivo em que você deseja armazenar a chave.  

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

Em seguida, gere a chave pública usando a chave privada que você acabou de criar.

**Example Crie uma chave pública com o OpenSSL**  
O exemplo a seguir demonstra como usar o OpenSSL para criar uma chave pública a partir da chave privada que você acabou de criar.   

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

### Crie e assine um token de registro
<a name="mofn-registration-token"></a>

 Você cria um token e o assina com a chave privada que acabou de gerar na etapa anterior.

**Example Crie um token**  
O token de registro é apenas um arquivo com dados randômicos que não excedem o tamanho máximo de 245 bytes. Você assina o token com a chave privada para demonstrar que tem acesso à chave privada. O comando a seguir usa echo para redirecionar uma string para um arquivo.  

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

Assine o token e salve-o em um arquivo de assinatura. Você precisará do token assinado, do token não assinado e da chave pública para registrar o CO como usuário do MoFN no HSM. 

**Example Assine o token**  
Use o OpenSSL e a chave privada para assinar o token de registro e criar o arquivo de assinatura.  

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

### Registrar uma chave pública no HSM
<a name="mofn-register-key"></a>

Depois de criar uma chave, o CO deve registrar a parte pública dela (a chave pública) no HSM.

**Para registrar uma chave pública no HSM**

1. Use o comando a seguir para iniciar a ferramenta de linha de comando cloudhsm\$1mgmt\$1util.

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

1. Use o comando **loginHSM** para fazer login nos HSMs como CO. Para obter mais informações, consulte [Gerenciamento de usuários do HSM com o CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Use o comando **[registerQuorumPubKey](cloudhsm_mgmt_util-registerQuorumPubKey.md)** para registrar a chave pública. Para obter mais informações, consulte o exemplo a seguir ou use o comando **help registerQuorumPubKey**.

**Example Registrar uma chave pública no HSM**  
O exemplo a seguir mostra como usar o comando **registerQuorumPubKey** na ferramenta da linha de comando cloudhsm\$1mgmt\$1util para registrar a chave pública de um CO no HSM. Para usar esse comando, o CO deve estar conectado no HSM. Substitua estes valores pelos seus próprios:  

```
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>**  
O caminho para um arquivo que contém um token de registro não assinado. Pode ter qualquer dado aleatório com tamanho máximo de arquivo de 245 bytes.   
Obrigatório: Sim  
**<officer1.token.sig>**  
O caminho para um arquivo que contém o hash assinado pelo mecanismo SHA256 \$1PKCS do token de registro.  
Obrigatório: Sim  
**<officer1.pub>**  
O caminho para o arquivo que contém a chave pública de um par de chaves assimétricas RSA-2048. Use a chave privada para assinar o token de registro.   
Obrigatório: Sim
Depois de todos COs registrarem suas chaves públicas, a saída do **listUsers** comando mostra isso na `MofnPubKey` coluna, conforme mostrado no exemplo a seguir.  

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

## Etapa 2. Definir o valor mínimo do quorum no HSM
<a name="quorum-crypto-officers-set-quorum-minimum-value"></a>

*Para usar a autenticação de quórum COs, um CO deve fazer login no HSM e definir o *valor mínimo do quórum, também conhecido como valor* m.* Esse é o número mínimo de aprovações de CO necessárias para realizar operações de gerenciamento de usuários do HSM. Qualquer CO no HSM pode definir o valor mínimo do quórum, inclusive COs aquele que não registrou uma chave para assinatura. Você pode alterar o valor mínimo de quorum a qualquer momento. Para obter mais informações, consulte [Altere o valor mínimo](quorum-authentication-crypto-officers-change-minimum-value.md).

**Para definir o valor mínimo do quorum no HSM**

1. Use o comando a seguir para iniciar a ferramenta de linha de comando cloudhsm\$1mgmt\$1util.

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

1. Use o comando **loginHSM** para fazer login nos HSMs como CO. Para obter mais informações, consulte [Gerenciamento de usuários do HSM com o CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Use o comando **setMValue** para definir o valor mínimo do quorum. Para obter mais informações, consulte o exemplo a seguir ou use o comando **help setMValue**.

**Example Definir o valor mínimo do quorum no HSM**  
Este exemplo usa um valor mínimo de quorum de dois. Você pode escolher qualquer valor de dois (2) a oito (8), até o número total de COs no HSM. Neste exemplo, o HSM tem seis COs, então o valor máximo possível é seis.  
Para usar o comando de exemplo a seguir, substitua o número final (*2*) pelo 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
```

No exemplo anterior, o primeiro número (3) identifica o *serviço HSM* cujo valor mínimo de quorum você está configurando.

A tabela a seguir lista os identificadores de serviço do HSM junto com seus nomes, descrições e comandos incluídos no serviço.


| Identificadores de dispositivo | Nome do serviço | Descrição do serviço | Comandos do HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Gerenciamento de usuários do HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 
| 4 | MISC\$1CO | Serviço de CO diverso |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 

Para obter o valor mínimo de quorum para um serviço, use o comando **getMValue**, como no exemplo a seguir.

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

A saída do comando **getMValue** anterior mostra que o valor mínimo de quorum para as operações de gerenciamento de usuários do HSM (serviço 3) é agora dois.

Depois de concluir essas etapas, consulte [Gerenciamento de usuários com autenticação de quorum habilitada para AWS CloudHSM o Management Utility](quorum-authentication-crypto-officers.md).