

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.

# Commencer avec AWS CloudHSM
<a name="getting-started"></a>

Les rubriques suivantes vous aident à créer, initialiser et activer un cluster dans AWS CloudHSM. Une fois que vous aurez suivi ces instructions, vous serez prêt à gérer des utilisateurs et des clusters, et à effectuer des opérations de chiffrement à l'aide des bibliothèques de logiciels incluses. Pour une expérience optimale, suivez les sujets dans l'ordre indiqué. 

**Topics**
+ [Créez des groupes administratifs IAM pour AWS CloudHSM](create-iam-user.md)
+ [Créez un cloud privé virtuel (VPC) pour AWS CloudHSM](create-vpc.md)
+ [Créez un cluster dans AWS CloudHSM](create-cluster.md)
+ [Passez en revue le groupe de sécurité de votre cluster dans AWS CloudHSM](configure-sg.md)
+ [Lancez une instance client Amazon EC2 pour interagir avec AWS CloudHSM](launch-client-instance.md)
+ [Configurer les groupes de sécurité des instances Amazon EC2 du client pour AWS CloudHSM](configure-sg-client-instance.md)
+ [Créez un HSM dans AWS CloudHSM](create-hsm.md)
+ [Vérifiez l'identité et l'authenticité du HSM de votre cluster dans AWS CloudHSM (facultatif)](verify-hsm-identity.md)
+ [Initialisez le cluster dans AWS CloudHSM](initialize-cluster.md)
+ [Installation et configuration de l'interface de ligne de commande CloudHSM CLI](gs_cloudhsm_cli-install.md)
+ [Activez le cluster dans AWS CloudHSM](activate-cluster.md)
+ [Configurer le protocole TLS mutuel entre le client et AWS CloudHSM (recommandé)](getting-started-setup-mtls.md)
+ [Création et utilisation de clés dans AWS CloudHSM](create-apps.md)

# Créez des groupes administratifs IAM pour AWS CloudHSM
<a name="create-iam-user"></a>

La première étape pour commencer AWS CloudHSM consiste à configurer les autorisations IAM.

Il est [recommandé](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users) de ne pas utiliser votre Utilisateur racine d'un compte AWS pour interagir avec AWS, y compris AWS CloudHSM. Utilisez plutôt Gestion des identités et des accès AWS (IAM) pour créer un utilisateur IAM, un rôle IAM ou un utilisateur fédéré. Suivez les étapes décrites dans la section [Création d'un utilisateur IAM et d'un groupe d'administrateurs IAM](#create-iam-admin) pour créer un groupe d'administrateurs et y associer la **AdministratorAccess**politique. Ensuite, créez un nouveau groupe d'administrateurs, puis ajoutez l'utilisateur au groupe. Si nécessaire, ajoutez des utilisateurs supplémentaires au groupe. Chaque utilisateur que vous ajoutez hérite de la **AdministratorAccess**politique du groupe. 

Une autre bonne pratique consiste à créer un groupe d' AWS CloudHSM administrateurs disposant uniquement des autorisations nécessaires pour s'exécuter AWS CloudHSM. Si nécessaire, ajoutez des utilisateurs individuels à ce groupe. Chaque utilisateur hérite des autorisations attachées au groupe plutôt que de l'accès complet à AWS . La [Politiques gérées par le client pour AWS CloudHSM](identity-access-management.md#permissions-for-cloudhsm) section qui suit contient la politique que vous devez associer à votre groupe AWS CloudHSM d'administrateurs. 

AWS CloudHSM définit un [rôle lié à un service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) pour votre AWS compte. Le rôle lié au service définit actuellement les autorisations qui permettent à votre compte de consigner AWS CloudHSM les événements. Le rôle peut être créé automatiquement par vous AWS CloudHSM ou manuellement. Vous ne pouvez pas modifier le rôle, mais vous pouvez le supprimer. Pour de plus amples informations, veuillez consulter [Rôles liés à un service pour AWS CloudHSM](service-linked-roles.md).

## Création d'un utilisateur IAM et d'un groupe d'administrateurs IAM
<a name="create-iam-admin"></a>

Commencez par créer un utilisateur IAM ainsi qu'un groupe d'administrateurs pour cet utilisateur.

### Inscrivez-vous pour un Compte AWS
<a name="sign-up-for-aws"></a>

Si vous n'en avez pas Compte AWS, procédez comme suit pour en créer un.

**Pour vous inscrire à un Compte AWS**

1. Ouvrez l'[https://portal.aws.amazon.com/billing/inscription.](https://portal.aws.amazon.com/billing/signup)

1. Suivez les instructions en ligne.

   Dans le cadre de la procédure d’inscription, vous recevrez un appel téléphonique ou un SMS et vous saisirez un code de vérification en utilisant le clavier numérique du téléphone.

   Lorsque vous vous inscrivez à un Compte AWS, un *Utilisateur racine d'un compte AWS*est créé. Par défaut, seul l’utilisateur racine a accès à l’ensemble des Services AWS et des ressources de ce compte. La meilleure pratique de sécurité consiste à attribuer un accès administratif à un utilisateur, et à utiliser uniquement l’utilisateur racine pour effectuer les [tâches nécessitant un accès utilisateur racine](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS vous envoie un e-mail de confirmation une fois le processus d'inscription terminé. À tout moment, vous pouvez consulter l'activité actuelle de votre compte et gérer votre compte en accédant à [https://aws.amazon.com/](https://aws.amazon.com/)et en choisissant **Mon compte**.

### Création d’un utilisateur doté d’un accès administratif
<a name="create-an-admin"></a>

Après vous être inscrit à un Compte AWS, sécurisez Utilisateur racine d'un compte AWS AWS IAM Identity Center, activez et créez un utilisateur administratif afin de ne pas utiliser l'utilisateur root pour les tâches quotidiennes.

**Sécurisez votre Utilisateur racine d'un compte AWS**

1.  Connectez-vous en [AWS Management Console](https://console.aws.amazon.com/)tant que propriétaire du compte en choisissant **Utilisateur root** et en saisissant votre adresse Compte AWS e-mail. Sur la page suivante, saisissez votre mot de passe.

   Pour obtenir de l’aide pour vous connecter en utilisant l’utilisateur racine, consultez [Connexion en tant qu’utilisateur racine](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) dans le *Guide de l’utilisateur Connexion à AWS *.

1. Activez l’authentification multifactorielle (MFA) pour votre utilisateur racine.

   Pour obtenir des instructions, voir [Activer un périphérique MFA virtuel pour votre utilisateur Compte AWS root (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) dans le guide de l'utilisateur *IAM*.

**Création d’un utilisateur doté d’un accès administratif**

1. Activez IAM Identity Center.

   Pour obtenir des instructions, consultez [Activation d’ AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) dans le *Guide de l’utilisateur AWS IAM Identity Center *.

1. Dans IAM Identity Center, octroyez un accès administratif à un utilisateur.

   Pour un didacticiel sur l'utilisation du Répertoire IAM Identity Center comme source d'identité, voir [Configurer l'accès utilisateur par défaut Répertoire IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) dans le *Guide de AWS IAM Identity Center l'utilisateur*.

**Connexion en tant qu’utilisateur doté d’un accès administratif**
+ Pour vous connecter avec votre utilisateur IAM Identity Center, utilisez l’URL de connexion qui a été envoyée à votre adresse e-mail lorsque vous avez créé l’utilisateur IAM Identity Center.

  Pour obtenir de l'aide pour vous connecter en utilisant un utilisateur d'IAM Identity Center, consultez la section [Connexion au portail AWS d'accès](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) dans le *guide de l'Connexion à AWS utilisateur*.

**Attribution d’un accès à d’autres utilisateurs**

1. Dans IAM Identity Center, créez un ensemble d’autorisations qui respecte la bonne pratique consistant à appliquer les autorisations de moindre privilège.

   Pour obtenir des instructions, consultez [Création d’un ensemble d’autorisations](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) dans le *Guide de l’utilisateur AWS IAM Identity Center *.

1. Attribuez des utilisateurs à un groupe, puis attribuez un accès par authentification unique au groupe.

   Pour obtenir des instructions, consultez [Ajout de groupes](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) dans le *Guide de l’utilisateur AWS IAM Identity Center *.

Pour des exemples de politiques AWS CloudHSM que vous pouvez associer à votre groupe d'utilisateurs IAM, voir[Gestion des identités et des accès pour AWS CloudHSM](identity-access-management.md).

# Créez un cloud privé virtuel (VPC) pour AWS CloudHSM
<a name="create-vpc"></a>

Vous avez besoin d'un cloud privé virtuel (VPC) pour votre cluster. AWS CloudHSM Si vous n'en avez pas déjà un, suivez les étapes décrites dans cette rubrique pour créer un VPC.

**Note**  
Le respect de ces étapes entraînera la création de sous-réseaux publics et privés.

**Pour créer un VPC**

1. Ouvrez la console Amazon VPC à l’adresse [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Dans la barre de navigation, utilisez le sélecteur de région pour choisir l'une des [AWS régions AWS CloudHSM actuellement prises en charge](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region).

1. Sélectionnez le bouton **Créer un VPC.**

1. Sous **Ressources à créer**, choisissez **VPC et plus encore**.

1. Pour **Génération automatique de balise de nom**, saisissez un nom identifiable tel que **CloudHSM**. 

1. Pour le **bloc IPv6 CIDR**, sélectionnez le bloc ** IPv6 CIDR fourni par Amazon afin d'utiliser la IPv6 connectivité pour vous HSMs et demandez d' AWS allouer un bloc** IPv6 CIDR à votre cluster. Ce paramètre prend en charge le type de réseau à double pile. Conservez le paramètre par défaut si vous n'avez pas besoin de IPv6 connectivité.

1. Conservez les valeurs par défaut de toutes les autres options.

1. Sélectionnez **Create VPC** (Créer un VPC).

1. Une fois le VPC créé, sélectionnez **Afficher le VPC** pour afficher le VPC que vous venez de créer.

# Créez un cluster dans AWS CloudHSM
<a name="create-cluster"></a>

Un cluster est un ensemble de modules de sécurité matériels individuels (HSMs). AWS CloudHSM synchronise les HSMs éléments de chaque cluster afin qu'ils fonctionnent comme une unité logique. AWS CloudHSM *propose deux types de HSMs : *hsm1.medium et hsm2m.medium*.* Lorsque vous créez un cluster, vous choisissez lequel des deux fera partie de votre cluster. Pour plus de détails sur les différences entre chaque type de HSM et chaque mode de cluster, consultez[AWS CloudHSM modes de cluster](cluster-hsm-types.md).

Lorsque vous créez un cluster, il AWS CloudHSM crée un groupe de sécurité pour le cluster en votre nom. Ce groupe de sécurité contrôle l'accès réseau au HSMs sein du cluster. Il autorise les connexions entrantes uniquement à partir d'instances Amazon Elastic Compute Cloud (Amazon EC2) appartenant au groupe de sécurité. Par défaut, le groupe de sécurité ne contient aucune instance. Par la suite, vous [lancez une instance client](launch-client-instance.md) et [configurez le groupe de sécurité du cluster](configure-sg.md) pour autoriser les communications et les connexions avec le HSM.

**Considérations**
+ Voici quelques points à prendre en compte lors de la création d'un cluster dans AWS CloudHSM :
  + Lorsque vous créez un cluster, il AWS CloudHSM crée un [rôle lié à un service nommé AWSService RoleForCloud HSM](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html). Si vous AWS CloudHSM ne pouvez pas créer le rôle ou s'il n'existe pas déjà, vous ne pourrez peut-être pas créer de cluster. Pour de plus amples informations, veuillez consulter [Résolution des échecs AWS CloudHSM de création de clusters](troubleshooting-create-cluster.md). Pour plus d'informations sur les rôles liés à un service, consultez [Rôles liés à un service pour AWS CloudHSM](service-linked-roles.md). 
  +  Si vous utilisez le point de [terminaison AWS CloudHSM à double pile](https://docs.aws.amazon.com/general/latest/gr/cloudhsm.html) (c'est-à-dire cloudhsmv2). *<region>*.api.aws), assurez-vous que vos politiques IAM sont mises à jour pour être gérées. IPv6 Pour plus d'informations, consultez la [IPv6 section Mettre à niveau les politiques IAM vers sous Sécurité](https://docs.aws.amazon.com/cloudhsm/latest/userguide/ip-access.html). 

Vous pouvez créer un cluster à partir de la [console AWS CloudHSM](https://console.aws.amazon.com/cloudhsm/), de l'[AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou de l'API AWS CloudHSM . 

Pour plus de détails sur les arguments du cluster APIs, voir [https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html)la référence des AWS CLI commandes.

------
#### [ Console ]

**Pour créer un cluster (console)**

1. Ouvrez la AWS CloudHSM console à la [https://console.aws.amazon.com/cloudhsm/maison](https://console.aws.amazon.com/cloudhsm/home).

1. Dans la barre de navigation, utilisez le sélecteur de région pour choisir une des [régions AWS où AWS CloudHSM est actuellement pris en charge](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region). 

1. Choisissez **Créer un cluster**.

1. Dans la section **Configuration de cluster**, effectuez les opérations suivantes :

   1. Pour **VPC**, sélectionnez le VPC que vous avez créé dans [Créez un cloud privé virtuel (VPC) pour AWS CloudHSM](create-vpc.md).

   1. Pour **Zone(s) de disponibilité**, en regard de chaque zone de disponibilité, choisissez le sous-réseau privé que vous avez créé. 
**Note**  
Même s'il n' AWS CloudHSM est pas pris en charge dans une zone de disponibilité donnée, les performances ne devraient pas être affectées, car les charges AWS CloudHSM sont automatiquement équilibrées sur HSMs l'ensemble du cluster. Voir [AWS CloudHSM Régions et points de terminaison](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region) dans le *Références générales AWS*pour voir la prise en charge des zones de disponibilité pour AWS CloudHSM.

   1. Pour le **type HSM**, sélectionnez le type HSM qui peut être créé dans votre cluster ainsi que le mode souhaité du cluster. Pour savoir quels types de HSM sont pris en charge dans chaque région, consultez le [calculateur de AWS CloudHSM prix](https://aws.amazon.com/cloudhsm/pricing/).
**Important**  
Une fois le cluster créé, le mode cluster ne peut pas être modifié. Pour plus d'informations sur le type et le mode adaptés à votre cas d'utilisation, consultez[AWS CloudHSM modes de cluster](cluster-hsm-types.md).

   1. Pour **Type de réseau**, choisissez les protocoles d'adresse IP pour accéder à votre HSMs. IPv4 limite la communication entre votre application et HSMs IPv4 uniquement. Il s’agit de l’option par défaut. La technologie Dual-Stack permet à la fois IPv4 de IPv6 communiquer. Pour utiliser la double pile, ajoutez les deux IPv4 et IPv6 CIDRs à vos configurations de VPC et de sous-réseau. Le type de réseau est difficile à modifier après la configuration initiale. Pour le modifier, créez une sauvegarde de votre cluster existant et restaurez un nouveau cluster avec le type de réseau souhaité. Pour plus d'informations, voir [Création de AWS CloudHSM clusters à partir de sauvegardes](https://docs.aws.amazon.com/cloudhsm/latest/userguide/create-cluster-from-backup.html) 

   1. Pour **Source du cluster**, indiquez si vous souhaitez créer un nouveau cluster ou en restaurer un à partir d'une sauvegarde existante.
      + Les sauvegardes de clusters en mode non-FIPS ne peuvent être utilisées que pour restaurer des clusters en mode non-FIPS.
      + Les sauvegardes de clusters en mode FIPS ne peuvent être utilisées que pour restaurer des clusters en mode FIPS.

1. Choisissez **Suivant**.

1. Spécifiez la durée pendant laquelle le service doit conserver les sauvegardes.

   1. Acceptez la période de conservation par défaut de 90 jours ou saisissez une nouvelle valeur comprise entre 7 et 379 jours. Le service supprimera automatiquement les sauvegardes de ce cluster plus anciennes que la valeur que vous spécifiez ici. Cette valeur peut être modifiée par la suite. Pour de plus amples informations, veuillez consulter [Configuration de la conservation des sauvegardes](manage-backup-retention.md).

1. Choisissez **Suivant**.

1. (Facultatif) Saisissez une clé de balise et une valeur de balise facultative. Pour ajouter plusieurs balises au cluster, sélectionnez **Ajouter une balise**.

1. Choisissez **Examiner**.

1. Vérifiez la configuration de votre cluster, puis choisissez **Create cluster (Créer un cluster)**.

Si vos tentatives de création d'un cluster échouent, cela peut être dû à des problèmes liés aux rôles AWS CloudHSM liés aux services. Pour obtenir de l'aide sur la résolution du problème, consultez [Résolution des échecs AWS CloudHSM de création de clusters](troubleshooting-create-cluster.md).

------
#### [ AWS CLI ]

**Pour créer un cluster ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ À partir d'une invite de commande, exécutez la commande **[create-cluster](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html)**. Spécifiez le type d'instance HSM, la période de conservation des sauvegardes et le sous-réseau IDs des sous-réseaux que vous prévoyez de créer. HSMs Utilisez le sous-réseau IDs des sous-réseaux privés que vous avez créés. Spécifiez un seul sous-réseau par zone de disponibilité. 

  ```
  $ aws cloudhsmv2 create-cluster --hsm-type hsm2m.medium \
                      --backup-retention-policy Type=DAYS,Value=<number of days> \
                      --subnet-ids <subnet ID> \
                      --mode <FIPS> \
                      --network-type <IPV4>
  
  {
      "Cluster": {
          "BackupPolicy": "DEFAULT",
          "BackupRetentionPolicy": {
              "Type": "DAYS",
              "Value": 90
           },
          "VpcId": "vpc-50ae0636",
          "SubnetMapping": {
              "us-west-2b": "subnet-49a1bc00",
              "us-west-2c": "subnet-6f950334",
              "us-west-2a": "subnet-fd54af9b"
          },
          "SecurityGroup": "sg-6cb2c216",
          "HsmType": "hsm2m.medium",
          "NetworkType": "IPV4",
          "Certificates": {},
          "State": "CREATE_IN_PROGRESS",
          "Hsms": [],
          "ClusterId": "cluster-igklspoyj5v",
          "ClusterMode": "FIPS",
          "CreateTimestamp": 1502423370.069
      }
  }
  ```
**Note**  
`ClusterMode`est un paramètre obligatoire pour tous les types de hsm à l'exception de hsm1.medium. `--mode`:  

  ```
  $ aws cloudhsmv2 create-cluster --hsm-type hsm2m.medium \
    				--backup-retention-policy Type=DAYS,Value=<number of days> \
    				--subnet-ids <subnet ID> \
  				--mode NON_FIPS
  ```

Si vos tentatives de création d'un cluster échouent, cela peut être dû à des problèmes liés aux rôles AWS CloudHSM liés aux services. Pour obtenir de l'aide sur la résolution du problème, consultez [Résolution des échecs AWS CloudHSM de création de clusters](troubleshooting-create-cluster.md).

------
#### [ AWS CloudHSM API ]

**Pour créer un cluster (AWS CloudHSM API)**
+ Envoyez une demande [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateCluster.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateCluster.html). Spécifiez le type d'instance HSM, la politique de conservation des sauvegardes et le sous-réseau IDs des sous-réseaux que vous souhaitez créer. HSMs Utilisez le sous-réseau IDs des sous-réseaux privés que vous avez créés. Spécifiez un seul sous-réseau par zone de disponibilité.

Si vos tentatives de création d'un cluster échouent, cela peut être dû à des problèmes liés aux rôles AWS CloudHSM liés aux services. Pour obtenir de l'aide sur la résolution du problème, consultez [Résolution des échecs AWS CloudHSM de création de clusters](troubleshooting-create-cluster.md).

------

# Passez en revue le groupe de sécurité de votre cluster dans AWS CloudHSM
<a name="configure-sg"></a>

 Lorsque vous créez un cluster ou que vous ajoutez un HSM à un cluster, AWS CloudHSM crée un groupe de sécurité portant le nom `cloudhsm-cluster-<clusterID>-sg` s'il n'en existe pas déjà un. Ce groupe de sécurité contient une règle TCP préconfigurée qui autorise les communications entrantes et sortantes au sein du groupe de sécurité du cluster sur les ports 2223-2225. Ce SG permet à vos instances EC2 d'utiliser votre VPC pour HSMs communiquer avec votre cluster. 

**Avertissement**  
 Ne supprimez pas et ne modifiez pas la règle TCP préconfigurée qui est renseignée dans le groupe de sécurité du cluster. Cette règle permet d'éviter les problèmes de connectivité et les accès non autorisés à votre HSMs. 
 Le groupe de sécurité du cluster empêche tout accès non autorisé à votre HSMs. Toute personne ayant accès aux instances du groupe de sécurité peut accéder à votre HSMs. La plupart des opérations nécessitent qu'un utilisateur se connecte au HSM. Cependant, il est possible de mettre à zéro HSMs sans authentification, ce qui détruit le matériel clé, les certificats et les autres données. Si cela se produit, les données créées ou modifiées après la dernière sauvegarde sont perdues et irrécupérables. Pour empêcher tout accès non autorisé, assurez-vous que seuls les administrateurs de confiance peuvent modifier ou accéder aux instances dans le groupe de sécurité par défaut.  
 Les clusters hsm2m.medium introduisent la fonctionnalité mTLS pour empêcher les utilisateurs non autorisés de se connecter au cluster. Les utilisateurs non autorisés auront besoin d'informations d'identification MTLS valides pour se connecter correctement au cluster avant de tenter la mise à zéro.

 À l'étape suivante, vous pouvez [lancer une instance Amazon EC2 et la connecter à votre instance](launch-client-instance.md) HSMs en [y associant le groupe de sécurité du cluster](configure-sg-client-instance.md).

# Lancez une instance client Amazon EC2 pour interagir avec AWS CloudHSM
<a name="launch-client-instance"></a>

 Pour interagir avec votre AWS CloudHSM cluster et vos instances HSM et les gérer, vous devez être en mesure de communiquer avec les interfaces réseau élastiques de vos HSM. La manière la plus simple de le faire est d'utiliser une instance EC2 dans le même VPC que votre cluster. Vous pouvez également utiliser les ressources AWS suivantes pour vous connecter à votre cluster : 
+ [Appairage de VPC Amazon](https://docs.aws.amazon.com/vpc/latest/peering/Welcome.html)
+ [Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html)
+ [Connexions VPN](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpn-connections.html)

**Note**  
Ce guide fournit un exemple simplifié de connexion d'une instance EC2 à votre AWS CloudHSM cluster. Pour connaître les meilleures pratiques en matière de configurations réseau sécurisées, reportez-vous à[Accès sécurisé à votre cluster](bp-cluster-management.md#bp-secure-access).

 La AWS CloudHSM documentation suppose généralement que vous utilisez une instance EC2 dans le même VPC et la même zone de disponibilité (AZ) dans lesquels vous créez votre cluster. 

**Pour créer une instance EC2**

1. Ouvrez le tableau de **bord EC2** à [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)l'adresse.

1. Sélectionnez **Démarrer l'instance**. Dans le menu déroulant, choisissez **Démarrer l’instance**.

1. Dans le champ **Nom**, entrez un nom pour votre instance EC2. 

1. Dans la section **Images d'application et de système d'exploitation (AMI)**, choisissez une Amazon Machine Image (AMI) qui correspond à une plate-forme prise en charge par CloudHSM. Pour de plus amples informations, consultez [AWS CloudHSM Plateformes prises en charge par le SDK client 5](client-supported-platforms.md).

1. Dans la section **Type d’instance**, sélectionnez un type d'instance.

1. Dans la section **Paire de clés**, utilisez une paire de clés existante ou sélectionnez **Créer une nouvelle paire de clés** et effectuez les étapes suivantes :

   1. Pour **Nom de paire de clés**, saisissez un nom pour la nouvelle paire de clés.

   1. Pour **Type de paire de clés**, choisissez un type de paire de clés.

   1. Pour **Format de fichier de clé privée**, sélectionnez le format de fichier de clé privée.

   1. Sélectionnez **Créer une paire de clés**.

   1. Téléchargez le fichier de clé privée et enregistrez-le.
**Important**  
C'est votre seule occasion d'enregistrer le fichier de clé privée. Téléchargez et stockez le fichier en lieu sûr. Vous fournissez le nom de votre paire de clés quand vous lancez une instance. De plus, vous devez fournir la clé privée correspondante chaque fois que vous vous connectez à l'instance, puis choisir la paire de clés que vous avez créé lors de la configuration.

1. Pour **Paramètres réseau**, sélectionnez **Modifier**.

1. Pour **VPC**, choisissez le VPC créé précédemment pour votre cluster.

1. Pour **Sous-réseau**, choisissez le sous-réseau public que vous avez créé pour le VPC.

1. Pour **Auto-assign Public IP** (Attribuer automatiquement l’adresse IP publique), choisissez **Enable** (Activer).

1. Pour **attribuer automatiquement une IPv6 adresse IP**, choisissez **Activer** pour utiliser la connectivité IPv6 avec vos clusters et le NetworkType Dual-Stack. Si vous activez cette option, mettez à jour les règles du groupe de sécurité, les tables de routage VPC et de sous-réseau de votre instance Amazon EC2, ainsi que le réseau ACLs pour autoriser le trafic IPv6 sortant de l'instance vers le. HSMs 

1. Choisissez **Select an existing security group**.

1. Dans **Groupes de sécurité communs**, sélectionnez le groupe de sécurité par défaut dans le menu déroulant.

1. Dans **Configurer le stockage**, utilisez les menus déroulants pour choisir une configuration de stockage.

1. Dans la fenêtre **Résumé**, sélectionnez **Démarrer l'instance**.
**Note**  
Cette étape lancera le processus de création de votre instance EC2.

Pour plus d'informations sur la création d'un client Linux Amazon EC2, consultez [Mise en route sur les instances Linux Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html). Pour plus d'informations sur la connexion au client en cours d'exécution, consultez les rubriques suivantes : 
+ [Connexion à votre instance Linux à l’aide de SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html)
+ [Connexion à votre instance Linux à partir de Windows à l’aide de PuTTY](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html)

 Le guide de l’utilisateur Amazon EC2 contient des instructions détaillées pour la configuration et l'utilisation de vos instances Amazon EC2. La liste suivante fournit une vue d'ensemble de la documentation disponible pour les clients sous Linux et Windows Amazon EC2 : 
+ Pour créer un client Amazon EC2 sous Linux, consultez [Mise en route avec les instances Amazon EC2 sous Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html).

  Pour plus d'informations sur la connexion au client en cours d'exécution, consultez les rubriques suivantes :
  + [Connexion à votre instance Linux à l'aide de SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html)
  + [Connexion à votre instance Linux à partir de Windows à l’aide de PuTTY](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html)
+  Pour créer un client Amazon EC2 sous Windows, consultez [Mise en route avec les instances Amazon EC2 sous Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html). Pour plus d'informations sur la connexion à votre client Windows, consultez [Connexion à votre instance Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows). 

**Note**  
 Votre instance EC2 peut exécuter toutes les AWS CLI commandes contenues dans ce guide. Si l' AWS CLI n'est pas installée, vous pouvez la télécharger à l'adresse [AWS Command Line Interface](https://aws.amazon.com/cli/). Si vous utilisez Windows, vous pouvez télécharger et exécuter un programme d'installation Windows 64 bits ou 32 bits. Si vous utilisez Linux ou macOS, vous pouvez installer l'interface de ligne de commande avec pip. 

# Configurer les groupes de sécurité des instances Amazon EC2 du client pour AWS CloudHSM
<a name="configure-sg-client-instance"></a>

Lorsque vous avez lancé une instance Amazon EC2 pour votre cluster dans AWS CloudHSM, vous l'avez associée à un groupe de sécurité Amazon VPC par défaut. Cette rubrique explique comment associer le groupe de sécurité du cluster avec l'instance EC2. Cette association permet au AWS CloudHSM client exécuté sur votre instance EC2 de communiquer avec vos HSM. Pour connecter votre instance EC2 à votre AWS CloudHSM cluster, vous devez configurer correctement le groupe de sécurité par défaut du VPC et associer le *groupe* de sécurité du cluster à l'instance.

Suivez les étapes ci-dessous pour effectuer les modifications de configuration.

**Topics**
+ [Étape 1. Modifier le groupe de sécurité par défaut](#configure-sg-client-instance-modify-default-security-group)
+ [Étape 2. Connectez l'instance Amazon EC2 au cluster AWS CloudHSM](#configure-sg-client-instance-connect-the-ec2-instance-to-the-HSM-cluster)

## Étape 1. Modifier le groupe de sécurité par défaut
<a name="configure-sg-client-instance-modify-default-security-group"></a>

Vous devez modifier le groupe de sécurité par défaut pour autoriser la connexion SSH ou RDP afin que vous puissiez télécharger et installer le logiciel client et interagir avec votre HSM.

**Pour modifier le groupe de sécurité par défaut**

1. Ouvrez le tableau de **bord EC2** à [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)l'adresse.

1. Sélectionnez **Instances (en cours d'exécution)**, puis cochez la case à côté de l'instance EC2 sur laquelle vous souhaitez installer le AWS CloudHSM client.

1. Dans l’onglet **Sécurité**, choisissez le groupe de sécurité intitulé **Par défaut**.

1. En haut de la page, choisissez **Actions**, puis **Modifier les règles entrantes**.

1. Sélectionnez **Ajouter une règle**.

1. Pour **Type**, effectuez l'une des actions suivantes :
   + Pour une instance Amazon EC2 sous Windows Server, choisissez **RDP**. Le port `3389` est automatiquement renseigné.
   + Pour une instance Amazon EC2 sous Linux, choisissez **SSH**. La plage de ports `22` est automatiquement renseignée.

1. Quelle que soit l'option, définissez **Source** sur **Mon IP** pour pouvoir communiquer avec votre instance Amazon EC2.
**Important**  
Ne spécifiez pas 0.0.0.0/0 comme plage CIDR pour éviter d'autoriser n’importe qui à accéder à votre instance.

1. Choisissez **Enregistrer**.

## Étape 2. Connectez l'instance Amazon EC2 au cluster AWS CloudHSM
<a name="configure-sg-client-instance-connect-the-ec2-instance-to-the-HSM-cluster"></a>

Vous devez associer le groupe de sécurité du cluster à l'instance EC2 afin que l'instance EC2 puisse communiquer avec HSMs votre cluster. Le groupe de sécurité du cluster contient une règle préconfigurée qui autorise la communication entrante sur les ports 2223-2225.

**Pour connecter l'instance EC2 au cluster AWS CloudHSM**

1. Ouvrez le tableau de **bord EC2** à [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)l'adresse.

1. Sélectionnez **Instances (en cours d'exécution)**, puis cochez la case correspondant à l'instance EC2 sur laquelle vous souhaitez installer le AWS CloudHSM client.

1. En haut de la page, choisissez **Actions**, **Sécurité**, puis **Modifier les groupes de sécurité**.

1. Sélectionnez le groupe de sécurité avec le nom de groupe qui correspond à l’ID de votre cluster, tel que `cloudhsm-cluster-<clusterID>-sg`.

1. Choisissez **Appliquer les groupes de sécurité**.

1. Cliquez sur **Enregistrer**.

**Note**  
 Vous pouvez attribuer un maximum de cinq groupes de sécurité à une instance Amazon EC2. Si vous avez atteint la limite maximale, vous devez modifier le groupe de sécurité par défaut de l'instance Amazon EC2 et le groupe de sécurité du cluster :  
Dans le groupe de sécurité par défaut, procédez comme suit :  
Ajoutez une règle entrante pour autoriser le trafic à l'aide du protocole TCP sur les ports `2223-2225` depuis le groupe de sécurité du cluster.
Dans le groupe de sécurité du cluster, procédez comme suit :  
Ajoutez une règle entrante pour autoriser le trafic à l'aide du protocole TCP sur les ports `2223-2225` depuis le groupe de sécurité par défaut.

# Créez un HSM dans AWS CloudHSM
<a name="create-hsm"></a>

 Après avoir créé un cluster dans AWS CloudHSM, vous pouvez créer un module de sécurité matériel (HSM). Toutefois, avant de pouvoir créer un HSM dans votre cluster, ce dernier ne doit pas être initialisé. Pour déterminer l'état du cluster, consultez la [page des clusters dans la AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/home), utilisez le AWS CLI pour exécuter la **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** commande ou envoyez une [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html)demande dans l' AWS CloudHSM API. Vous pouvez créer un HSM à partir de la [console AWS CloudHSM](https://console.aws.amazon.com/cloudhsm/), de l'[AWS CLI](https://aws.amazon.com/cli/) ou de l'API AWS CloudHSM . 

**Important**  
 Créez un seul HSM lorsque votre cluster est dans l'état non initialisé. 

------
#### [ Console ]

**Pour créer un HSM (console)**

1. Ouvrez la AWS CloudHSM console à la [https://console.aws.amazon.com/cloudhsm/maison](https://console.aws.amazon.com/cloudhsm/home).

1. Sélectionnez le bouton radio en regard de l'ID du cluster pour lequel vous souhaitez créer un HSM.

1. Sélectionnez **Actions**. Dans le menu déroulant, choisissez **Initialiser**.

1. Choisissez une zone de disponibilité (AZ) pour le HSM que vous créez.

1. Sélectionnez **Créer**.

Une fois que vous avez créé un cluster et le HSM, vous pouvez [vérifier l'identité du HSM](verify-hsm-identity.md) ou passer directement à [Initialiser le cluster](initialize-cluster.md).

------
#### [ AWS CLI ]

**Pour créer un HSM ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ À partir d'une invite de commande, exécutez la commande **[create-hsm](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-hsm.html)**. Spécifiez l'ID du cluster que vous avez créé précédemment et une zone de disponibilité pour le HSM. Spécifiez la zone de disponibilité dans le format suivant : `us-west-2a`, `us-west-2b`, etc.

  ```
  $ aws cloudhsmv2 create-hsm --cluster-id <cluster ID> --availability-zone <Availability Zone>
  
  {
      "Hsm": {
          "HsmId": "hsm-ted36yp5b2x",
          "EniIp": "10.0.1.12",
          "EniIpV6": "2600:113f:404:be09:310e:ed34:3412:f733",
          "AvailabilityZone": "us-west-2a",
          "ClusterId": "cluster-igklspoyj5v",
          "EniId": "eni-5d7ade72",
          "SubnetId": "subnet-fd54af9b",
          "State": "CREATE_IN_PROGRESS"
      }
  }
  ```

Une fois que vous avez créé un cluster et le HSM, vous pouvez [vérifier l'identité du HSM](verify-hsm-identity.md) ou passer directement à [Initialiser le cluster](initialize-cluster.md).

------
#### [ AWS CloudHSM API ]

**Pour créer un HSM (AWS CloudHSM API)**
+ Envoyez une demande [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html). Spécifiez l'ID du cluster que vous avez créé précédemment et une zone de disponibilité pour le HSM. 

Une fois que vous avez créé un cluster et le HSM, vous pouvez [vérifier l'identité du HSM](verify-hsm-identity.md) ou passer directement à [Initialiser le cluster](initialize-cluster.md).

------

# Vérifiez l'identité et l'authenticité du HSM de votre cluster dans AWS CloudHSM (facultatif)
<a name="verify-hsm-identity"></a>

Pour initialiser votre cluster AWS CloudHSM, vous signez une demande de signature de certificat (CSR) générée par le premier module de sécurité matériel (HSM) du cluster. Avant cela, il se peut que vous vouliez vérifier l'identité et l'authenticité du HSM. 

**Note**  
Cette procédure est facultative. Cependant, elle fonctionne uniquement jusqu'à ce qu'un cluster soit initialisé. Une fois le cluster initialisé, vous ne pouvez pas utiliser ce processus pour obtenir les certificats ou vérifier les HSMs.

Pour vérifier l'identité du premier HSM de votre cluster, effectuez les étapes suivantes :

1. [Obtenir les certificats et la demande CSR](#get-certificates) Au cours de cette étape, vous obtenez trois certificats et une demande CSR auprès du HSM. Vous obtenez également deux certificats racine, l'un du fabricant du matériel HSM AWS CloudHSM et l'autre du fabricant.

1. [Vérifier les chaînes de certificats](#verify-certificate-chains) : au cours de cette étape, vous créez deux chaînes de certificats, l'une vers le certificat AWS CloudHSM racine et l'autre vers le certificat racine du fabricant. Ensuite, vous vérifiez le certificat HSM à l'aide de ces chaînes de certificats pour le déterminer AWS CloudHSM et le fabricant du matériel atteste de l'identité et de l'authenticité du HSM.

1. [Comparer les clés publiques](#compare-public-keys) Au cours de cette étape, vous allez extraire et comparer les clés publiques incluses dans le certificat HSM et la demande CSR du cluster pour vérifier qu'elles sont identiques. Vous pourrez ainsi être certain que la demande CSR a été générée par un HSM authentique et de confiance.

Le schéma suivant montre la demande CSR, les certificats et les relations qui les unissent. La liste suivante définit chaque certificat.

![\[Certificats HSM et leurs relations.\]](http://docs.aws.amazon.com/fr_fr/cloudhsm/latest/userguide/images/hsm-certificate-relationships.png)


**AWS Certificat racine**  
C'est AWS CloudHSM le certificat racine. 

**Certificat racine du fabricant**  
Il s'agit du certificat racine du fabricant du matériel. 

**AWS Certificat de matériel**  
AWS CloudHSM a créé ce certificat lorsque le matériel HSM a été ajouté à la flotte. Ce certificat atteste que le matériel AWS CloudHSM est propriétaire.

**Certificat du fabricant du matériel**  
Le fabricant du matériel HSM a créé ce certificat lorsqu'il a fabriqué le matériel HSM. Ce certificat atteste que le fabricant a créé le matériel.

**Certificat HSM**  
Le certificat HSM est généré par le matériel validé FIPS lorsque vous créez le premier HSM du cluster. Ce certificat atteste que le matériel HSM a créé le HSM.

**CSR de cluster**  
Le premier HSM crée le cluster CSR. Lorsque vous vous [connectez au cluster CSR](initialize-cluster.md#sign-csr), vous demandez le cluster. Ensuite, vous pouvez utiliser la CSR signée pour [initialiser le cluster](initialize-cluster.md#initialize).

## Étape 1. Obtention des certificats auprès du HSM
<a name="get-certificates"></a>

Pour vérifier l'identité et l'authenticité de votre HSM, commencez par obtenir une demande de signature de certificat et cinq certificats. Vous obtenez trois des certificats du HSM, ce que vous pouvez faire avec la [AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/), le [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou l' AWS CloudHSM API.

------
#### [ Console ]

**Pour obtenir les certificats HSM et la demande de signature de certificat (console)**

1. Ouvrez la AWS CloudHSM console à la [https://console.aws.amazon.com/cloudhsm/maison](https://console.aws.amazon.com/cloudhsm/home).

1. Sélectionnez le bouton radio en regard de l'ID du cluster avec le HSM que vous souhaitez vérifier.

1. Sélectionnez **Actions**. Dans le menu déroulant, choisissez **Initialiser**.

1. Si vous n'avez pas effectué l'[étape précédente](create-hsm.md) pour créer un HSM, choisissez une zone de disponibilité (AZ) pour le HSM que vous créez. Sélectionnez ensuite **Créer**.

1. Lorsque les certificats et la demande de signature de certificat sont prêts, des liens de téléchargement s'affichent.  
![\[La page de demande de signature du certificat de téléchargement dans la AWS CloudHSM console.\]](http://docs.aws.amazon.com/fr_fr/cloudhsm/latest/userguide/images/download-csr-hsm-cert.png)

1. Cliquez sur chaque lien pour télécharger et enregistrer la demande de signature de certificat et les certificats. Pour simplifier les étapes ultérieures, enregistrez tous les fichiers dans le même répertoire et utilisez les noms de fichier par défaut. 

------
#### [ AWS CLI ]

**Pour obtenir la demande de signature de certificat et les certificats ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ À l'invite de commande, exécutez la commande **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** quatre fois, en extrayant la CSR et les différents certificats à chaque fois, et en les enregistrant dans des fichiers.

  1. Entrez la commande suivante pour extraire la CSR du cluster. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ClusterCsr' \
                                        > <cluster ID>_ClusterCsr.csr
     ```

  1. Entrez la commande suivante pour extraire le certificat HSM. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.HsmCertificate' \
                                        > <cluster ID>_HsmCertificate.crt
     ```

  1. Émettez la commande suivante pour extraire le certificat AWS matériel. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.AwsHardwareCertificate' \
                                        > <cluster ID>_AwsHardwareCertificate.crt
     ```

  1. Entrez la commande suivante pour extraire le certificat matériel du fabricant. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ManufacturerHardwareCertificate' \
                                        > <cluster ID>_ManufacturerHardwareCertificate.crt
     ```

------
#### [ AWS CloudHSM API ]

**Pour obtenir les certificats CSR et HSM (AWS CloudHSM API)**
+ Envoyez une demande [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html), puis extrayez ces éléments dans la réponse et enregistrez-les.

------

## Étape 2. Obtention des certificats racine
<a name="get-root-certificates"></a>

Procédez comme suit pour obtenir les certificats racines pour AWS CloudHSM et le fabricant. Enregistrez les fichiers du certificat racine dans le répertoire contenant les fichiers de certificat CSR et HSM.

**Pour obtenir les certificats racine AWS CloudHSM et ceux du fabricant**

1. Téléchargez le certificat AWS CloudHSM racine : [AWS\$1CloudHSM\$1Root-G1.zip](samples/AWS_CloudHSM_Root-G1.zip)

1. Téléchargez le certificat racine du fabricant adapté à votre type de HSM :
   + [Certificat racine du fabricant hsm1.medium : liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquid_security_certificate.zip)
   + [Certificat racine du fabricant hsm2m.medium : liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquidsecurity2_ar_v1.zip)
**Note**  
Pour télécharger chaque certificat depuis sa page d'accueil, utilisez les liens suivants :  
[Page de destination pour le certificat racine du fabricant de hsm1.medium](https://www.marvell.com/products/security-solutions/liquid-security-hsm-adapters-and-appliances/liquidsecurity-certificate.html)
[Page de destination pour le certificat racine du fabricant de hsm2m.medium](https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/liquidsecurity2-certificate-ls2-g-axxx-ar-f-bo-v1.html)
Vous devrez peut-être cliquer avec le bouton droit de la souris sur le lien **Télécharger le certificat**, puis choisir **Enregistrer le lien sous...** pour enregistrer le fichier de certificat.

1. Après avoir téléchargé le fichier, extrayez (décompressez) son contenu.

## Étape 3. Vérification des chaînes de certificat
<a name="verify-certificate-chains"></a>

Au cours de cette étape, vous créez deux chaînes de certificats, l'une vers le certificat AWS CloudHSM racine et l'autre vers le certificat racine du fabricant. Utilisez ensuite OpenSSL pour vérifier le certificat HSM par rapport à chaque chaîne de certificats.

Pour créer les chaînes de certificats, ouvrez un shell Linux. Vous avez besoin d'OpenSSL, qui est disponible dans la plupart des shells Linux, et vous avez besoin du [certificat racine](#get-root-certificates) et des [fichiers de certificat HSM](#get-certificates) que vous avez téléchargés. Cependant, vous n'en avez pas besoin AWS CLI pour cette étape, et le shell n'a pas besoin d'être associé à votre AWS compte.

**Pour vérifier le certificat HSM avec le certificat AWS CloudHSM racine**

1. Naviguez vers le répertoire où vous avez enregistré le [certificat racine](#get-root-certificates) et les [fichiers de certificats HSM](#get-certificates) que vous avez téléchargés. Les commandes suivantes supposent que tous les certificats sont dans le répertoire actuel et qu'ils utilisent les noms de fichier par défaut. 

   Utilisez la commande suivante pour créer une chaîne de certificats qui inclut le certificat AWS matériel et le certificat AWS CloudHSM racine, dans cet ordre. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment. 

   ```
   $ cat <cluster ID>_AwsHardwareCertificate.crt \
         AWS_CloudHSM_Root-G1.crt \
         > <cluster ID>_AWS_chain.crt
   ```

1. Utilisez la commande OpenSSL suivante pour vérifier le certificat HSM avec la chaîne de certificat AWS . *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

   ```
   $ openssl verify -CAfile <cluster ID>_AWS_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

**Pour vérifier le certificat HSM avec le certificat racine du fabricant**

1. Utilisez la commande suivante pour créer une chaîne de certificat qui inclut le certificat du matériel du fabricant, puis le certificat racine du fabricant. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

   ```
   $ cat <cluster ID>_ManufacturerHardwareCertificate.crt \
         liquid_security_certificate.crt \
         > <cluster ID>_manufacturer_chain.crt
   ```

1. Utilisez la commande OpenSSL suivante pour vérifier le certificat HSM avec la chaîne de certificat du fabricant. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez créé précédemment.

   ```
   $ openssl verify -CAfile <cluster ID>_manufacturer_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

## Étape 4 : Extraction et comparaison des clés publiques
<a name="compare-public-keys"></a>

Utilisez OpenSSL pour extraire et comparer les clés publiques incluses dans le certificat HSM et la demande de signature de certificat du cluster, et vérifier qu'elles sont identiques.

Pour comparer les clés publiques, utilisez votre shell Linux. Vous avez besoin d'OpenSSL, qui est disponible dans la plupart des shells Linux, mais vous n'en avez pas besoin AWS CLI pour cette étape. Il n'est pas nécessaire d'associer le shell à votre AWS compte.

**Pour extraire et comparer les clés publiques**

1. Utilisez la commande suivante pour extraire la clé publique du certificat HSM.

   ```
   $ openssl x509 -in <cluster ID>_HsmCertificate.crt -pubkey -noout > <cluster ID>_HsmCertificate.pub
   ```

1. Utilisez la commande suivante pour extraire la clé publique de la demande de signature de certificat du cluster.

   ```
   $ openssl req -in <cluster ID>_ClusterCsr.csr -pubkey -noout > <cluster ID>_ClusterCsr.pub
   ```

1. Utilisez la commande suivante pour comparer les clés publiques. Si les clés publiques sont identiques, la commande suivante ne donne aucun résultat.

   ```
   $ diff <cluster ID>_HsmCertificate.pub <cluster ID>_ClusterCsr.pub
   ```

Une fois que vous avez vérifié l'identité et l'authenticité du HSM, passez à [Initialiser le cluster](initialize-cluster.md).

# Initialisez le cluster dans AWS CloudHSM
<a name="initialize-cluster"></a>

Après avoir créé votre cluster et y avoir ajouté votre module de sécurité matériel (HSM) AWS CloudHSM, vous pouvez initialiser le cluster. Effectuez les étapes des rubriques suivantes pour initialiser votre cluster .

**Note**  
Avant d'initialiser le cluster, passez en revue le processus par lequel vous pouvez [vérifier l'identité et l'authenticité du HSMs](verify-hsm-identity.md). Ce processus est facultatif et fonctionne uniquement jusqu'à ce qu'un cluster soit initialisé. Une fois le cluster initialisé, vous ne pouvez pas utiliser ce processus pour obtenir vos certificats ou vérifier les HSMs. 

**Topics**
+ [Présentation de](#initialize-cluster-overview)
+ [Étape 1. Obtenir la CSR du cluster](#get-csr)
+ [Étape 2. Créez une clé privée pour votre autorité de certification racine](#sign-csr-create-key)
+ [Étape 3. Signez la CSR](#sign-csr)
+ [Étape 4 : Initialiser le cluster](#initialize)

## Présentation de
<a name="initialize-cluster-overview"></a>

 Le processus d'initialisation du cluster établit votre propriété et votre contrôle sur le cluster et sur vous HSMs grâce à un système d'authentification basé sur des certificats. Ce processus prouve cryptographiquement que vous êtes l'unique propriétaire du HSMs cluster et crée les bases de la confiance qui sera requise pour toutes les connexions futures avec votre HSMs cluster. 

 Cette page explique comment effectuer les opérations suivantes : 
+ Récupérez la demande de signature de certificat (CSR) de votre cluster.
+ Générez et utilisez la ou les clés privées pour créer un certificat racine auto-signé ou une chaîne de certificats.
+ Signez le CSR de votre cluster pour produire un certificat HSM signé.
+ Initialisez votre cluster à l'aide du certificat HSM signé et du certificat auto-signé ou de la chaîne de certificats.

Lorsque vous êtes prêt à commencer, consultez [Étape 1. Obtenir la CSR du cluster](#get-csr).

## Étape 1. Obtenir la CSR du cluster
<a name="get-csr"></a>

Avant de pouvoir initialiser le cluster, vous devez télécharger et signer une demande de signature de certificat (CSR) émise par le premier HSM du cluster. Si vous avez suivi la procédure de [vérification de l'identité du HSM de votre cluster](verify-hsm-identity.md), vous disposez déjà de la CSR et vous pouvez la signer. Sinon, obtenez le CSR maintenant en utilisant la [AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/), le [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou l' AWS CloudHSM API. 

------
#### [ Console ]

**Pour obtenir la demande de signature de certificat (console)**

1. Ouvrez la AWS CloudHSM console à la [https://console.aws.amazon.com/cloudhsm/maison](https://console.aws.amazon.com/cloudhsm/home).

1. Sélectionnez le bouton radio en regard de l'ID du cluster avec le HSM que vous souhaitez vérifier.

1. Sélectionnez **Actions**. Dans le menu déroulant, choisissez **Initialiser**.

1. Si vous n'avez pas effectué l'[étape précédente](create-hsm.md) pour créer un HSM, choisissez une zone de disponibilité (AZ) pour le HSM que vous créez. Sélectionnez ensuite **Créer**.

1. Lorsque la demande CSR est prête, un lien de téléchargement s'affiche.  
![\[Téléchargez la page de demande de signature de certificat dans la AWS CloudHSM console.\]](http://docs.aws.amazon.com/fr_fr/cloudhsm/latest/userguide/images/download-csr-hsm-cert.png)

1. Choisissez **Cluster CSR** pour télécharger et enregistrer cette demande.

------
#### [ AWS CLI ]

**Pour obtenir la demande de signature de certificat ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ À l'invite de commande, exécutez la commande **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** suivante, qui extrait la CSR et l'enregistre dans un fichier. *<cluster ID>*Remplacez-le par l'ID du cluster que vous avez [créé précédemment](create-cluster.md). 

  ```
  $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                     --output text \
                                     --query 'Clusters[].Certificates.ClusterCsr' \
                                     > <cluster ID>_ClusterCsr.csr
  ```

------
#### [ AWS CloudHSM API ]

**Pour obtenir le CSR (AWS CloudHSM API)**

1. Envoyez une demande [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html).

1. Extrayez la demande CSR de la réponse et enregistrez-la.

------

## Étape 2. Créez une clé privée pour votre autorité de certification racine
<a name="sign-csr-create-key"></a>

**Note**  
Pour un cluster de production, la clé doit être créée de manière sécurisée à l'aide d'une source fiable de caractère aléatoire. Nous vous recommandons d'utiliser un HSM hors site et hors ligne sécurisé, ou équivalent. Stockez la clé en toute sécurité. La clé établit l'identité du cluster et votre seul contrôle sur HSMs ce qu'il contient.  
Au cours de la phase de développement et de test, vous pouvez utiliser n'importe quel outil pratique (par exemple, OpenSSL) pour créer et signer le certificat de cluster. L'exemple suivant montre comment créer une clé. Une fois que vous avez utilisé la clé pour créer un certificat auto-signé (voir ci-dessous), vous devez la stocker en toute sécurité. Pour vous connecter à votre AWS CloudHSM instance, le certificat doit être présent, mais pas la clé privée.

Le tableau ci-dessous décrit les algorithmes, les tailles de clés et les courbes pris en charge pour la génération de certificats.


| Algorithmes | Taille/Courbes | 
| --- | --- | 
| **RSA 5. PKCSv1** |  2048, 3072, 4096  | 
| **RSA-PSS** |  2048, 3072, 4096  | 
| **ECDSA** |  prime256v1, secp384r1, secp521r1  | 
| **Digest** |  SHA-224, SHA-256, SHA-384 et SHA-512  | 

Utilisez l'exemple de commande suivant pour créer une clé privée pour votre autorité de certification racine autosignée.

```
$ openssl genrsa -aes256 -out customerRootCA.key 2048
Generating RSA private key, 2048 bit long modulus
........+++
............+++
e is 65537 (0x10001)
Enter pass phrase for customerRootCA.key:
Verifying - Enter pass phrase for customerRootCA.key:
```

## Étape 3. Signez la CSR
<a name="sign-csr"></a>

Au cours des étapes précédentes, vous avez récupéré le CSR de votre cluster et créé une clé privée pour votre autorité de certification racine. Au cours de cette étape, vous utiliserez votre clé privée pour générer un certificat de signature afin de signer le CSR de votre cluster. Les rubriques ci-dessous vous guideront tout au long du processus de création d'un certificat auto-signé unique, ou d'une chaîne de certificats, à l'aide d'OpenSSL. Vous n'en avez pas besoin AWS CLI pour cette étape, et le shell n'a pas besoin d'être associé à votre AWS compte. 

**Important**  
Pour initialiser votre cluster, votre point de confiance doit être conforme à la [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) et répondre aux exigences suivantes :   
Si vous utilisez les extensions X509v3, l'extension X509v3 Basic Constraints doit être présente.
Le point de confiance doit être un certificat auto-signé.
Les valeurs d'extension ne doivent pas entrer en conflit les unes avec les autres.

Choisissez l'une des approches suivantes pour signer le CSR de votre cluster :

### Choisissez votre approche en matière de certification
<a name="certificate-approach-choice"></a>

Vous devez choisir l'une des deux approches suivantes. Ne complétez pas les deux approches.

**Option A : certificat auto-signé unique**  
Créez un seul certificat racine auto-signé pour signer le CSR de votre cluster. Il s'agit de la méthode la plus simple et la plus directe pour établir la confiance.  
**Recommandé pour :**  
+ Environnements dans lesquels une PKI externe n'est pas requise
+ Environnements de test et de développement où la simplicité est privilégiée
Accédez à : [Création d'un certificat auto-signé unique](#self-signed-certificate)

**Option B : chaîne de certificats avec autorité de certification intermédiaire**  
Créez une chaîne de certificats à l'aide d'une autorité de certification intermédiaire. Une chaîne de certificats intermédiaire améliore la sécurité, l'évolutivité et la flexibilité en permettant aux autorités de certification racine (CAs) de rester hors ligne tout en déléguant l'émission des certificats à l'intermédiaire CAs, réduisant ainsi le risque de compromettre l'autorité de certification racine.  
**Recommandé pour :**  
+ Environnements dans lesquels une PKI externe est requise
+ Intégration avec l'autorité de certification privée (PCA) AWS
**Exemple d'intégration AWS PCA :** vous pouvez utiliser AWS une autorité de certification privée pour créer et gérer vos certificats CA intermédiaires. Cela permet de gérer automatiquement le cycle de vie des certificats, y compris le renouvellement et la révocation, tout en préservant les avantages en termes de sécurité liés au fait de maintenir votre autorité de certification racine hors ligne. Pour plus d'informations sur le AWS PCA, consultez le [guide de l'utilisateur de l'autorité de certification privée AWS](https://docs.aws.amazon.com/privateca/latest/userguide/PcaWelcome.html).  
Accédez à : [Création d'une chaîne d'autorités de certification intermédiaires (ICA)](#certificate-chain)

### Création d'un certificat auto-signé unique
<a name="self-signed-certificate"></a>

Le matériel de confiance que vous utilisez pour créer la clé privée pour votre cluster de production doit également fournir un logiciel pour générer un certificat auto-signé à l'aide de cette clé. L'exemple suivant utilise OpenSSL et la clé privée que vous avez créée à l'étape précédente pour créer un certificat de signature autosigné par l'autorité de certification racine. Le certificat est valable pendant 10 ans (3652 jours). Lisez les instructions à l'écran et suivez les invites. 

```
$ openssl req -new -x509 -days 3652 -key customerRootCA.key -out customerRootCA.crt
Enter pass phrase for customerRootCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

Cette commande crée un fichier de certificat nommé `customerRootCA.crt`. Placez ce certificat sur chaque hôte à partir duquel vous allez vous connecter à votre AWS CloudHSM cluster. Si vous accordez un autre nom au fichier ou le stocker dans un emplacement autre que la racine de votre hôte, vous devez modifier votre fichier de configuration client en conséquence. Utilisez le certificat et la clé privée que vous venez de créer pour signer la demande de signature du certificat (CSR) de cluster à l'étape suivante. 

#### Signez le CSR du cluster avec votre autorité de certification racine autosignée
<a name="sign-csr-sign-cluster-csr-with-root-ca"></a>

Le matériel approuvé que vous utilisez pour créer la clé privée pour votre cluster de production doit également fournir un logiciel pour signer la CSR à l'aide de cette clé. L'exemple suivant utilise OpenSSL pour signer la CSR du cluster. L'exemple de commande ci-dessous signe le CSR avec le code auto-signé `customerRootCA.crt`

```
$ openssl x509 -req -days 3652 -in <cluster ID>_ClusterCsr.csr \
		-CA <customerRootCA>.crt \
		-CAkey <customerRootCA>.key \
		-CAcreateserial \
		-out <cluster ID>_CustomerHsmCertificate.crt
Signature ok
subject=/C=US/ST=CA/O=Cavium/OU=N3FIPS/L=SanJose/CN=HSM:<HSM identifier>:PARTN:<partition number>, for FIPS mode
Getting CA Private Key
Enter pass phrase for <customerRootCA>.key:
```

Cette commande crée un fichier nommé `<cluster ID>_CustomerHsmCertificate.crt`. Utilisez ce fichier comme certificat signé lorsque vous initialiserez le cluster. 

Vérifiez le certificat signé par rapport à l'autorité de certification racine (facultatif) :

```
$ openssl verify -purpose sslserver -CAfile customerRootCA.crt <cluster ID>_CustomerHsmCertificate.crt
<cluster ID>_CustomerHsmCertificate.crt: OK
```

Après avoir produit le certificat HSM signé avec votre autorité de certification racine autosignée, rendez-vous sur. [Étape 4 : Initialiser le cluster](#initialize)

### Création d'une chaîne d'autorités de certification intermédiaires (ICA)
<a name="certificate-chain"></a>

Les exemples suivants vous expliqueront comment créer une chaîne de certificats de longueur 2, composée d'une autorité de certification (CA) racine et d'une autorité de certification intermédiaire. Vous allez d'abord créer un certificat d'autorité de certification racine auto-signé, puis générer un certificat d'autorité de certification intermédiaire signé par l'autorité de certification racine. Enfin, vous utiliserez l'autorité de certification intermédiaire pour signer le CSR de votre cluster, créant ainsi une chaîne de confiance complète depuis votre certificat HSM jusqu'à l'autorité de certification racine. Cette approche améliore la sécurité en maintenant l'autorité de certification racine hors ligne tout en utilisant l'autorité de certification intermédiaire pour les opérations de day-to-day certification.

**Important**  
Pour initialiser votre cluster avec une chaîne de certificats, celle-ci doit répondre aux exigences suivantes :   
La chaîne doit être ordonnée, en commençant par l'autorité de certification intermédiaire qui signe le CSR du cluster. Dans cet ordre, le premier ICA doit avoir un émetteur correspondant au sujet du prochain ICA de la chaîne, et ainsi de suite.
Seule l'autorité de certification racine doit être autosignée, ce qui signifie que son émetteur et son sujet doivent être identiques.
La chaîne ne doit pas comporter plus de 4 certificats (y compris l'autorité de certification racine à la fin), et la taille totale de la chaîne ne doit pas dépasser 16 ko (kilo-octets).
Toutes les autorités de certification (CAs) doivent se conformer aux directives de la [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280).

Cette section fournit des exemples de création d'une chaîne d'autorité de certification intermédiaire à l'aide de deux approches différentes : OpenSSL pour la génération de certificats locaux et AWS Private Certificate Authority (PCA) pour les services de certificats gérés. Choisissez l'approche la mieux adaptée à votre environnement et à vos exigences en matière de sécurité.

**Note**  
Les exemples suivants sont des cas d'utilisation généraux et sont tous deux simplifiés, en utilisant la configuration la plus élémentaire. Pour les environnements de production, passez en revue les options de configuration supplémentaires et les exigences de sécurité spécifiques à votre cas d'utilisation.

------
#### [ OpenSSL ]

Créez un fichier de configuration OpenSSL avec les extensions v3 courantes pour CA :

```
$ cat > ca-extensions.conf <<EOF
[req]
distinguished_name = req_distinguished_name
[req_distinguished_name]
C = Country Name (2 letter code)
ST = State or Province Name (full name)
L = Locality Name (eg, city)
O = Organization Name (eg, company)
OU = Organizational Unit Name (eg, section)
CN = Common Name (e.g. server FQDN or YOUR name)
[v3_ca]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer
basicConstraints = critical,CA:true
keyUsage = critical, keyCertSign, cRLSign, digitalSignature
EOF
```

Générez une autorité de certification racine autosignée à l'aide d'OpenSSL :

```
$ openssl req -new -x509 -days 3652 -key customerRootCA.key -out customerRootCA.crt -extensions v3_ca -config ca-extensions.conf
Enter pass phrase for customerRootCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

Générez une clé CA intermédiaire :

```
$ openssl genrsa -aes256 -out intermediateCA.key 2048
Generating RSA private key, 2048 bit long modulus
........+++
............+++
e is 65537 (0x10001)
Enter pass phrase for intermediateCA.key:
Verifying - Enter pass phrase for intermediateCA.key:
```

Créez la demande de signature de certificat CA intermédiaire (CSR) :

```
$ openssl req -new -key intermediateCA.key -out intermediateCA.csr
Enter pass phrase for intermediateCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

À l'aide de l'autorité de certification racine autosignée, créez le certificat de l'autorité de certification intermédiaire :

```
$ openssl x509 -req -in intermediateCA.csr \
		-CA customerRootCA.crt \
		-CAkey customerRootCA.key \
		-CAcreateserial \
		-days 3652 \
		-extensions v3_ca \
		-extfile ca-extensions.conf \
		-out intermediateCA.crt

Certificate request self-signature ok
subject=C= , ST= , L= , O= , OU=
```

Combinez les certificats dans un fichier de chaîne :

```
$ cat intermediateCA.crt customerRootCA.crt > chainCA.crt

-----BEGIN CERTIFICATE-----
[Intermediate CA]
-----END CERTIFICATE-----
...
...
-----BEGIN CERTIFICATE-----
[Root CA]
-----END CERTIFICATE-----
```

Signez le CSR du cluster avec votre CA intermédiaire :

```
$ openssl x509 -req -days 3652 -in <cluster ID>_ClusterCsr.csr \
			-CA intermediateCA.crt \
			-CAkey intermediateCA.key \
			-CAcreateserial \
			-out <cluster ID>_CustomerHsmCertificate.crt
Signature ok
subject=/C=US/ST=CA/O=Cavium/OU=N3FIPS/L=SanJose/CN=HSM:<HSM identifier>:PARTN:<partition number>, for FIPS mode
Getting CA Private Key
Enter pass phrase for intermediateCA.key:
```

------
#### [ AWS PCA ]

Créez et activez une autorité de certification racine à l'aide de l'autorité de certification privée AWS :

```
$ # 1. Create Root CA
aws acm-pca create-certificate-authority \
    --certificate-authority-configuration \
        "KeyAlgorithm=RSA_4096,
        SigningAlgorithm=SHA256WITHRSA,
        Subject={Country=US,Organization=MyOrg,OrganizationalUnit=IT,CommonName=RootCA}" \
    --certificate-authority-type ROOT

# Store the Root CA Authority ARN from the previous output
ROOT_CA_AUTHORITY_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<ca-authority-id>"

# 2. Generate Root CA CSR
aws acm-pca get-certificate-authority-csr \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --output text > customerRootCA.csr

# 3. Self-sign Root CA Certificate
aws acm-pca issue-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --csr fileb://customerRootCA.csr \
    --signing-algorithm SHA256WITHRSA \
	--template-arn arn:aws:acm-pca:::template/RootCACertificate/V1 \
    --validity Value=3652,Type=DAYS

# Store the Root CA certificate ARN from the previous output
ROOT_CA_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<ca-authority-id>/certificate/<cert-id>"

# 4. Retrieve the Root CA certificate
aws acm-pca get-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate-arn $ROOT_CA_ARN \
    --output text > customerRootCA.crt

# 5. Import the Root CA Certificate
aws acm-pca import-certificate-authority-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate fileb://customerRootCA.crt
```

Créez et activez une autorité de certification subordonnée (également appelée autorité de certification intermédiaire) :

```
$ # 6. Create Subordinate CA
aws acm-pca create-certificate-authority \
    --certificate-authority-configuration \
        "KeyAlgorithm=RSA_4096,
        SigningAlgorithm=SHA256WITHRSA,
        Subject={Country=US,Organization=MyOrg,OrganizationalUnit=IT,CommonName=SubordinateCA}" \
    --certificate-authority-type SUBORDINATE

# Store the Subordinate CA Authority ARN from the previous output
SUB_CA_AUTHORITY_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<sub-ca-authority-id>"

# 7. Generate Subordinate CA CSR
aws acm-pca get-certificate-authority-csr \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --output text > intermediateCA.csr

# 8. Issue Subordinate CA Certificate using Root CA
aws acm-pca issue-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --csr fileb://intermediateCA.csr \
    --signing-algorithm SHA256WITHRSA \
    --template-arn arn:aws:acm-pca:::template/SubordinateCACertificate_PathLen0/V1 \
    --validity Value=3651,Type=DAYS

# Store the Subordinate CA certificate ARN from the previous output
SUB_CA_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<sub-ca-authority-id>"

# 9. Retrieve Subordinate CA Certificate
aws acm-pca get-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate-arn $SUB_CA_ARN \
    --query 'Certificate' \
    --output text > intermediateCA.crt

# 10. Import the Subordinate CA Certificate
aws acm-pca import-certificate-authority-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --certificate fileb://intermediateCA.crt \
    --certificate-chain fileb://customerRootCA.crt
```

Combinez les certificats dans un fichier de chaîne :

```
$ cat intermediateCA.crt customerRootCA.crt > chainCA.crt

-----BEGIN CERTIFICATE-----
[Intermediate CA]
-----END CERTIFICATE-----
...
...
-----BEGIN CERTIFICATE-----
[Root CA]
-----END CERTIFICATE-----
```

Signez le CSR du cluster à l'aide d'AWS PCA :

```
$ aws acm-pca issue-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --csr fileb://<cluster ID>_ClusterCsr.csr \
    --signing-algorithm SHA256WITHRSA \
    --template-arn arn:aws:acm-pca:::template/EndEntityCertificate/V1 \
    --validity Value=3650,Type=DAYS

# Store your cluster's cert ARN from the previous output
CLUSTER_CERT_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<cluster-cert-arn>"
```

Téléchargez le certificat de cluster signé :

```
$ aws acm-pca get-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --certificate-arn $CLUSTER_CERT_ARN \
    --output text --query Certificate > <cluster ID>_CustomerHsmCertificate.crt
```

------

Cette commande crée un fichier nommé `<cluster ID>_CustomerHsmCertificate.crt`. Utilisez ce fichier comme certificat signé lorsque vous initialiserez le cluster. 

Vérifiez le certificat signé par rapport à la chaîne de certificats (facultatif) :

```
$ openssl verify -purpose sslserver -CAfile chainCA.crt <cluster ID>_CustomerHsmCertificate.crt
<cluster ID>_CustomerHsmCertificate.crt: OK
```

Après avoir produit le certificat HSM signé avec votre autorité de certification intermédiaire, rendez-vous sur. [Étape 4 : Initialiser le cluster](#initialize)

## Étape 4 : Initialiser le cluster
<a name="initialize"></a>

Utilisez votre certificat HSM signé et votre certificat de signature pour initialiser votre cluster. Vous pouvez utiliser la [AWS CloudHSM console [AWS CLI](https://aws.amazon.com/cli/)](https://console.aws.amazon.com/cloudhsm/), le ou l' AWS CloudHSM API. 

------
#### [ Console ]

**Pour initialiser un cluster (console)**

1. Ouvrez la AWS CloudHSM console à la [https://console.aws.amazon.com/cloudhsm/maison](https://console.aws.amazon.com/cloudhsm/home).

1. Sélectionnez le bouton radio en regard de l'ID du cluster avec le HSM que vous souhaitez vérifier.

1. Sélectionnez **Actions**. Dans le menu déroulant, choisissez **Initialiser**.

1. Si vous n'avez pas effectué l'[étape précédente](create-hsm.md) pour créer un HSM, choisissez une zone de disponibilité (AZ) pour le HSM que vous créez. Sélectionnez ensuite **Créer**.

1. Sur la page **Télécharger la demande de signature de certificat**, cliquez sur **Next**. Si l'option **Next** n'est pas disponible, vous devez d'abord choisir l'un des liens renvoyant à la demande CSR ou au certificat. Ensuite, sélectionnez **Suivant**.

1. Sur la page **Sign certificate signing request (CSR)**, cliquez sur **Next**.

1. Sur la page **Upload the certificates**, procédez comme suit :

   1. En regard de **Cluster certificate (Certificat de cluster)**, choisissez **Upload file (Charger le fichier)**. Ensuite, recherchez et sélectionnez le certificat HSM signé précédemment. Si vous avez suivi la procédure indiquée à la section précédente, sélectionnez le fichier `<cluster ID>_CustomerHsmCertificate.crt`.

   1. En regard de **Émission du certificat**, choisissez **Charger le fichier**. Sélectionnez ensuite votre certificat de signature en fonction de l'approche que vous avez choisie :
      + **Si vous avez choisi l'option A (certificat auto-signé unique) :** Sélectionnez le fichier nommé `<customerRootCA>.crt`
      + **Si vous avez choisi l'option B (chaîne de certificats) :** Sélectionnez le fichier nommé `<chainCA>.crt`

   1. Choisissez **Upload and initialize**.

------
#### [ AWS CLI ]

**Pour initialiser un cluster ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ À partir d'une invite de commande, exécutez la commande **[initialize-cluster](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/initialize-cluster.html)**. Fournissez les éléments suivants : 
  + ID du cluster que vous avez créé précédemment.
  + Certificat HSM que vous avez signé précédemment. Si vous avez suivi la procédure indiquée à la section précédente, il est enregistré dans le fichier `<cluster ID>_CustomerHsmCertificate.crt`. 
  + Votre certificat de signature basé sur l'approche que vous avez choisie :
    + **Si vous avez choisi l'option A (certificat auto-signé unique) :** utilisez le fichier nommé `<customerRootCA>.crt`
    + **Si vous avez choisi l'option B (chaîne de certificats) :** utilisez le fichier nommé `<chainCA>.crt`

  ```
  $ aws cloudhsmv2 initialize-cluster --cluster-id <cluster ID> \
                                      --signed-cert file://<cluster ID>_CustomerHsmCertificate.crt \
                                      --trust-anchor file://<customerRootCA.crt OR chainCA.crt>
  {
      "State": "INITIALIZE_IN_PROGRESS",
      "StateMessage": "Cluster is initializing. State will change to INITIALIZED upon completion."
  }
  ```

------
#### [ AWS CloudHSM API ]

**Pour initialiser un cluster (AWS CloudHSM API)**
+ Envoyez une demande [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_InitializeCluster.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_InitializeCluster.html) avec les éléments suivants :
  + ID du cluster que vous avez créé précédemment.
  + Certificat HSM que vous avez signé précédemment. Si vous avez suivi la procédure indiquée à la section précédente, il est enregistré dans le fichier `<cluster ID>_CustomerHsmCertificate.crt`. 
  + Votre certificat de signature basé sur l'approche que vous avez choisie :
    + **Si vous avez choisi l'option A (certificat auto-signé unique) :** utilisez le fichier nommé `<customerRootCA>.crt`
    + **Si vous avez choisi l'option B (chaîne de certificats) :** utilisez le fichier nommé `<chainCA>.crt`

------

# Installation et configuration de l'interface de ligne de commande CloudHSM CLI
<a name="gs_cloudhsm_cli-install"></a>

Pour interagir avec le HSM de votre AWS CloudHSM cluster, vous avez besoin de la CLI CloudHSM. 

Connectez-vous à votre instance cliente et exécutez les commandes suivantes pour télécharger et installer les outils de ligne de AWS CloudHSM commande. Pour de plus amples informations, veuillez consulter [Lancez une instance client Amazon EC2 pour interagir avec AWS CloudHSM](launch-client-instance.md).

------
#### [ Amazon Linux 2023 ]

Amazon Linux 2023 sur une architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-cli-latest.amzn2023.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.amzn2023.x86_64.rpm
```

Amazon Linux 2023 sur ARM64 l'architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-cli-latest.amzn2023.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.amzn2023.aarch64.rpm
```

------
#### [ Amazon Linux 2 ]

Amazon Linux 2 sur architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-cli-latest.el7.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el7.x86_64.rpm
```

Amazon Linux 2 sur ARM64 l'architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-cli-latest.el7.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el7.aarch64.rpm
```

------
#### [ RHEL 10 (10.0\$1) ]

RHEL 10 sur une architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL10/cloudhsm-cli-latest.el10.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el10.x86_64.rpm
```

RHEL 10 sur l' ARM64 architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL10/cloudhsm-cli-latest.el10.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el10.aarch64.rpm
```

------
#### [ RHEL 9 (9.2\$1) ]

RHEL 9 sur une architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-cli-latest.el9.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el9.x86_64.rpm
```

RHEL 9 sur l' ARM64 architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-cli-latest.el9.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el9.aarch64.rpm
```

------
#### [ RHEL 8 (8.3\$1) ]

RHEL 8 sur architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-cli-latest.el8.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el8.x86_64.rpm
```

RHEL 8 sur l' ARM64 architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-cli-latest.el8.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el8.aarch64.rpm
```

------
#### [ Ubuntu 24.04 LTS ]

Ubuntu 24.04 LTS sur une architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Noble/cloudhsm-cli_latest_u24.04_amd64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u24.04_amd64.deb
```

Ubuntu 24.04 LTS sur ARM64 l'architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Noble/cloudhsm-cli_latest_u24.04_arm64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u24.04_arm64.deb
```

------
#### [ Ubuntu 22.04 LTS ]

Ubuntu 22.04 LTS sur architecture x86\$164 :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-cli_latest_u22.04_amd64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u22.04_amd64.deb
```

Ubuntu 22.04 LTS sur ARM64 l'architecture :

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-cli_latest_u22.04_arm64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u22.04_arm64.deb
```

------
#### [ Windows Server 2022 ]

Pour Windows Server 2022 sur architecture x86\$164, ouvrez en PowerShell tant qu'administrateur et exécutez la commande suivante :

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------
#### [ Windows Server 2019 ]

Pour Windows Server 2019 sur une architecture x86\$164, ouvrez PowerShell en tant qu'administrateur et exécutez la commande suivante :

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------
#### [ Windows Server 2016 ]

Pour Windows Server 2016 sur une architecture x86\$164, ouvrez PowerShell en tant qu'administrateur et exécutez la commande suivante :

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------

Utilisez les commandes suivantes pour configurer CloudHSM CLI.

**Pour démarrer une EC2 instance Linux pour le SDK client 5**
+  Utilisez l'outil de configuration pour spécifier l'adresse IP du ou des HSM de votre cluster. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```

**Pour démarrer une EC2 instance Windows pour le SDK client 5**
+  Utilisez l'outil de configuration pour spécifier l'adresse IP du ou des HSM de votre cluster. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```

# Activez le cluster dans AWS CloudHSM
<a name="activate-cluster"></a>

Lorsque vous activez un AWS CloudHSM cluster, son état passe d'initialisé à actif. Vous pouvez ensuite [gérer les utilisateurs du HSM](manage-hsm-users.md) et [utiliser le HSM](use-hsm.md). 

**Important**  
Avant de pouvoir activer le cluster, vous devez d'abord copier le certificat émetteur vers l'emplacement par défaut de la plateforme sur chaque EC2 instance qui se connecte au cluster (vous créez le certificat émetteur lorsque vous initialisez le cluster). Utilisez le fichier de certificat approprié en fonction de l'approche que vous avez choisie lors de l'initialisation du cluster :  
**Si vous avez choisi l'option A (certificat auto-signé unique) : Copier** `customerRootCA.crt`
**Si vous avez choisi l'option B (chaîne de certificats) :** Copier `chainCA.crt`
**Emplacement Linux :**  

```
/opt/cloudhsm/etc/<customerRootCA.crt OR chainCA.crt>
```
**Emplacement de Windows :**  

```
C:\ProgramData\Amazon\CloudHSM\<customerRootCA.crt OR chainCA.crt>
```
Après avoir copié le fichier de certificat, `/opt/cloudhsm/etc/cloudhsm-cli.cfg` modifiez-le pour vous assurer que le nom du fichier de certificat correspond au nom du certificat CA que vous avez copié.

Après avoir placé le certificat émetteur, installez la CLI CloudHSM et exécutez la commande [**cluster activate**](cloudhsm_cli-cluster-activate.md) sur votre premier HSM. Vous remarquerez que le compte administrateur du premier HSM de votre cluster possède le rôle [unactivated-admin](understanding-users.md). Il s'agit d'un rôle temporaire qui n'existe qu'avant l'activation du cluster. Lorsque vous activez votre cluster, le rôle unactivated-admin bascule sur admin

**Pour activer un cluster**

1. Connectez-vous à l'instance client que vous avez lancée précédemment. Pour de plus amples informations, veuillez consulter [Lancez une instance client Amazon EC2 pour interagir avec AWS CloudHSM](launch-client-instance.md). Vous pouvez démarrer une instance Linux ou un serveur Windows Server. 

1. Exécutez la CLI CloudHSM en mode interactif.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. (Facultatif) Utilisez la commande **user list** pour afficher les utilisateurs existants.

   ```
   aws-cloudhsm > user list
   {
     "error_code": 0,
     "data": {
       "users": [
         {
           "username": "admin",
           "role": "unactivated-admin",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         },
         {
           "username": "app_user",
           "role": "internal(APPLIANCE_USER)",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         }
       ]
     }
   }
   ```

1. Utilisez la commande **cluster activate** pour définir le mot de passe administrateur d’origine.

   ```
   aws-cloudhsm > cluster activate
   Enter password:<NewPassword>
   Confirm password:<NewPassword>
   {
     "error_code": 0,
     "data": "Cluster activation successful"
   }
   ```

   Nous vous recommandons d'enregistrer le nouveau mot de passe dans une feuille de calcul réservée à cet effet. Ne perdez pas celle-ci. Nous vous recommandons d'imprimer une copie de la feuille des mots de passe, de l'utiliser pour enregistrer vos mots de passe HSM critiques et de la stocker dans un endroit sûr. Nous vous conseillons également de conserver une copie de cette feuille dans un espace de stockage sécurisé hors site. 

1. (Facultatif) Utilisez la commande **user list** pour vérifier que le type de l'utilisateur est désormais [administrateur/responsable du chiffrement (CO)](understanding-users-cmu.md#crypto-officer). 

   ```
   aws-cloudhsm > user list
   {
     "error_code": 0,
     "data": {
       "users": [
         {
           "username": "admin",
           "role": "admin",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         },
          {
           "username": "app_user",
           "role": "internal(APPLIANCE_USER)",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         }
       ]
     }
   }
   ```

1. Utilisez la commande **quit** pour fermer l'outil de la CLI CloudHSM.

   ```
   aws-cloudhsm > quit
   ```

Pour plus d'informations sur l'utilisation de la CLI CloudHSM ou de l’utilitaire CMU, consultez les sections [Comprendre les utilisateurs HSM](understanding-users.md) et [Comprendre la gestion des utilisateurs HSM avec l’utilitaire CMU](understand-users.md).

# Configurer le protocole TLS mutuel entre le client et AWS CloudHSM (recommandé)
<a name="getting-started-setup-mtls"></a>

Les rubriques suivantes décrivent les étapes que vous devez suivre pour activer la sécurité mutuelle de la couche de transport (MTL) entre le client et AWS CloudHSM.

**Considérations**
+ Actuellement, cette fonctionnalité est exclusivement disponible sur hsm2m.medium. Pour plus d'informations sur le type HSM, consultez[AWS CloudHSM modes de cluster](cluster-hsm-types.md).
+ Le protocole MTL n'est pas pris en charge pour les AWS CloudHSM principaux magasins utilisés avec AWS Key Management Service.

**Topics**
+ [Étape 1. Créez et enregistrez une ancre de confiance sur le HSM](#setup-mtls-create-and-register-trust-anchor)
+ [Étape 2. Activez les MTL pour AWS CloudHSM](#getting-start-setup-mtl-sdk)
+ [Étape 3. Définissez l'application des MTL pour AWS CloudHSM](#getting-start-setup-mtls-enforcement)

## Étape 1. Créez et enregistrez une ancre de confiance sur le HSM
<a name="setup-mtls-create-and-register-trust-anchor"></a>

Une ancre de confiance doit être créée et enregistrée sur le HSM avant d'activer les MTL. Il s'agit d'un processus en deux étapes : 

**Topics**
+ [Création d'une clé privée et d'un certificat racine auto-signé](#setup-mtls-create-trust-anchor)
+ [Enregistrez l'ancre de confiance sur le HSM](#setup-mtls-register-trust-anchor)

### Création d'une clé privée et d'un certificat racine auto-signé
<a name="setup-mtls-create-trust-anchor"></a>

**Note**  
Pour un cluster de production, la clé doit être créée de manière sécurisée à l'aide d'une source fiable de caractère aléatoire. Nous vous recommandons d'utiliser un HSM hors site et hors ligne sécurisé, ou équivalent. Stockez la clé en toute sécurité.  
Pour le développement et les tests, vous pouvez utiliser n'importe quel outil pratique (tel qu'OpenSSL) pour créer la clé et signer vous-même un certificat racine. Vous aurez besoin de la clé et du certificat racine pour signer le certificat client dans le cadre de l'[activation des mTLs pour AWS CloudHSM](#getting-start-setup-mtl-sdk).

Les exemples suivants montrent comment créer une clé privée et un certificat racine auto-signé avec [OpenSSL](https://www.openssl.org/). 

**Example — Créer une clé privée à l'aide d'OpenSSL**  
Utilisez la commande suivante pour créer une clé RSA de 4096 bits chiffrée avec l'algorithme AES-256. Pour utiliser cet exemple, *<mtls\$1ca\$1root\$11.key>* remplacez-le par le nom du fichier dans lequel vous souhaitez stocker la clé.  

```
$ openssl genrsa -out <mtls_ca_root_1.key> -aes256 4096
Generating RSA private key, 4096 bit long modulus
.....................................+++
.+++
e is 65537 (0x10001)
Enter pass phrase for mtls_ca_root_1.key:
Verifying - Enter pass phrase for mtls_ca_root_1.key:
```

**Example — Créez un certificat racine auto-signé avec OpenSSL**  
Utilisez la commande suivante pour créer un certificat racine autosigné nommé `mtls_ca_root_1.crt` à partir de la clé privée que vous venez de créer. Le certificat est valide pendant 25 ans (9130 jours). Lisez les instructions à l'écran et suivez les invites.   

```
$ openssl req -new -x509 -days 9130 -key mtls_ca_root_1.key -out mtls_ca_root_1.crt
Enter pass phrase for mtls_ca_root_1.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

### Enregistrez l'ancre de confiance sur le HSM
<a name="setup-mtls-register-trust-anchor"></a>

Après avoir créé un certificat racine auto-signé, l'administrateur doit l'enregistrer comme point d'ancrage de confiance auprès du AWS CloudHSM cluster.

**Pour enregistrer une ancre de confiance auprès du HSM**

1. Utilisez la commande suivante pour démarrer la CLI CloudHSM.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. À l'aide de la CLI CloudHSM, connectez-vous en tant qu'administrateur.

   ```
   aws-cloudhsm > login --username <admin> --role admin
   Enter password:
   {
     "error_code": 0,
     "data": {
       "username": "<admin>",
       "role": "admin"
     }
   }
   ```

1. Utilisez la ** [Enregistrer une ancre de confiance avec la CLI CloudHSM](cloudhsm_cli-cluster-mtls-register-trust-anchor.md) ** commande pour enregistrer l'ancre de confiance. Pour plus d'informations, consultez l'exemple suivant ou utilisez la commande **help cluster mtls register-trust-anchor**.

**Example — Enregistrez une ancre de confiance auprès AWS CloudHSM du cluster**  
L'exemple suivant montre comment utiliser la **cluster mtls register-trust-anchor** commande dans la CLI CloudHSM pour enregistrer une ancre de confiance sur le HSM. Pour utiliser cette commande, l’administrateur doit être connecté au HSM. Remplacez les valeurs suivantes par les vôtres :  

```
aws-cloudhsm > cluster mtls register-trust-anchor --path </path/mtls_ca_root_1.crt>
{
  "error_code": 0,
  "data": {
    "trust_anchor": {
      "certificate-reference": "0x01",
      "certificate": "<PEM Encoded Certificate>",
      "cluster-coverage": "full"
    }
  }
}
```
AWS CloudHSM prend en charge l'enregistrement des certificats intermédiaires en tant qu'ancre de confiance. Dans de tels cas, l'intégralité du fichier de chaîne de certificats codé PEM doit être enregistré sur le HSM, les certificats étant classés par ordre hiérarchique.   
 AWS CloudHSM prend en charge une chaîne de certificats de 6980 octets.
Après avoir enregistré avec succès l'ancre de confiance, vous pouvez exécuter la **cluster mtls list-trust-anchors** commande pour vérifier les ancres de confiance actuellement enregistrées, comme indiqué ci-dessous :  

```
aws-cloudhsm > cluster mtls list-trust-anchors
{
  "error_code": 0,
  "data": {
    "trust_anchors": [
      {
        "certificate-reference": "0x01",
        "certificate": "<PEM Encoded Certificate>",
        "cluster-coverage": "full"
      }
    ]
  }
}
```
 Le nombre maximum d'ancres de confiance pouvant être enregistrées sur hsm2m.medium est de deux (2).

## Étape 2. Activez les MTL pour AWS CloudHSM
<a name="getting-start-setup-mtl-sdk"></a>

Pour activer les mTL pour AWS CloudHSM, vous devez créer une clé privée et un certificat client signés par le certificat racine que nous avons généré dans [Créer et enregistrer une ancre de confiance sur le HSM](#setup-mtls-create-and-register-trust-anchor), puis utiliser l'un des outils de configuration du SDK client 5 pour configurer le chemin de la clé privée et le chemin de la chaîne de certificats client. 

**Topics**
+ [Création d'une clé privée et d'une chaîne de certificats client](#create-client-ssl)
+ [Configuration de mTLS pour le SDK client 5](#enable-ssl-5)

### Création d'une clé privée et d'une chaîne de certificats client
<a name="create-client-ssl"></a>

**Example — Créer une clé privée à l'aide d'OpenSSL**  
Utilisez la commande suivante pour créer une clé RSA de 4096 bits. Pour utiliser cet exemple, *<ssl-client.key>* remplacez-le par le nom du fichier dans lequel vous souhaitez stocker la clé.  

```
$ openssl genrsa -out <ssl-client.key> 4096
Generating RSA private key, 4096 bit long modulus
.....................................+++
.+++
e is 65537 (0x10001)
```

**Example — Génère une demande de signature de certificat (CSR) avec OpenSSL**  
Utilisez la commande suivante pour générer une demande de signature de certificat (CSR) à partir de la clé privée que vous venez de créer. Lisez les instructions à l'écran et suivez les invites.  

```
$ openssl req -new -key <ssl-client.key> -out <ssl-client.csr>
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

**Example — Signez le CSR avec le certificat racine**  
Utilisez la commande suivante pour signer le CSR avec le certificat racine que nous avons créé et enregistré dans [Create, enregistrez une ancre de confiance sur le HSM](#setup-mtls-create-and-register-trust-anchor) et créez un certificat client nommé`ssl-client.crt`. Le certificat est valide pendant 5 ans (1826 jours).   

```
$ openssl x509 -req -days 1826 -in <ssl-client.csr> -CA <mtls_ca_root_1.crt> -CAkey <mtls_ca_root_1.key> -CAcreateserial -out <ssl-client.crt>
```

**Example — Crée une chaîne de certificats clients**  
Utilisez la commande suivante pour combiner le certificat client et le certificat racine que nous avons créés et enregistrés dans [Créer, enregistrer une ancre de confiance sur le HSM](#setup-mtls-create-and-register-trust-anchor) et créer une chaîne de certificats client nommée`ssl-client.pem`, qui sera utilisée pour la configuration à l'étape suivante.  

```
$ cat <ssl-client.crt> <mtls_ca_root_1.crt> > <ssl-client.pem>
```
 Si vous avez enregistré des certificats intermédiaires dans [Create et que vous enregistrez une ancre de confiance sur le HSM](#setup-mtls-create-and-register-trust-anchor) en tant qu'ancre de confiance, assurez-vous de combiner le certificat client avec l'ensemble de la chaîne de certificats pour créer une chaîne de certificats client.

### Configuration de mTLS pour le SDK client 5
<a name="enable-ssl-5"></a>

Utilisez l'un des outils de configuration du SDK client 5 pour activer le protocole TLS mutuel en fournissant le bon chemin de clé client et le chemin de chaîne de certificats client appropriés. Pour plus d'informations sur l'outil de configuration pour le SDK client 5, consultez[AWS CloudHSM Outil de configuration du SDK client 5](configure-sdk-5.md).

------
#### [ PKCS \$111 library ]

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Linux**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   $ sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Utilisez l'outil de configuration pour spécifier `ssl-client.pem` et `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-pkcs11 \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Windows**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  À l'aide d'un PowerShell interpréteur, utilisez l'outil de configuration pour spécifier `ssl-client.pem` et`ssl-client.key`.

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

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

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Linux**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Utilisez l'outil de configuration pour spécifier `ssl-client.pem` et `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-dyn \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

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

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Windows**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  À l'aide d'un PowerShell interpréteur, utilisez l'outil de configuration pour spécifier `ssl-client.pem` et`ssl-client.key`.

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

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

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Linux**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Utilisez l'outil de configuration pour spécifier `ssl-client.pem` et `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-jce \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Windows**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  À l'aide d'un PowerShell interpréteur, utilisez l'outil de configuration pour spécifier `ssl-client.pem` et`ssl-client.key`.

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

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

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Linux**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Utilisez l'outil de configuration pour spécifier `ssl-client.pem` et `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-cli \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Pour utiliser un certificat et une clé personnalisés pour l'authentification mutuelle TLS Client-HSM avec le SDK client 5 sous Windows**

1. Copiez votre clé et votre certificat dans le répertoire approprié.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  À l'aide d'un PowerShell interpréteur, utilisez l'outil de configuration pour spécifier `ssl-client.pem` et`ssl-client.key`.

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

------

## Étape 3. Définissez l'application des MTL pour AWS CloudHSM
<a name="getting-start-setup-mtls-enforcement"></a>

Après la configuration avec l'un des outils de configuration du SDK client 5, la connexion entre le client et le client AWS CloudHSM sera un TLS mutuel dans le cluster. Cependant, la suppression du chemin de clé privée et du chemin de la chaîne de certificats client du fichier de configuration transformera à nouveau la connexion en TLS normal. Vous pouvez utiliser la CLI CloudHSM pour définir l'application MTLS dans le cluster en effectuant les étapes suivantes :

1. Utilisez la commande suivante pour démarrer la CLI CloudHSM.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. À l'aide de la CLI CloudHSM, connectez-vous en tant qu'administrateur.

   ```
   aws-cloudhsm > login --username <admin> --role admin
   Enter password:
   {
     "error_code": 0,
     "data": {
       "username": "<admin>",
       "role": "admin"
     }
   }
   ```
**Note**  
 1. Assurez-vous d'avoir configuré la CLI CloudHSM et de démarrer la CLI CloudHSM sous une connexion mTLS.  
 2. Vous devez être connecté en tant qu'utilisateur administrateur par défaut avec un nom d'utilisateur en tant qu'**administrateur** avant de définir l'application des mTLS. 

1. Utilisez la ** [Définissez le niveau d'application mTLS à l'aide de la CLI CloudHSM](cloudhsm_cli-cluster-mtls-set-enforcement.md) ** commande pour définir l'application. Pour plus d'informations, consultez l'exemple suivant ou utilisez la commande **help cluster mtls set-enforcement**.  
**Example — Définissez l'application des MTL avec le cluster AWS CloudHSM**  

   L'exemple suivant montre comment utiliser la **cluster mtls set-enforcement** commande dans la CLI CloudHSM pour définir l'application mTLS avec le HSM. Pour utiliser cette commande, l'administrateur dont le nom d'utilisateur est administrateur doit être connecté au HSM.

   ```
   aws-cloudhsm > cluster mtls set-enforcement --level cluster
   {
     "error_code": 0,
     "data": {
       "message": "Mtls enforcement level set to Cluster successfully"
     }
   }
   ```
**Avertissement**  
Une fois que vous aurez imposé l'utilisation de MTLS dans le cluster, toutes les connexions non MTLS existantes seront supprimées et vous ne pourrez vous connecter au cluster qu'avec des certificats MTLS.

# Création et utilisation de clés dans AWS CloudHSM
<a name="create-apps"></a>

[Avant de créer et d'utiliser des clés dans votre nouveau cluster, créez un utilisateur du module de sécurité matérielle (HSM) à l'aide de la CLI AWS CloudHSM. Pour plus d'informations, [consultez Comprendre les tâches de gestion des utilisateurs HSM](understand-users.md), [Commencer à utiliser l'interface de ligne de commande (CLI) AWS CloudHSM](cloudhsm_cli-getting-started.md) et Comment gérer les utilisateurs HSM.](manage-hsm-users.md)

**Note**  
Si vous utilisez le SDK client 3, utilisez l'[Utilitaire de gestion CloudHSM (CMU) au lieu de la CLI CloudHSM](cloudhsm_mgmt_util.md).

Après avoir créé des utilisateurs HSM, vous pouvez vous connecter au HSM et gérer les clés à l'aide de l'une des options suivantes : 
+ Utilisation d’un [Utilitaire de gestion des clés, d’un outil de ligne de commande](key_mgmt_util-getting-started.md)
+ Création d'une application C à l'aide de la [bibliothèque PKCS \$111](pkcs11-library.md)
+ Création d'une application Java à l'aide du [fournisseur JCE](java-library.md)
+ Utilisation du [moteur dynamique OpenSSL directement depuis la ligne de commande](openssl-library.md)
+ Utilisation du moteur dynamique OpenSSL pour le déchargement du protocole TLS avec les [serveurs Web NGINX et Apache](ssl-offload.md)
+ Utiliser le fournisseur de stockage de clés (KSP) pour AWS CloudHSM [Microsoft Windows Server Certificate Authority (CA)](win-ca-overview-sdk5.md)
+ Utiliser le fournisseur de stockage de clés (KSP) pour l' AWS CloudHSM outil [Microsoft Sign](signtool-sdk5.md)
+ Utiliser le fournisseur de stockage de clés (KSP) pour le déchargement TLS avec le serveur [Web Internet Information Server (IIS)](ssl-offload.md)