

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

# Importar uma chave privada usando o AWS CloudHSM KMU
<a name="key_mgmt_util-importPrivateKey"></a>

Use o **importPrivateKey** comando no AWS CloudHSM key\_mgmt\_util para importar uma chave privada assimétrica de um arquivo para um módulo de segurança de hardware (HSM). O HSM não permite a importação direta de chaves em texto não criptografado. O comando criptografa a chave privada usando uma chave de empacotamento AES que você especifica e desempacota a chave dentro do HSM. Se você estiver tentando associar uma AWS CloudHSM chave a um certificado, consulte [este tópico](ksp-library-associate-key-certificate.md).

**nota**  
Não é possível importar uma chave PEM protegida por senha usando uma chave simétrica ou privada.

Você deve especificar uma chave de empacotamento AES que tenha `OBJ_ATTR_UNWRAP` e `OBJ_ATTR_ENCRYPT` de valor de atributo `1`. Para encontrar os atributos de uma chave, use o comando [**getAttribute**](key_mgmt_util-getAttribute.md).

**nota**  
 Esse comando não oferece a opção de marcar as chaves importadas como não exportáveis. 

Antes de executar um comando key\_mgmt\_util, você deve [iniciar key\_mgmt\_util](key_mgmt_util-setup.md#key_mgmt_util-start) e [fazer login](key_mgmt_util-log-in.md) no HSM como um usuário de criptografia (CU).

## Sintaxe
<a name="importPrivateKey-syntax"></a>

```
importPrivateKey -h

importPrivateKey -l {{<label>}}
                 -f {{<key-file>}}
                 -w {{<wrapping-key-handle>}}
                 [-sess]
                 [-id {{<key-id>}}]
                 [-m_value {{<0...8>}}]
                 [min_srv {{<minimum-number-of-servers>}}]
                 [-timeout {{<number-of-seconds>}}]
                 [-u {{<user-ids>}}]
                 [-wk {{<wrapping-key-file>}}]
                 [-attest]
```

## Exemplos
<a name="importPrivateKey-examples"></a>

Este exemplo mostra como usar **importPrivateKey** para importar uma chave privada para um HSM.

**Example : importar uma chave privada**  
Esse comando importa a chave privada a partir de um arquivo chamado `rsa2048.key` com o rótulo `rsa2048-imported` e uma chave de encapsulamento com identificador `524299`. Quando o comando for bem-sucedido, **importPrivateKey** retornará um identificador de chave para a chave importada e uma mensagem de êxito.  

```
Command: importPrivateKey -f rsa2048.key -l rsa2048-imported -w 524299

BER encoded key length is 1216

Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS

Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS

Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

Private Key Unwrapped.  Key Handle: 524301

Cluster Error Status
Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
Node id 2 and err state 0x00000000 : HSM Return: SUCCESS
```

## Parâmetros
<a name="importPrivateKey-parameters"></a>

Esse comando usa os seguintes parâmetros.

**`-h`**  
Exibe a ajuda da linha de comando para o comando.  
Obrigatório: Sim

**`-l`**  
Especifica o rótulo da chave privada definida pelo usuário.  
Obrigatório: Sim

**`-f`**  
Especifica o nome do arquivo da chave a ser importada.  
Obrigatório: Sim

**`-w`**  
Especifica o identificador de chave da chave de encapsulamento. Esse parâmetro é obrigatório. Para encontrar os identificadores de chave, use o comando [**findKey**](key_mgmt_util-findKey.md).  
Para determinar se uma chave pode ser usada como uma chave de encapsulamento, use [**getAttribute**](key_mgmt_util-getAttribute.md) para obter o valor do atributo `OBJ_ATTR_WRAP` (262). Para criar uma chave de encapsulamento, use [**genSymKey**](key_mgmt_util-genSymKey.md) a fim de criar uma chave AES (digite 31).  
Se você usar o parâmetro `-wk` para especificar uma chave de desencapsulamento externa, a chave de encapsulamento `-w` será usada para encapsular, mas não para desencapsular, a chave durante a importação.  
Obrigatório: Sim

**`-sess`**  
Especifica a chave importada como uma chave de sessão.  
Padrão: a chave importada é mantida como uma chave persistente (token) no cluster.  
Obrigatório: não

**`-id`**  
Especifica o ID da chave a ser importada.  
Padrão: sem valor de ID.  
Obrigatório: não

**`-m_value`**  
Especifica o número de usuários que devem aprovar qualquer operação criptográfica que use a chave importada. Insira um valor de **0** a **8**.  
Esse parâmetro é válido somente quando o parâmetro `-u` no comando compartilha a chave com usuários o suficiente para atender ao requisito de `m_value`.  
Padrão: 0  
Obrigatório: não

**`-min_srv`**  
Especifica o número mínimo HSMs no qual a chave importada é sincronizada antes que o valor do `-timeout` parâmetro expire. Se a chave não for sincronizada com o número especificado de servidores na hora alocada, ela não será criada.  
AWS CloudHSM sincroniza automaticamente todas as chaves com cada HSM no cluster. Para acelerar seu processo, defina o valor de `min_srv` como menor que o número de HSMs no cluster e defina um valor de tempo limite baixo. No entanto, algumas solicitações talvez não gerem uma chave.  
Padrão: 1  
Obrigatório: não

**`-timeout`**  
Especifica o número de segundos de espera até que a chave seja sincronizada HSMs quando o `min-serv` parâmetro é incluído. Se nenhum número for especificado, a sondagem continuará para sempre.  
Padrão: sem limite  
Obrigatório: não

**`-u`**  
Especifica a lista de usuários com os quais compartilhar a chave privada importada. Esse parâmetro dá permissão a outros usuários de criptografia do HSM (CUs) para usar a chave importada em operações criptográficas.  
Insira uma lista separada por vírgulas de usuários do HSM IDs, como. `-u 5,6` Não inclua o ID do usuário atual do HSM. [Para encontrar o usuário IDs do HSM CUs no HSM, use ListUsers.](key_mgmt_util-listUsers.md)  
Padrão: somente o usuário atual pode utilizar a chave importada.  
Obrigatório: não

**`-wk`**  
Especifica a chave a ser usada para encapsular a chave que está sendo importada. Insira o caminho e o nome de um arquivo que contém uma chave AES de texto simples.  
Quando você inclui esse parâmetro, **importPrivateKey** usa a chave no arquivo `-wk` para encapsular a chave que está sendo importada. Ele também usa a chave especificada pelo parâmetro `-w` para desencapsulá-la.  
Padrão: use a chave de encapsulamento especificada no parâmetro `-w` para encapsular e desencapsular.  
Obrigatório: não

**`-attest`**  
Executa uma verificação de declaração na resposta do firmware para garantir que o firmware no qual o cluster é executado não tenha sido comprometido.  
Obrigatório: não

## Tópicos relacionados
<a name="importPrivateKey-seealso"></a>
+ [wrapKey](key_mgmt_util-wrapKey.md)
+ [unWrapKey](key_mgmt_util-unwrapKey.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [exportPrivateKey](key_mgmt_util-exportPrivateKey.md)