Démarrage rapide : Provisionner et activer un HSM managé à l’aide de PowerShell

Dans ce démarrage rapide, vous allez créer et activer un module de sécurité matériel (HSM, Hardware Security Module) managé Azure Key Vault avec PowerShell. Un HSM managé est un service cloud complètement managé, hautement disponible, à un seul locataire et conforme aux normes qui vous permet de protéger les clés de chiffrement pour vos applications cloud à l’aide de HSM certifiés FIPS 140-2 de niveau 3. Pour plus d’informations sur le HSM managé, vous pouvez consulter la présentation.

Si vous choisissez d’installer et d’utiliser PowerShell en local, ce tutoriel nécessite le module Azure PowerShell version 1.0.0 ou ultérieure. Tapez $PSVersionTable.PSVersion pour connaître la version. Si vous devez effectuer une mise à niveau, consultez Installer le module Azure PowerShell. Si vous exécutez PowerShell en local, vous devez également lancer Connect-AzAccount pour créer une connexion avec Azure.

Connect-AzAccount

Créer un groupe de ressources

Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Utilisez l’applet de commande Azure PowerShell New-AzResourceGroup pour créer un groupe de ressources nommé myResourceGroup à l’emplacement eastus2.

New-AzResourceGroup -Name "myResourceGroup" -Location "eastus2"

Récupérer votre ID de principal

Pour créer un HSM managé, vous aurez besoin de votre ID de principal Microsoft Entra. Pour obtenir votre ID, utilisez la cmdlet Azure PowerShell Get-AzADUser, en transmettant votre adresse e-mail au paramètre « UserPrincipalName » :

Get-AzADUser -UserPrincipalName "<your@email.address>"

Votre ID de principal est retourné au format « xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ».

Créer un HSM managé

La création d’un HSM managé est un processus en deux étapes :

  1. Provisionnez une ressource Managed HSM.
  2. Activez votre HSM managé en téléchargeant un artefact nommé domaine de sécurité.

Provisionner un HSM managé

Utilisez l’applet de commande Azure PowerShell New-AzKeyVaultManagedHsm pour créer un HSM managé. Vous devrez fournir certaines informations :

  • Nom du HSM managé : chaîne de 3 à 24 caractères qui ne peut contenir que des chiffres (0-9), des lettres (a-z, A-Z) et des traits d’union (-).

    Important

    Chaque HSM managé doit avoir un nom unique. Remplacez <nom_unique_de_votre_hsm_managé> par le nom de votre HSM managé dans les exemples suivants.

  • Groupe de ressources nommé : myResourceGroup.

  • L’emplacement : USA Est 2.

  • Votre ID principal : passez l’ID de principal Microsoft Entra que vous avez obtenu dans la dernière section au paramètre « Administrateur ».

New-AzKeyVaultManagedHsm -Name "your-unique-managed-hsm-name" -ResourceGroupName "myResourceGroup" -Location "eastus2" -Administrator "your-principal-ID" -SoftDeleteRetentionInDays "# of days to retain the managed hsm after softdelete"

Remarque

La création peut prendre quelques minutes. Une fois celle-ci terminée, vous êtes prêt à activer votre HSM.

La sortie de cette applet de commande affiche les propriétés du nouveau HSM managé. Notez les deux propriétés ci-dessous :

  • Nom : nom que vous avez fourni pour le HSM managé.
  • HsmUri : dans l’exemple, il s’agit de https://<nom_unique_de_votre_hsm_managé>.managedhsm.azure.net/. Les applications qui utilisent votre coffre via son API REST doivent utiliser cet URI.

À ce stade, votre compte Azure est le seul autorisé à effectuer des opérations sur ce nouveau HSM.

Activer votre HSM managé

Toutes les commandes du plan de données sont désactivées tant que le HSM n’est pas activé. Vous ne pourrez pas créer de clés ou attribuer des rôles. Seuls les administrateurs désignés qui ont fait l’objet d’une attribution pendant l’exécution de la commande create peuvent activer le HSM. Pour activer le HSM, vous devez télécharger le domaine de sécurité.

Pour activer votre HSM, vous devez :

  • Fournir trois paires de clés RSA au minimum (10 au maximum)
  • Spécifier le nombre minimal de clés nécessaires au déchiffrement du domaine de sécurité (appelé quorum)

Pour activer le HSM, vous devez envoyer au moins trois clés publiques RSA au HSM (10 au maximum). Le HSM chiffre le domaine de sécurité avec ces clés et le renvoie. Une fois le téléchargement du domaine de sécurité terminé, votre HSM est prêt à l’emploi. Vous devez aussi spécifier un quorum, qui est le nombre minimal de clés privées nécessaires au déchiffrement du domaine de sécurité.

L’exemple suivant montre comment générer trois certificats autosignés avec openssl (disponible ici pour Windows).

openssl req -newkey rsa:2048 -nodes -keyout cert_0.key -x509 -days 365 -out cert_0.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_1.key -x509 -days 365 -out cert_1.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_2.key -x509 -days 365 -out cert_2.cer

Important

Créez et stockez les paires de clés RSA et le fichier de domaine de sécurité générés dans cette étape de manière sécurisée.

Utilisez l’applet de commande Azure PowerShell Export-AzKeyVaultSecurityDomain pour télécharger le domaine de sécurité et activer votre HSM managé. L’exemple suivant utilise trois paires de clés RSA (seules les clés publiques sont nécessaires pour cette commande) et définit le quorum sur deux.

Export-AzKeyVaultSecurityDomain -Name "<your-unique-managed-hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "MHSMsd.ps.json" -Quorum 2

Stockez le fichier de domaine de sécurité et les paires de clés RSA de manière sécurisée. Vous en aurez besoin en cas de reprise d’activité ou pour créer un autre HSM managé partageant le même domaine de sécurité de sorte que les deux puissent partager des clés.

Une fois le domaine de sécurité téléchargé, votre HSM sera à l’état actif et prêt à l’emploi.

Nettoyer les ressources

D’autres guides de démarrage rapide et didacticiels de cette collection reposent sur ce guide. Si vous prévoyez d’utiliser d’autres démarrages rapides et didacticiels, il peut être utile de conserver ces ressources.

Quand vous n’en avez plus besoin, vous pouvez utiliser l’applet de commande Azure PowerShell Remove-AzResourceGroup pour supprimer le groupe de ressources et toutes les ressources associées.

Remove-AzResourceGroup -Name "myResourceGroup"

Avertissement

La suppression du groupe de ressources place le HSM managé dans un état supprimé de manière réversible. Le module HSM managé continuera d’être facturé jusqu’à ce qu’il soit purgé. Consultez Suppression réversible et protection contre la suppression définitive d’un module HSM managé

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez créé et activé un HSM managé. Pour en savoir plus sur le HSM managé et sur la manière de l’intégrer à vos applications, poursuivez avec les articles ci-dessous :