

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Modifier AWS CloudHSM paramètres de durabilité des clés du client
<a name="working-client-sync"></a>

La synchronisation des clés est principalement un processus automatique, mais vous pouvez gérer les paramètres de durabilité des clés côté client. Client-side les paramètres de durabilité des clés fonctionnent différemment dans le SDK client 5 et le SDK client 3. 
+ Dans le SDK client 5, nous introduisons le concept de *quorums de disponibilité des clés*, qui vous oblige à exécuter des clusters avec un minimum de deux HSM. Vous pouvez utiliser les paramètres de durabilité des clés côté client pour vous soustraire à l'exigence des deux HSM. Pour plus d'informations sur les quorums, veuillez consulter [AWS CloudHSM concepts clés](concepts-key-sync.md).
+ Dans le SDK client 3, vous utilisez les paramètres de durabilité des clés côté client pour spécifier le nombre de HSM sur lesquels la création de clés doit réussir pour que l'opération globale soit considérée comme réussie. 

## Paramètres de durabilité des clés du SDK client 5
<a name="client-sync-sdk8"></a>

Dans le SDK client 5, la synchronisation des clés est un processus entièrement automatique. Avec un quorum de disponibilité des clés, les clés nouvellement créées doivent exister sur deux HSM du cluster pour que votre application puisse utiliser la clé. Pour utiliser un quorum de disponibilité des clés, votre cluster doit avoir au moins deux HSM.

Si la configuration de votre cluster ne répond pas aux principales exigences de durabilité, toute tentative de création ou d'utilisation d'une clé de jeton échouera avec le message d'erreur suivant dans les journaux :

```
Key {{<key handle>}} does not meet the availability requirements - The key must be available on at least 2 HSMs before being used.
```

Vous pouvez utiliser les paramètres de configuration du client pour désactiver le quorum de disponibilité des clés. Vous pouvez choisir de ne pas exécuter un cluster avec un seul HSM, par exemple. 

### Concepts du SDK client 5
<a name="client-sync-8concept"></a>

**Quorum de disponibilité des clés**  
AWS CloudHSM indique le nombre de HSM d'un cluster sur lesquels les clés doivent exister avant que votre application puisse les utiliser. Nécessite des clusters avec au moins deux HSM.

### Gestion des paramètres de durabilité des clés du client
<a name="setting-file-sdk8"></a>

Pour gérer les paramètres de durabilité des clés client, vous devez utiliser l'outil de configuration du SDK client 5. 

------
#### [ PKCS \#11 library ]

**Pour désactiver la durabilité de la clé du client pour le SDK client 5 sous Linux**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-pkcs11 --disable-key-availability-check
  ```

**Pour désactiver la durabilité de la clé client pour le SDK client 5 sous Windows**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --disable-key-availability-check
  ```

------
#### [ OpenSSL Dynamic Engine ]

**Pour désactiver la durabilité de la clé du client pour le SDK client 5 sous Linux**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-dyn --disable-key-availability-check
  ```

------
#### [ OpenSSL Dynamic Engine Provider ]

**Pour désactiver la durabilité de la clé du client pour le SDK client 5 sous Linux**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-openssl-provider --disable-key-availability-check
  ```

------
#### [ Key Storage Provider (KSP) ]

**Pour désactiver la durabilité de la clé client pour le SDK client 5 sous Windows**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" --disable-key-availability-check
  ```

------
#### [ JCE provider ]

**Pour désactiver la durabilité de la clé du client pour le SDK client 5 sous Linux**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-jce --disable-key-availability-check
  ```

**Pour désactiver la durabilité de la clé client pour le SDK client 5 sous Windows**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --disable-key-availability-check
  ```

------
#### [ CloudHSM CLI ]

**Pour désactiver la durabilité de la clé du client pour le SDK client 5 sous Linux**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli --disable-key-availability-check
  ```

**Pour désactiver la durabilité de la clé client pour le SDK client 5 sous Windows**
+  Utilisez l'outil de configuration pour désactiver les paramètres de durabilité de la clé du client. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --disable-key-availability-check
  ```

------

## Paramètres de durabilité des clés du SDK client 3
<a name="client-sync-sdk3"></a>

Dans le SDK client 3, la synchronisation des clés est principalement un processus automatique, mais vous pouvez utiliser les paramètres de durabilité des clés client pour améliorer la durabilité des clés. Vous spécifiez le nombre de HSM sur lesquels la création de clé doit réussir pour que l'opération globale soit considérée comme réussie. Client-side la synchronisation s'efforce toujours de cloner les clés de chaque HSM du cluster, quel que soit le paramètre que vous choisissez. Votre paramètre impose la création de clés selon le nombre de HSM que vous spécifiez. Si vous spécifiez une valeur et que le système ne peut pas répliquer la clé sur ce nombre de HSM, le système nettoie automatiquement tout contenu de clé indésirable et vous pouvez réessayer.

**Important**  
Si vous ne définissez pas les paramètres de durabilité des clés client (ou si vous utilisez la valeur par défaut de 1), vos clés risquent de se perdre. Si votre HSM actuel tombe en panne avant que le service côté serveur n'ait cloné cette clé sur un autre HSM, vous perdez le contenu de la clé. 

Pour optimiser la durabilité des clés, pensez à spécifier au moins deux HSM pour la synchronisation côté client. N'oubliez pas que quel que soit le nombre de HSM que vous spécifiez, la charge de travail de votre cluster reste la même. Client-side la synchronisation fait toujours de son mieux pour cloner les clés de chaque HSM du cluster. 

**Recommandations**
+ **Minimum** : deux HSM par cluster
+ **Maximum** : un de moins que le nombre total de HSM dans votre cluster

Si la synchronisation côté client échoue, le service client nettoie toutes les clés indésirables qui ont pu être créées et qui le sont désormais. Ce nettoyage est une solution au mieux qui ne fonctionne pas toujours. Si le nettoyage échoue, il se peut que vous deviez supprimer les éléments de clés indésirables. Pour de plus amples informations, veuillez consulter [Échecs de synchronisation des clés](ts-client-sync-fail.md).

### Configuration du fichier de configuration pour la durabilité de la clé client
<a name="setting-file"></a>

Pour définir les paramètres de durabilité de la clé client, vous devez modifier `cloudhsm_client.cfg`. 

**Pour modifier le fichier de configuration du client**

1. Ouvrir `cloudhsm_client.cfg`.

   **Linux :**

   ```
   /opt/cloudhsm/etc/cloudhsm_client.cfg
   ```

   **Windows:**

   ```
   C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
   ```

1. Dans le `client` nœud du fichier, ajoutez `create_object_minimum_nodes` et spécifiez une valeur pour le nombre minimum de HSM sur lesquels les clés AWS CloudHSM doivent être créées avec succès pour que les opérations de création de clés réussissent.

   ```
   "create_object_minimum_nodes" : 2
   ```
**Note**  
L'outil de ligne de commande key\_mgmt\_util (KMU) dispose d'un paramètre supplémentaire pour la durabilité des clés client. Pour de plus amples informations, consultez [KMU et synchronisation côté client](#kmu-sync).

#### Référence de configuration
<a name="client-side-ref"></a>

Voici les propriétés de synchronisation côté client, présentées dans un extrait du `cloudhsm_client.cfg` :

```
{
    "client": {
        "create_object_minimum_nodes" : 2,
        ...
    },
    
    ...
}
```

**create\_object\_minimum\_nodes**  
Spécifie le nombre minimum de HSM requis pour que les opérations de génération, d'importation ou de désencapsulage de clés soient considérées comme réussies. Si elle est défini, la valeur par défaut est 1. Cela signifie que pour chaque opération de création de clé, le service côté client tente de créer des clés sur chaque HSM du cluster, mais pour réussir, il suffit de créer une *seule clé* sur un HSM du cluster. 

### KMU et synchronisation côté client
<a name="kmu-sync"></a>

Si vous créez des clés à l'aide de l'outil de ligne de commande key\_mgmt\_util (KMU), vous utilisez un paramètre de ligne de commande facultatif (`-min_srv`) pour *limiter* le nombre de HSM sur lesquels cloner des clés. Si vous spécifiez le paramètre de ligne de commande *et* une valeur dans le fichier de configuration, respectez AWS CloudHSM la plus grande des deux valeurs.

 Pour plus d’informations, consultez les rubriques suivantes :
+ [gen DSAKeyPair](key_mgmt_util-genDSAKeyPair.md)
+ [gen ECCKeyPair](key_mgmt_util-genECCKeyPair.md)
+ [gen RSAKeyPair](key_mgmt_util-genRSAKeyPair.md)
+ [gen SymKey](key_mgmt_util-genSymKey.md)
+ [importation PrivateKey](key_mgmt_util-importPrivateKey.md)
+ [importation PubKey](key_mgmt_util-importPubKey.md)
+ [im SymKey](key_mgmt_util-imSymKey.md)
+ [insertMaskedObject](key_mgmt_util-insertMaskedObject.md)
+ [un WrapKey](key_mgmt_util-unwrapKey.md)