Démarrage rapide : Créer un HSM managé avec un modèle ARM
Ce guide de démarrage rapide décrit comment utiliser un modèle Azure Resource Manager (ARM) pour créer un HSM managé 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.
Un modèle Azure Resource Manager est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Vous décrivez votre déploiement prévu sans écrire la séquence de commandes de programmation pour créer le déploiement.
Si votre environnement remplit les prérequis et que vous êtes déjà familiarisé avec l’utilisation des modèles ARM, sélectionnez le bouton Déployer sur Azure. Le modèle s’ouvre dans le portail Azure.
Prérequis
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Vérifier le modèle
Le modèle utilisé dans ce guide de démarrage rapide est tiré des modèles de démarrage rapide Azure :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "9933229425431379390"
}
},
"parameters": {
"managedHSMName": {
"type": "string",
"metadata": {
"description": "String specifying the name of the managed HSM."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "String specifying the Azure location where the managed HSM should be created."
}
},
"initialAdminObjectIds": {
"type": "array",
"metadata": {
"description": "Array specifying the objectIDs associated with a list of initial administrators."
}
},
"tenantId": {
"type": "string",
"defaultValue": "[subscription().tenantId]",
"metadata": {
"description": "String specifying the Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM."
}
},
"softRetentionInDays": {
"type": "int",
"defaultValue": 7,
"maxValue": 90,
"minValue": 7,
"metadata": {
"description": "Specifies the number of days that managed Key Vault will be kept recoverable if deleted. If you do not want to have soft delete enabled, set value to 0."
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/managedHSMs",
"apiVersion": "2021-04-01-preview",
"name": "[parameters('managedHSMName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_B1",
"family": "B"
},
"properties": {
"enableSoftDelete": "[greater(parameters('softRetentionInDays'), 0)]",
"softDeleteRetentionInDays": "[if(equals(parameters('softRetentionInDays'), 0), null(), parameters('softRetentionInDays'))]",
"enablePurgeProtection": false,
"tenantId": "[parameters('tenantId')]",
"initialAdminObjectIds": "[parameters('initialAdminObjectIds')]",
"publicNetworkAccess": "Enabled",
"networkAcls": {
"bypass": "None",
"defaultAction": "Allow"
}
}
}
]
}
Ressource Azure définie dans le modèle :
- Microsoft.KeyVault/managedHSMs : créez un HSM managé Azure Key Vault.
Déployer le modèle
Le modèle a besoin de l’ID d’objet associé à votre compte. Pour le trouver, utilisez la commande Azure CLI az ad user show en transmettant votre adresse e-mail au paramètre --id
. Vous pouvez limiter la sortie au seul ID d’objet avec le paramètre --query
.
az ad user show --id <your-email-address> --query "objectId"
Il se peut que vous ayez aussi besoin de votre ID de locataire. Pour le trouver, utilisez la commande Azure CLI az ad user show. Vous pouvez limiter la sortie au seul ID de locataire avec le paramètre --query
.
az account show --query "tenantId"
Vous pouvez maintenant déployer le modèle ARM :
Cliquez sur l’image ci-après pour vous connecter à Azure et ouvrir un modèle. Le modèle crée une instance Managed HSM.
Sélectionnez ou entrez les valeurs suivantes. Sauf si elle est spécifiée, utilisez la valeur par défaut pour créer le HSM managé.
- Abonnement: Sélectionnez un abonnement Azure.
- Groupe de ressources : sélectionnez Créer nouveau, entrez « myResourceGroup » comme nom, puis sélectionnez OK.
- Emplacement : Sélectionnez un emplacement. Par exemple, Norvège Est.
- managedHSMName : attribuez un nom à votre instance Managed HSM.
- ID du locataire : la fonction de modèle récupère automatiquement votre ID de locataire ; ne changez pas la valeur par défaut. En l’absence de valeur, entrez l’ID de locataire que vous avez récupéré ci-dessus.
- initialAdminObjectIds : entrez l’ID d’objet que vous avez récupéré ci-dessus.
Sélectionnez Achat. Une fois l’instance Managed HSM correctement déployée, vous recevez une notification :
Le portail Azure est utilisé pour déployer le modèle. Outre le portail Azure, vous pouvez également utiliser Azure PowerShell, l’interface Azure CLI et l’API REST. Pour découvrir d’autres méthodes de déploiement, consultez Déployer des modèles.
Valider le déploiement
Vous pouvez vérifier que le HSM managé a été créé avec la commande Azure CLI az keyvault list. Vous trouverez la sortie plus facile à lire si vous mettez en forme les résultats sous forme de tableau :
az keyvault list -o table
Vous devez voir le nom de votre HSM managé nouvellement créé.
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 la commande Azure CLI az group delete pour supprimer le groupe de ressources ainsi que toutes les ressources associées :
az group delete --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 définitivement supprimé. Consultez Suppression réversible et protection contre la suppression définitive d’un module HSM managé
Étapes suivantes
Dans ce démarrage rapide, vous avez créé une instance Managed HSM. Ce HSM managé ne sera pas entièrement fonctionnel tant qu’il n’est pas activé. Consultez Activer votre instance Managed HSM pour savoir comment activer votre HSM.
- Lire une présentation de Managed HSM
- En savoir plus sur la gestion des clés dans une instance Managed HSM
- Passer en revue les bonnes pratiques de Managed HSM