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

Dans ce guide de démarrage rapide, vous allez créer et activer un HSM managé Azure Key Vault (module de sécurité matérielle) à l’aide de PowerShell. Le HSM managé est un service cloud entièrement géré, hautement disponible, à locataire unique et conforme aux normes, qui vous permet de protéger les clés de chiffrement pour vos applications cloud, à l’aide de HSM validés FIPS 140-3 de niveau 3 . Pour plus d’informations sur Managed HSM, consultez la vue d’ensemble.

Prérequis

Si vous n'avez pas d'abonnement Azure, créez un compte free avant de commencer.

Créer un groupe de ressources

Un groupe de ressources est un conteneur logique dans lequel Azure ressources 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 dans l’emplacement eastus.

New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"

Récupérer votre ID de principal

Pour créer un HSM managé, vous avez besoin de votre ID de principal Microsoft Entra. Pour obtenir votre ID, utilisez l’applet de commande Azure PowerShell Get-AzADUser et transmettez votre adresse e-mail au paramètre UserPrincipalName :

Get-AzADUser -UserPrincipalName "<user-principal-name>"

Votre ID de principal sera 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é. Fournissez les informations suivantes :

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

    Important

    Chaque HSM managé doit avoir un nom unique. Remplacez <hsm-name> par votre propre nom HSM managé unique dans les exemples suivants.

  • Nom du groupe de ressources : myResourceGroup.

  • Emplacement : EastUS (ou votre emplacement sélectionné).

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

New-AzKeyVaultManagedHsm -Name "<hsm-name>" -ResourceGroupName "myResourceGroup" -Location "EastUS" -Administrator "<principal-id>" -SoftDeleteRetentionInDays "<retention-days>"

Remarque

La création peut prendre quelques minutes. Lorsqu’il renvoie un résultat réussi, vous êtes prêt à activer votre HSM.

Avertissement

Les instances HSM managées sont toujours en cours d’utilisation. Si vous activez la protection contre le vidage à l’aide de l’indicateur --enable-purge-protection , vous payez pour toute la période de rétention.

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 : URI de votre HSM (par exemple, https://<hsm-name>.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 compte 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 jusqu’à ce que vous activiez le HSM. Vous ne pouvez pas créer de clés ni attribuer de rôles. Seuls les administrateurs désignés que vous affectez pendant la commande create peuvent activer le module HSM. Pour activer le HSM, vous devez télécharger le domaine de sécurité.

Pour activer votre HSM, vous avez besoin des éléments suivants :

  • Un minimum de trois paires de clés RSA (10 maximum)
  • Nombre minimal de clés requises pour déchiffrer le domaine de sécurité (appelé quorum)

Vous envoyez au moins trois clés publiques RSA (maximum 10) au HSM. 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 à être utilisé. Vous devez également spécifier le quorum, qui est le nombre minimal de clés privées requises pour déchiffrer le domaine de sécurité.

L’exemple suivant montre comment utiliser openssl pour générer trois certificats auto-signés :

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

La date d’expiration du certificat n’affecte pas les opérations de domaine de sécurité, même un certificat « expiré » peut toujours être utilisé pour restaurer le domaine de sécurité.

Important

Ces clés privées RSA sont la racine de confiance pour votre HSM managé. Pour les environnements de production, générez ces clés à l’aide d’un système air-gapped ou d’un HSM local et stockez-les en toute sécurité. Consultez les meilleures pratiques relatives au domaine de sécurité pour obtenir des conseils détaillés.

Conseil / Astuce

OpenSSL pour Windows est disponible à partir de le site web OpenSSL.

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 "<hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "<hsm-name>-SD.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 avez besoin pour la récupération d’urgence ou pour créer un autre HSM managé qui partage le même domaine de sécurité afin que les deux puissent partager des clés.

Une fois le domaine de sécurité téléchargé, votre HSM est dans un état actif et prêt à être utilisé.

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 de suppression réversible. Le module HSM managé continue d’être facturé jusqu’à ce qu’il soit vidé. 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 :