Pour obtenir une vue d’ensemble du HSM managé, consultez Qu’est-ce que HSM managé ?
Conditions préalables
Un abonnement Azure est requis. Si vous n’en avez pas, créez un compte gratuit avant de commencer.
Vous avez également besoin des éléments suivants :
Remarque
Toutes les commandes suivantes montrent deux méthodes d’utilisation pour l’interface CLI. Une méthode utilise les paramètres --hsm-name et --name (pour le nom de clé). L’autre méthode utilise le --id paramètre, où vous pouvez spécifier l’URL entière, y compris le nom de clé le cas échéant. Cette dernière méthode est utile quand l’appelant (un utilisateur ou une application) ne dispose pas d’un accès en lecture au plan de contrôle et a uniquement un accès limité au plan de données.
Certaines interactions avec le matériel clé nécessitent des autorisations RBAC locales spécifiques pour les HSM gérés. Pour obtenir la liste complète des rôles et autorisations des rôles RBAC locaux intégrés au HSM managé, consultez rôles RBAC locaux intégrés au HSM managé. Pour attribuer ces autorisations à un utilisateur, consultez Accès sécurisé à vos modules HSM managés.
Créer une clé HSM
Remarque
Vous ne pouvez pas exporter une clé générée ou importée dans un HSM managé. La seule exception à la règle de non-exportation est lorsque vous créez une clé avec une stratégie de mise en production de clé spécifique. Cette stratégie permet l’exportation de la clé uniquement vers des environnements informatiques confidentiels approuvés (enclaves sécurisées) que vous définissez explicitement. Cette fonctionnalité d’exportation limitée est conçue pour des scénarios de calcul sécurisé spécifiques et n’est pas la même qu’une exportation de clé à usage général. Pour connaître les meilleures pratiques recommandées pour la portabilité et la durabilité clés, consultez l’article lié.
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés.
Sélectionnez Générer/Importer dans la liste déroulante Générer/Importer/Restaurer la sauvegarde .
Choisissez le type de clé (RSA-HSM, EC-HSM ou oct-HSM), définissez la taille de clé ou la courbe, le nom et les opérations autorisées, puis sélectionnez Créer.
Utilisez la az keyvault key create commande pour créer une clé.
Créer une clé RSA
Cet exemple montre comment créer une clé RSA 3072 bits utilisée uniquement pour les opérations wrapKey et unwrapKey (--ops).
az keyvault key create --hsm-name <hsm-name> --name myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
## OR
# Note the key name (myrsakey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
L’opération get retourne uniquement la clé publique et les autres attributs de clé. Elle ne retourne pas la clé privée (si une clé asymétrique) ou le matériel de clé (si une clé symétrique).
Créer une clé EC
L’exemple suivant montre comment créer une clé EC avec la courbe P-256. La clé est uniquement destinée aux opérations de signature et de vérification (--ops) et a deux balises, utilisation et nom d’application. Utilisez des balises pour ajouter des métadonnées supplémentaires à la clé pour le suivi et la gestion.
az keyvault key create --hsm-name <hsm-name> --name myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
## OR
# Note the key name (myec256key) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
Créer une clé symétrique 256 bits
Cet exemple montre comment créer une clé symétrique 256 bits uniquement pour les opérations de chiffrement et de déchiffrement (--ops).
az keyvault key create --hsm-name <hsm-name> --name myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
## OR
# Note the key name (myaeskey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
Utilisez l’applet Add-AzKeyVaultKey de commande pour créer une clé.
Créer une clé RSA
Cet exemple montre comment créer une clé RSA 3072 bits utilisée uniquement pour les opérations wrapKey et unwrapKey .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyType RSA-HSM -Size 3072 -KeyOps wrapKey,unwrapKey
Créer une clé EC
Cet exemple montre comment créer une clé EC avec la courbe P-256 pour les opérations de signature et de vérification .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myec256key -KeyType EC-HSM -CurveName P-256 -KeyOps sign,verify -Tag @{usage='signing'; appname='myapp'}
Créer une clé symétrique 256 bits
Cet exemple montre comment créer une clé symétrique 256 bits pour chiffrer et déchiffrer des opérations.
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myaeskey -KeyType oct-HSM -Size 256 -KeyOps encrypt,decrypt -Tag @{usage='encryption'; appname='myapp'}
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés.
Sélectionnez la clé à afficher. Le portail affiche les attributs, versions et balises de la clé.
Utilisez la az keyvault key show commande pour afficher les attributs, les versions et les balises d’une clé.
az keyvault key show --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key show --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Utilisez l’applet Get-AzKeyVaultKey de commande pour afficher les attributs, les versions et les balises d’une clé.
Get-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Afficher la liste des clés
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés. Le portail répertorie toutes les clés du HSM managé.
Utilisez la az keyvault key list commande pour répertorier toutes les clés à l’intérieur d’un HSM managé.
az keyvault key list --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list --id https://<hsm-name>.managedhsm.azure.net/
Utilisez l’applet Get-AzKeyVaultKey de commande pour répertorier toutes les clés d’un HSM managé.
Get-AzKeyVaultKey -HsmName <hsm-name>
Supprimer une clé
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés.
Sélectionnez la clé à supprimer.
Sélectionnez Supprimer, puis confirmez.
Utilisez la az keyvault key delete commande pour supprimer une clé d’un HSM managé. La suppression réversible est toujours activée. Par conséquent, une clé supprimée reste dans l’état supprimé et vous pouvez la récupérer jusqu’à ce que le nombre de jours de rétention passe. Après cela, la clé est vidée (définitivement supprimée) sans récupération possible.
az keyvault key delete --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key delete --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Utilisez l’applet Remove-AzKeyVaultKey de commande pour supprimer une clé. La suppression réversible est toujours activée. Par conséquent, une clé supprimée reste récupérable jusqu’à l’expiration de la période de rétention.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Lister les clés supprimées
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés.
Sélectionnez Gérer les clés supprimées pour afficher les clés en suppression temporaire.
Utilisez la az keyvault key list-deleted commande pour répertorier toutes les clés dans l’état supprimé dans votre HSM managé.
az keyvault key list-deleted --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list-deleted --id https://<hsm-name>.managedhsm.azure.net/
Utilisez l’applet Get-AzKeyVaultKey de commande avec le -InRemovedState paramètre pour répertorier les clés supprimées.
Get-AzKeyVaultKey -HsmName <hsm-name> -InRemovedState
Récupérer une clé supprimée (en annuler la suppression)
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés, puis sélectionnez Gérer les clés supprimées.
Sélectionnez la clé supprimée que vous souhaitez récupérer.
Sélectionnez Récupérer.
Utilisez la az keyvault key list-deleted commande pour répertorier toutes les clés dans l’état supprimé dans votre HSM managé. Pour récupérer (annuler la suppression) d’une clé, utilisez le --id paramètre. Vous devez noter la recoveryId valeur de la clé supprimée obtenue à partir de la az keyvault key list-deleted commande.
az keyvault key recover --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key recover --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Utilisez l’applet Undo-AzKeyVaultKeyRemoval de commande pour récupérer une clé supprimée.
Undo-AzKeyVaultKeyRemoval -HsmName <hsm-name> -Name myrsakey
Vider (supprimer définitivement) une clé
Remarque
Si la protection de vidage du HSM managée est activée, l’opération de vidage n’est pas autorisée. La clé est automatiquement vidée lorsque la période de rétention passe.
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés, puis sélectionnez Gérer les clés supprimées.
Sélectionnez la clé supprimée que vous souhaitez vider.
Sélectionnez Vider, puis confirmez.
Avertissement
Cette opération supprime définitivement votre clé.
Utilisez la az keyvault key purge commande pour vider (supprimer définitivement) une clé.
az keyvault key purge --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key purge --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Utilisez l’applet Remove-AzKeyVaultKey de commande avec le -InRemovedState paramètre pour vider une clé supprimée.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -InRemovedState
Avertissement
Cette opération supprime définitivement votre clé.
Créer une sauvegarde de clé unique
La sauvegarde de clé n'est actuellement pas disponible dans le portail Azure. Utilisez le Azure CLI ou le Azure PowerShell.
Utilisez az keyvault key backup pour créer une sauvegarde de clé. Le fichier de sauvegarde est un objet blob chiffré, lié par chiffrement au domaine de sécurité du HSM source. Vous ne pouvez le restaurer que dans les modules HSM qui partagent le même domaine de sécurité. Découvrez plus en détail le domaine de sécurité.
az keyvault key backup --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key backup --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Utilisez l’applet Backup-AzKeyVaultKey de commande pour créer une sauvegarde de clé. Le fichier de sauvegarde est un objet blob chiffré, lié par chiffrement au domaine de sécurité du HSM source.
Backup-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -OutputFile myrsakey.backup
Restaurer une clé unique à partir d’une sauvegarde
Dans le portail Azure, accédez à votre ressource HSM managée.
Dans le menu de gauche, sous Paramètres, sélectionnez Clés.
Sélectionnez Générer/Importer/Restaurer la sauvegarde , puis choisissez Restaurer la clé à partir de la sauvegarde.
Accédez au fichier de sauvegarde, puis sélectionnez Restaurer.
Utilisez az keyvault key restore pour restaurer une clé unique. Le HSM source où vous avez créé la sauvegarde doit partager le même domaine de sécurité que le HSM cible où vous restaurez la clé.
Remarque
L’opération de restauration échoue si une clé portant le même nom existe dans l’état actif ou supprimé.
az keyvault key restore --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key restore --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Utilisez le cmdlet Restore-AzKeyVaultKey pour restaurer un seul élément de clé. Le HSM source où vous avez créé la sauvegarde doit partager le même domaine de sécurité que le HSM cible.
Remarque
L’opération de restauration échoue si une clé portant le même nom existe dans l’état actif ou supprimé.
Restore-AzKeyVaultKey -HsmName <hsm-name> -InputFile myrsakey.backup
Importer une clé à partir d’un fichier
L'importation de clé n'est actuellement pas disponible dans le portail Azure. Utilisez le Azure CLI ou le Azure PowerShell.
Utilisez la az keyvault key import commande pour importer une clé (uniquement RSA et EC) à partir d’un fichier. Le fichier de certificat doit avoir une clé privée et doit utiliser l’encodage PEM (tel que défini dans les RFC 1421, 1422, 1423, 1424).
az keyvault key import --hsm-name <hsm-name> --name myrsakey --pem-file mycert.key --pem-password 'mypassword'
## OR
# Note the key name (<key-name>) in the URI
az keyvault key import --id https://<hsm-name>.managedhsm.azure.net/keys/<key-name> --pem-file mycert.key --password 'mypassword'
Utilisez l’applet Add-AzKeyVaultKey de commande avec le -KeyFilePath paramètre pour importer une clé à partir d’un fichier PEM.
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyFilePath ./mycert.key -KeyFilePassword (ConvertTo-SecureString -String 'mypassword' -AsPlainText -Force) -KeyType RSA-HSM
Pour importer une clé à partir de votre HSM local vers un HSM managé, consultez Importer des clés protégées par HSM dans le HSM managé (BYOK).
Étapes suivantes