Démarrage rapide : Provisionner et activer un HSM managé à l’aide d’Azure CLIQuickstart: Provision and activate a managed HSM using Azure CLI

Azure Key Vault Managed HSM est un service cloud complètement managé, à haut niveau de disponibilité et monolocataire qui vous permet de protéger les clés de chiffrement de vos applications cloud à l’aide de HSM certifiés FIPS 140-2 de niveau 3.Azure Key Vault Managed HSM is a fully managed, highly available, single-tenant, standards-compliant cloud service that enables you to safeguards cryptographic keys for your cloud applications, using FIPS 140-2 Level 3 validated HSMs. Pour plus d’informations Managed HSM, vous pouvez consultez la présentation.For more information on Managed HSM you may review the Overview.

Dans ce démarrage rapide, vous allez créer et activer un HSM managé avec Azure CLI.In this quickstart, you create and activate a managed HSM with Azure CLI. Ensuite, vous y stockerez un secret.Once that you have completed that, you will store a secret.

PrérequisPrerequisites

Pour effectuer les étapes de cet article, vous devez disposer des éléments suivants :To complete the steps in this article, you must have the following items:

Utiliser Azure Cloud ShellUse Azure Cloud Shell

Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure.You can use either Bash or PowerShell with Cloud Shell to work with Azure services. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code de cet article sans avoir à installer quoi que ce soit dans votre environnement local.You can use the Cloud Shell preinstalled commands to run the code in this article without having to install anything on your local environment.

Pour démarrer Azure Cloud Shell :To start Azure Cloud Shell:

OptionOption Exemple/LienExample/Link
Sélectionnez Essayer dans le coin supérieur droit d’un bloc de code.Select Try It in the upper-right corner of a code block. La sélection de Essayer ne copie pas automatiquement le code dans Cloud Shell.Selecting Try It doesn't automatically copy the code to Cloud Shell. Exemple Essayer pour Azure Cloud Shell
Accédez à https://shell.azure.com ou sélectionnez le bouton Lancer Cloud Shell pour ouvrir Cloud Shell dans votre navigateur.Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. Lancer Cloud Shell dans une nouvelle fenêtreLaunch Cloud Shell in a new window
Sélectionnez le bouton Cloud Shell dans la barre de menus en haut à droite du portail Azure.Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. Bouton Cloud Shell du portail Azure

Pour exécuter le code de cet article dans Azure Cloud Shell :To run the code in this article in Azure Cloud Shell:

  1. Démarrez Cloud Shell.Start Cloud Shell.

  2. Sélectionnez le bouton Copier dans un bloc de code pour copier le code.Select the Copy button on a code block to copy the code.

  3. Collez le code dans la session Cloud Shell en sélectionnant Ctrl+Maj+V sur Windows et Linux, ou en sélectionnant Cmd+Maj+V sur macOS.Paste the code into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux or by selecting Cmd+Shift+V on macOS.

  4. Sélectionnez Entrée pour exécuter le code.Select Enter to run the code.

Connexion à AzureSign in to Azure

Pour vous connecter à Azure à l’aide de l’interface CLI, vous pouvez taper la commande suivante :To sign in to Azure using the CLI you can type:

az login

Créer un groupe de ressourcesCreate a resource group

Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.A resource group is a logical container into which Azure resources are deployed and managed. L’exemple suivant crée un groupe de ressources nommé ContosoResourceGroup à l’emplacement eastus2.The following example creates a resource group named ContosoResourceGroup in the eastus2 location.

az group create --name "ContosoResourceGroup" --location eastus2

Créer un HSM managéCreate a Managed HSM

La création d’un HSM managé est un processus en deux étapes :Creating a managed HSM is a two step process:

  1. Provisionnez une ressource Managed HSM.Provision a Managed HSM resource.
  2. Activez votre HSM managé en téléchargeant le domaine de sécurité.Activate your Managed HSM by downloading the security domain.

Provisionner un HSM managéProvision a managed HSM

Utilisez la commande az keyvault create pour créer un HSM managé.Use the az keyvault create command to create a Managed HSM. Ce script a trois paramètres obligatoires : le nom de groupe de ressources, le nom du HSM et l’emplacement géographique.This script has three mandatory parameters: a resource group name, an HSM name, and the geographic location.

Vous devez fournir les entrées suivantes pour créer une ressource Managed HSM :You need to provide following inputs to create a Managed HSM resource:

  • Groupe de ressources dans lequel il sera placé dans votre abonnement.A resource group where it will be placed in your subscription.
  • Emplacement Azure.Azure location.
  • Liste des administrateurs initiaux.A list of initial administrators.

L’exemple ci-dessous crée un HSM nommé ContosoMHSM dans le groupe de ressources ContosoResourceGroup, qui réside à l’emplacement USA Est 2, avec l’utilisateur actuellement connecté comme unique administrateur.The example below creates an HSM named ContosoMHSM, in the resource group ContosoResourceGroup, residing in the East US 2 location, with the current signed in user as the only administrator.

oid=$(az ad signed-in-user show --query objectId -o tsv)
az keyvault create --hsm-name "ContosoMHSM" --resource-group "ContosoResourceGroup" --location "East US 2" --administrators $oid

Notes

L’exécution de la commande create peut prendre quelques minutes.Create command can take a few minutes. Une fois celle-ci terminée, vous êtes prêt à activer votre HSM.Once it returns successfully you are ready to activate your HSM.

La sortie de cette commande affiche les propriétés du HSM managé que vous avez créé.The output of this command shows properties of the Managed HSM that you've created. Les deux propriétés les plus importantes sont :The two most important properties are:

  • name : dans l’exemple, le nom est ContosoMHSM.name: In the example, the name is ContosoMHSM. Vous allez utiliser ce nom pour d’autres commandes Key Vault.You'll use this name for other Key Vault commands.
  • hsmUri : Dans l’exemple, l’URI est https://contosohsm.managedhsm.azure.net.hsmUri: In the example, the URI is 'https://contosohsm.managedhsm.azure.net.' Les applications qui utilisent votre HSM via son API REST doivent utiliser cet URI.Applications that use your HSM through its REST API must use this URI.

Votre compte Azure est maintenant autorisé à effectuer n’importe quelle opération sur ce HSM managé.Your Azure account is now authorized to perform any operations on this Managed HSM. À l’heure actuelle, personne d’autre n’y est autorisé.As of yet, nobody else is authorized.

Activer votre HSM managéActivate your managed HSM

Toutes les commandes du plan de données sont désactivées tant que le HSM n’est pas activé.All data plane commands are disabled until the HSM is activated. Vous ne pourrez pas créer de clés ou attribuer des rôles.You will not be able to create keys or assign roles. 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.Only the designated administrators that were assigned during the create command can activate the HSM. Pour activer le HSM, vous devez télécharger le domaine de sécurité.To activate the HSM you must download the Security Domain.

Pour activer votre HSM, vous avez besoin de :To activate your HSM you need:

  • Trois paires de clés RSA au minimum (10 au maximum)Minimum 3 RSA key-pairs (maximum 10)
  • Spécifier le nombre minimal de clés nécessaires au déchiffrement du domaine de sécurité (quorum)Specify minimum number of keys required to decrypt the security domain (quorum)

Pour activer le HSM, vous devez envoyer au moins trois clés publiques RSA au HSM (10 au maximum).To activate the HSM you send at least 3 (maximum 10) RSA public keys to the HSM. Le HSM chiffre le domaine de sécurité avec ces clés et le renvoie.The HSM encrypts the security domain with these keys and sends it back. Une fois le téléchargement du domaine de sécurité terminé, votre HSM est prêt à l’emploi.Once this security domain download is successfully completed, your HSM is ready to use. 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é.You also need to specify quorum, which is the minimum number of private keys required to decrypt the security domain.

L’exemple ci-dessous montre comment générer trois certificats autosignés à l’aide de openssl.The example below shows how to use openssl to generate 3 self signed certificate.

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.Create and store the RSA key pairs and security domain file generated in this step securely.

Utilisez la commande az keyvault security-domain download pour télécharger le domaine de sécurité et activer votre HSM managé.Use the az keyvault security-domain download command to download the security domain and activate your managed HSM. L’exemple ci-dessous utilise trois paires de clés RSA (seules les clés publiques sont nécessaires pour cette commande) et définit le quorum sur 2.The example below, uses 3 RSA key pairs (only public keys are needed for this command) and sets the quorum to 2.

az keyvault security-domain download --hsm-name ContosoMHSM --sd-wrapping-keys ./certs/cert_0.cer ./certs/cert_1.cer ./certs/cert_2.cer --sd-quorum 2 --security-domain-file ContosoMHSM-SD.json

Stockez le fichier de domaine de sécurité et les paires de clés RSA de manière sécurisée.Please store the security domain file and the RSA key pairs securely. 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é et ainsi les mêmes clés.You will need them for disaster recovery or for creating another managed HSM that shares same security domain, so they can share keys.

Une fois le domaine de sécurité téléchargé, votre HSM sera à l’état actif et prêt à l’emploi.After successfully downloading the security domain, your HSM will be in active state and ready for you to use.

Nettoyer les ressourcesClean up resources

D’autres guides de démarrage rapide et didacticiels de cette collection reposent sur ce guide.Other quickstarts and tutorials in this collection build upon this quickstart. Si vous prévoyez d’utiliser d’autres démarrages rapides et didacticiels, il peut être utile de conserver ces ressources.If you plan to continue on to work with subsequent quickstarts and tutorials, you may wish to leave these resources in place.

Lorsque vous n’en avez plus besoin, vous pouvez utiliser la commande az group delete pour supprimer le groupe de ressources, ainsi que toutes les ressources associées.When no longer needed, you can use the az group delete command to remove the resource group, and all related resources. Vous pouvez supprimer les ressources comme suit :You can delete the resources as follows:

az group delete --name ContosoResourceGroup

Étapes suivantesNext steps

Dans ce guide de démarrage rapide, vous avez créé un coffre de clés Key Vault et vous y avez stocké un secret.In this quickstart you created a Key Vault and stored a secret in it. Pour en savoir plus sur Key Vault et sur la manière de l’intégrer à vos applications, consultez les articles ci-dessous.To learn more about Key Vault and how to integrate it with your applications, continue on to the articles below.