Principaux paramètres de synchronisation et de durabilité dans AWS CloudHSM - AWS CloudHSM

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.

Principaux paramètres de synchronisation et de durabilité dans AWS CloudHSM

Cette rubrique décrit les paramètres de synchronisation des clés AWS CloudHSM, les problèmes courants auxquels les clients sont confrontés lorsqu'ils utilisent des clés dans un cluster et les stratégies visant à rendre les clés plus durables.

Concepts

Clés de jetons

Clés persistantes que vous créez lors des opérations de génération, d'importation ou de déballage des clés. AWS CloudHSM synchronise les clés de jeton au sein d'un cluster.

Clés de session

Clés éphémères qui n'existent que sur un seul module de sécurité matériel (HSM) du cluster. AWS CloudHSM ne synchronise pas les clés de session au sein d'un cluster.

Synchronisation des clés côté client

Processus côté client qui clone les clés de jeton que vous créez lors des opérations de génération, d'importation ou de désencapsulage des clés. Vous pouvez rendre les clés à jeton plus durables en exécutant un cluster comportant au moins deux HSM.

Synchronisation des clés côté serveur

Clone régulièrement les clés de chaque HSM du cluster. Ne nécessite aucune gestion.

Paramètres de durabilité des clés du client

Paramètres que vous configurez sur le client qui ont un impact sur la durabilité des clés. Ces paramètres fonctionnent différemment dans le SDK client 5 et dans le SDK client 3.

  • Dans le SDK client 5, utilisez ce paramètre pour exécuter un seul cluster HSM.

  • Dans le SDK client 3, utilisez ce paramètre pour spécifier le nombre de HSM nécessaires à la réussite des opérations de création de clés.

Présentation de la synchronisation des clés

AWS CloudHSM utilise la synchronisation des clés pour cloner les clés de jeton sur tous les HSM d'un cluster. Vous créez des clés de jeton en tant que clés persistantes lors des opérations de génération, d'importation ou de désencapsulage de clés. Pour distribuer ces clés au sein du cluster, CloudHSM propose une synchronisation des clés côté client et côté serveur.

Key synchronization diagram showing client-side and server-side sync across CloudHSM cluster.

L'objectif de la synchronisation des clés, à la fois côté serveur et côté client, est de distribuer les nouvelles clés dans le cluster le plus rapidement possible après les avoir créées. Cela est important car les appels suivants que vous effectuez pour utiliser de nouvelles clés peuvent être routés vers n'importe quel HSM disponible dans le cluster. Si l'appel que vous effectuez est acheminé vers un HSM sans la clé, l'appel échoue. Vous pouvez atténuer ce type d'échec en spécifiant que vos applications réessayent les appels suivants effectués après les opérations de création de clés. Le temps nécessaire à la synchronisation peut varier en fonction de la charge de travail de votre cluster et des autres actifs incorporels. Utilisez CloudWatch des métriques pour déterminer le calendrier que votre application doit utiliser dans ce type de situation. Pour plus d'informations, consultez la section CloudWatch Métriques.

Le défi de la synchronisation des clés dans un environnement cloud réside dans la durabilité des clés. Vous créez des clés sur un seul HSM et vous commencez souvent à les utiliser immédiatement. Si le HSM sur lequel vous créez les clés tombe en panne avant que les clés n'aient été clonées sur un autre HSM du cluster, vous perdez les clés et l'accès à tout ce qui est chiffré par les clés. Pour atténuer ce risque, nous proposons une synchronisation côté client. La synchronisation côté client est un processus côté client qui clone les clés que vous créez lors des opérations de génération, d'importation ou de désencapsulage des clés. Le clonage des clés au fur et à mesure de leur création les rend plus durables. Bien entendu, vous ne pouvez pas cloner des clés dans un cluster avec un seul HSM. Pour améliorer la durabilité des clés, nous vous recommandons également de configurer votre cluster pour qu'il utilise au moins deux HSM. Grâce à la synchronisation côté client et à un cluster avec deux HSM, vous pouvez relever le défi de la durabilité des clés dans un environnement cloud.

Utilisation des paramètres de durabilité des clés du client

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. Les paramètres de durabilité des clés côté client 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 Concepts du SDK client 5.

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

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

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

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.

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

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

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

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. La synchronisation côté client 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. La synchronisation côté client s'efforce toujours de 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.

Configuration du fichier de configuration pour la durabilité de la clé client

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
  2. 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 plus d’informations, consultez KMU et synchronisation côté client.

Référence de configuration

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

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 :

Synchronisation des clés entre les clusters clonés

La synchronisation côté client et côté serveur sert uniquement à synchroniser les clés au sein d'un même cluster. Si vous copiez la sauvegarde d'un cluster vers une autre région, vous pouvez utiliser la commande syncKey du cloudhsm-mgmt_util (CMU) pour synchroniser les clés entre les clusters. Vous pouvez utiliser des clusters clonés pour assurer la redondance entre régions ou pour simplifier votre processus de reprise après sinistre. Pour plus d'informations, veuillez consulter syncKey.