Configurer la rotation automatique des clés de chiffrement dans Azure Key Vault

Vue d’ensemble

La rotation automatique des clés de chiffrement dans Key Vault permet aux utilisateurs de configurer Key Vault de manière à générer automatiquement une nouvelle version de clé à une fréquence spécifiée. Pour configurer la rotation, vous pouvez utiliser la stratégie de rotation des clés, qui peut être définie pour chaque clé.

Il est recommandé d’effectuer une rotation des clés de chiffrement au moins tous les deux ans afin de respecter les meilleures pratiques en matière de chiffrement.

Pour plus d’informations sur la façon dont les objets sont versionnés dans Key Vault, consultez Objets, identificateurs et versioning Key Vault.

Intégration aux services Azure

Cette fonctionnalité permet une rotation de bout en bout sans intervention pour le chiffrement au repos des services Azure avec une clé gérée par le client (CMK) stockée dans Azure Key Vault. Consultez la documentation spécifique des services Azure pour voir si le service couvre la rotation de bout en bout.

Pour plus d’informations sur le chiffrement des données dans Azure, consultez :

Tarifs

Chaque rotation de clé planifiée entraîne un coût supplémentaire. Pour plus d’informations, consultez la page Tarification d’Azure Key Vault

Autorisations requises

La fonctionnalité de rotation des clés de Key Vault nécessite des autorisations de gestion des clés. Vous pouvez attribuer un rôle « Officier de chiffrement Key Vault » pour gérer la stratégie de rotation et la rotation à la demande.

Pour plus d’informations sur l’utilisation du modèle d’autorisation RBAC Azure Key Vault et l’attribution de rôles Azure, consultez Utiliser un contrôle d’accès en fonction du rôle (RBAC) Azure pour contrôler l’accès aux clés, certificats et secrets

Notes

Si vous utilisez un modèle d’autorisation des stratégies d’accès, vous devez définir les autorisations clés « Effectuer une rotation », « Définir une stratégie de rotation » et « Obtenir une stratégie de rotation » pour gérer la stratégie de rotation des clés.

Stratégie de rotation des clés

La stratégie de rotation de clé permet aux utilisateurs de configurer la rotation et les notifications Event Grid à proximité de la notification d’expiration.

Paramètres de la stratégie de rotation des clés :

  • Heure d’expiration : intervalle d’expiration de la clé. Il permet de définir la date d’expiration sur une clé qui vient de faire l’objet d’une rotation. Cela n’affecte pas une clé active.
  • Activé/désactivé : indicateur pour activer ou désactiver la rotation pour la clé
  • Types de rotation :
    • Renouveler automatiquement à un moment donné après la création (par défaut)
    • Renouveler automatiquement à un moment donné avant l’expiration. L’« Heure d’expiration » doit être définie sur la stratégie de rotation et la « Date d’expiration » doit l’être sur la clé.
  • Durée de la rotation : intervalle de rotation de la clé, la valeur minimale est de sept jours à partir de la création et de sept jours à partir de l’heure d’expiration
  • Heure de notification : intervalle d’événement d’expiration imminente de la clé pour la notification de grille d’événement. L’« Heure d’expiration » doit être définie sur la stratégie de rotation et la « Date d’expiration » doit l’être sur la clé.

Important

La rotation des clés génère une nouvelle version de clé d’une clé existante avec un nouveau matériau de clé. Les services cibles doivent utiliser l’URI de clé sans version pour actualiser automatiquement la dernière version de la clé. Assurez-vous que votre solution de chiffrement de données stocke l’URI de clé versionné avec des données pour pointer vers le même matériel de clé pour chiffrer/désenvelopper que pour les opérations chiffrer/envelopper afin d’éviter toute interruption de vos services. Tous les services Azure suivent actuellement ce modèle pour le chiffrement des données.

Configuration de la stratégie de rotation

Configurer une stratégie de rotation des clés

Configurez une stratégie de rotation des clés lors de la création de la clé.

Configurer la rotation pendant la création des clés

Configurez une stratégie de rotation sur des clés existantes.

Configurer la rotation d’une clé existante

Azure CLI

Enregistrez une stratégie de rotation des clés dans un fichier. Exemple de stratégie de rotation des clés :

{
  "lifetimeActions": [
    {
      "trigger": {
        "timeAfterCreate": "P18M",
        "timeBeforeExpiry": null
      },
      "action": {
        "type": "Rotate"
      }
    },
    {
      "trigger": {
        "timeBeforeExpiry": "P30D"
      },
      "action": {
        "type": "Notify"
      }
    }
  ],
  "attributes": {
    "expiryTime": "P2Y"
  }
}

Définissez la stratégie de rotation sur une clé passant un fichier précédemment enregistré à l’aide de la commande Azure CLI az keyvault key rotation-policy update.

az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>

Azure PowerShell

Définissez la stratégie de rotation à l’aide de l’applet de commande Azure Powershell Set-AzKeyVaultKeyRotationPolicy.

Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}

Rotation à la demande

La rotation des clés peut être appelée manuellement.

Portail

Cliquez sur « Effectuer une rotation maintenant » pour appeler la rotation.

Rotation à la demande

Azure CLI

Utilisez la commande de rotation de clé az keyvault key rotate d’Azure CLI pour effectuer la rotation de la clé.

az keyvault key rotate --vault-name <vault-name> --name <key-name>

Azure PowerShell

Utilisez l’applet de commande Invoke-AzKeyVaultKeyRotation d’Azure PowerShell.

Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>

Configurer une notification d’expiration imminente de la clé

Configuration de la notification d’expiration pour l’événement d’expiration imminente de la clé de la grille d’événement. Dans le cas où la rotation automatisée ne peut pas être utilisée, comme lors de l’importation d’une clé à partir du HSM local, vous pouvez configurer une notification d’expiration proche comme rappel pour la rotation manuelle ou comme déclencheur pour une rotation automatisée personnalisée via l’intégration à Event Grid. Vous pouvez configurer la notification en jours, mois et années avant l’expiration afin de déclencher un événement d’expiration imminente.

Configurer les notifications

Pour plus d’informations sur les notifications de grille d’événement dans Key Vault, consultez Azure Key Vault en tant que source Event Grid

Configurer la rotation des clés avec un modèle ARM

Vous pouvez également configurer une stratégie de rotation des clés à l’aide de modèles ARM.

Notes

Un rôle « Contributeur Key Vault » doit être configuré sur Key Vault avec Azure RBAC pour déployer la clé par le biais d’un plan de gestion.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "vaultName": {
            "type": "String",
            "metadata": {
                "description": "The name of the key vault to be created."
            }
        },
        "keyName": {
            "type": "String",
            "metadata": {
                "description": "The name of the key to be created."
            }
        },
        "rotatationTimeAfterCreate": {
            "defaultValue": "P18M",
            "type": "String",
            "metadata": {
                "description": "Time duration to trigger key rotation. i.e. P30D, P1M, P2Y"
            }
        },
        "expiryTime": {
            "defaultValue": "P2Y",
            "type": "String",
            "metadata": {
                "description": "The expiry time for new key version. i.e. P90D, P2M, P3Y"
            }
        },
        "notifyTime": {
            "defaultValue": "P30D",
            "type": "String",
            "metadata": {
                "description": "Near expiry Event Grid notification. i.e. P30D"
            }
        }

    },
    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults/keys",
            "apiVersion": "2021-06-01-preview",
            "name": "[concat(parameters('vaultName'), '/', parameters('keyName'))]",
            "location": "[resourceGroup().location]",
            "properties": {
                "vaultName": "[parameters('vaultName')]",
                "kty": "RSA",
                "rotationPolicy": {
                    "lifetimeActions": [
                        {
                            "trigger": {
                                "timeAfterCreate": "[parameters('rotatationTimeAfterCreate')]",
                                "timeBeforeExpiry": ""
                            },
                            "action": {
                                "type": "Rotate"
                            }
                        },
                        {
                            "trigger": {
                                "timeBeforeExpiry": "[parameters('notifyTime')]"
                            },
                            "action": {
                                "type": "Notify"
                            }
                        }

                    ],
                    "attributes": {
                        "expiryTime": "[parameters('expiryTime')]"
                    }
                }
            }
        }
    ]
}

Configurer une stratégie de gouvernance de la rotation des clés

À l’aide du service Azure Policy, vous pouvez régir le cycle de vie des clés et vous assurer de la configuration de toutes les clés pour une rotation dans un délai déterminé.

Créer et attribuer une définition de stratégie

  1. Accéder à la ressource de stratégie
  2. Sélectionnez Affectations sous Création dans la partie gauche de la page Azure Policy.
  3. Sélectionnez Attribuer une stratégie en haut de la page. Ce bouton ouvre la page Affectation de stratégie.
  4. Entrez les informations suivantes :
  5. Renseignez les champs supplémentaires. Naviguez dans les onglets en cliquant sur les boutons Précédent et Suivant en bas de la page.
  6. Sélectionner Vérifier + créer
  7. Sélectionnez Créer

Une fois que la stratégie intégrée a été affectée, l’analyse peut prendre jusqu’à 24 heures. Une fois l’analyse terminée, vous pouvez consulter les résultats de la conformité comme suit.

Capture d’écran de la conformité à la stratégie de rotation de clé.

Ressources