Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Cet article explique comment utiliser une clé Azure Key Vault pour Transparent Data Encryption (TDE) sur Azure SQL Database ou Azure Synapse Analytics. Pour en savoir plus sur TDE avec intégration Azure Key Vault - Prise en charge de BYOK (Bring Your Own Key), consultez TDE avec clés managées dans Azure Key Vault. Si vous recherchez des instructions du portail Azure sur l’activation du TDE avec une clé gérée par le client à partir d’Azure Key Vault, consultez Créer un serveur configuré avec l’identité managée affectée par l’utilisateur et le TDE géré par le client.
Cet article s’applique aux pools SQL dédiés Azure SQL Database, Azure SQL Managed Instance et Azure Synapse Analytics. Pour la documentation sur le chiffrement transparent des données pour les pools SQL dédiés à l’intérieur d’espaces de travail Synapse, consultez Chiffrement Azure Synapse Analytics.
Note
Azure SQL prend également en charge l’utilisation d’une clé RSA stockée dans un HSM managé en tant que protecteur TDE. Azure Managed HSM est un service cloud entièrement managé, 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-2 de niveau 3. En savoir plus sur les HSM managés.
Note
Microsoft Entra ID était précédemment connu sous le nom d'Azure Active Directory (Azure AD).
Prérequis pour PowerShell
- Vous devez avoir un abonnement Azure et être un administrateur de cet abonnement.
- [Recommandé mais facultatif] Avoir un module de sécurité matériel (HSM) ou un magasin de clés local pour créer une copie locale de l’élément de clé du protecteur TDE.
- Azure PowerShell doit être installé et en cours d’exécution.
- Créez un coffre Azure Key Vault et une clé pour utiliser TDE.
- Instructions d’utilisation d’un module de sécurité matériel (HSM) et d’Azure Key Vault
- Le coffre de clés doit avoir la propriété suivante à utiliser pour TDE :
- suppression réversible et protection contre le vidage
- Instructions d’utilisation d’un module de sécurité matériel (HSM) et d’Azure Key Vault
- La clé doit avoir les attributs suivants à utiliser pour TDE :
- La date d’activation (si définie) doit être antérieure à la date et à l’heure actuelles
- La date d’expiration (si définie) doit être postérieure à la date et à l’heure actuelles
- La clé doit être dans l’état activé
- En mesure d’effectuer des opérations get, wrap key, unwrap key
- Pour utiliser une clé de HSM managé, suivez les instructions pour créer et activer un HSM managé à l’aide d’Azure CLI
Pour des instructions d’installation du module Az PowerShell, consultez Installer Azure PowerShell.
Pour plus d’informations sur Azure Key Vault, consultez les instructions PowerShell d’Azure Key Vault et comment utiliser la suppression réversible Azure Key Vault avec PowerShell.
Attribuer une identité Microsoft Entra à votre serveur
Si vous avez un serveur existant, procédez comme suit pour ajouter une identité Microsoft Entra à votre serveur :
$server = Set-AzSqlServer -ResourceGroupName <SQLDatabaseResourceGroupName> -ServerName <LogicalServerName> -AssignIdentity
Si vous créez un serveur, utilisez l'applet de commande New-AzSqlServer avec la balise -Identity pour ajouter une identité Microsoft Entra lors de la création du serveur :
$server = New-AzSqlServer -ResourceGroupName <SQLDatabaseResourceGroupName> -Location <RegionName> `
-ServerName <LogicalServerName> -ServerVersion "12.0" -SqlAdministratorCredentials <PSCredential> -AssignIdentity
Accorder des autorisations Azure Key Vault à votre serveur
Utilisez la cmdlet Set-AzKeyVaultAccessPolicy pour accorder à votre serveur l’accès au coffre de clés avant d’utiliser une clé à partir de celui-ci pour TDE.
Set-AzKeyVaultAccessPolicy -VaultName <KeyVaultName> `
-ObjectId $server.Identity.PrincipalId -PermissionsToKeys get, wrapKey, unwrapKey
Pour ajouter des autorisations à votre serveur sur un HSM managé, ajoutez le rôle RBAC local « Utilisateur de chiffrement du service du HSM managé » au serveur. Cela permet ainsi au serveur d’effectuer des opérations get, wrap key et unwrap key sur les clés du HSM managé. Pour plus d’informations, voir Gestion de rôle HSM managé.
Ajoutez la clé Azure Key Vault au serveur et définissez le protecteur TDE
- Utilisez l’applet de commande Get-AzKeyVaultKey pour récupérer l’ID de clé à partir du coffre de clés.
- Utilisez l’applet de commande Add-AzSqlServerKeyVaultKey pour ajouter la clé du coffre de clés Azure au serveur.
- Utilisez la cmdlet Set-AzSqlServerTransparentDataEncryptionProtector pour définir la clé en tant que protecteur TDE pour toutes les ressources de serveur.
- Utilisez la cmdlet Get-AzSqlServerTransparentDataEncryptionProtector pour confirmer que le protecteur TDE a été configuré comme prévu.
Note
Pour les clés HSM managées, utilisez la version Az.Sql 2.11.1 de PowerShell ou ultérieure.
Note
La longueur combinée du nom du coffre de clés et du nom de la clé ne peut pas dépasser 94 caractères.
Conseil
Exemple KeyId d’Azure Key Vault : https://contosokeyvault.vault.azure.net/keys/Key1/<key-id>
Exemple de KeyId de HSM managé :
https://contosoMHSM.managedhsm.azure.net/keys/myrsakey
# add the key from Azure Key Vault to the server
Add-AzSqlServerKeyVaultKey -ResourceGroupName <SQLDatabaseResourceGroupName> -ServerName <LogicalServerName> -KeyId <KeyVaultKeyId>
# set the key as the TDE protector for all resources under the server
Set-AzSqlServerTransparentDataEncryptionProtector -ResourceGroupName <SQLDatabaseResourceGroupName> -ServerName <LogicalServerName> `
-Type AzureKeyVault -KeyId <KeyVaultKeyId>
# confirm the TDE protector was configured as intended
Get-AzSqlServerTransparentDataEncryptionProtector -ResourceGroupName <SQLDatabaseResourceGroupName> -ServerName <LogicalServerName>
Activer TDE
Utilisez la cmdlet Set-AzSqlDatabaseTransparentDataEncryption pour activer TDE.
Set-AzSqlDatabaseTransparentDataEncryption -ResourceGroupName <SQLDatabaseResourceGroupName> `
-ServerName <LogicalServerName> -DatabaseName <DatabaseName> -State "Enabled"
À présent, la base de données ou l’entrepôt de données a TDE activé avec une clé de chiffrement dans Azure Key Vault.
Vérifier l’état de chiffrement et l’activité de chiffrement
Utilisez la commande Get-AzSqlDatabaseTransparentDataEncryption pour obtenir l’état de chiffrement d’une base de données ou d’un entrepôt de données.
# get the encryption state of the database
Get-AzSqlDatabaseTransparentDataEncryption -ResourceGroupName <SQLDatabaseResourceGroupName> `
-ServerName <LogicalServerName> -DatabaseName <DatabaseName> `
Applets de commande PowerShell utiles
Utilisez la cmdlet Set-AzSqlDatabaseTransparentDataEncryption pour désactiver TDE.
Set-AzSqlDatabaseTransparentDataEncryption -ServerName <LogicalServerName> -ResourceGroupName <SQLDatabaseResourceGroupName> ` -DatabaseName <DatabaseName> -State "Disabled"Utilisez l’applet de commande Get-AzSqlServerKeyVaultKey pour renvoyer la liste des clés Azure Key Vault ajoutées au serveur.
# KeyId is an optional parameter, to return a specific key version Get-AzSqlServerKeyVaultKey -ServerName <LogicalServerName> -ResourceGroupName <SQLDatabaseResourceGroupName>Utilisez Remove-AzSqlServerKeyVaultKey pour supprimer une clé Azure Key Vault du serveur.
# the key set as the TDE Protector cannot be removed Remove-AzSqlServerKeyVaultKey -KeyId <KeyVaultKeyId> -ServerName <LogicalServerName> -ResourceGroupName <SQLDatabaseResourceGroupName>
Résolution des problèmes
Si le coffre de clés est introuvable, vérifiez que vous êtes dans le bon abonnement.
Get-AzSubscription -SubscriptionId <SubscriptionId>
Si la nouvelle clé ne peut pas être ajoutée au serveur ou si elle ne peut pas être mise à jour en tant que protecteur TDE, vérifiez les points suivants :
- La clé ne doit pas avoir de date d’expiration.
- La clé doit avoir les opérations get, wrap key et unwrap key activées.
Contenu connexe
- Découvrez comment faire pivoter le protecteur TDE d’un serveur pour se conformer à des exigences de sécurité : Faites pivoter le protecteur Transparent Data Encryption à l’aide de PowerShell.
- Découvrez comment supprimer un protecteur TDE potentiellement compromis : Supprimer un protecteur Transparent Data Encryption (TDE).