Share via


Chiffrement transparent des données avec Azure SQL Database

Azure SQL chiffrement transparent des données de base de données (préversion) permet de se protéger contre les menaces d’activité malveillante en effectuant un chiffrement et un déchiffrement en temps réel de la base de données, des sauvegardes associées et des fichiers journaux des transactions au repos sans nécessiter de modifications de l’application.

Le chiffrement transparent des données chiffre le stockage d’une base de données entière à l’aide d’une clé symétrique appelée clé de chiffrement de base de données. Dans la base de données SQL, la clé de chiffrement de base de données est protégée par un certificat de serveur intégré. Le certificat de serveur intégré est unique pour chaque serveur SQL Database. Si une base de données a une relation GeoDR, elle est protégée par une clé différente sur chaque serveur. Si deux bases de données sont connectées au même serveur, elles partagent le même certificat intégré. Microsoft fait automatiquement alterner ces certificats au moins tous les 90 jours. Pour obtenir une description générale de TDE, consultez Chiffrement transparent des données (TDE).

Azure SQL Database ne prend pas en charge l’intégration d’Azure Key Vault à TDE. SQL Server s’exécutant sur une machine virtuelle Azure peut utiliser une clé asymétrique de la Key Vault. Pour plus d'informations, consultez Example A: Transparent Data Encryption by Using an Asymmetric Key from the Key Vault.

S’applique à : SQL Database V12 (préversion dans certaines régions).

Important

Il s'agit actuellement d'une fonctionnalité d'aperçu. Je reconnais et accepte que l’implémentation de SQL Database chiffrement transparent des données dans mes bases de données est soumise aux conditions de la préversion de mon contrat de licence (par exemple, le Accord Entreprise, le Contrat Microsoft Azure ou le Contrat d’abonnement Microsoft Online), ainsi que toutes les conditions d’utilisation supplémentaires applicables pour Microsoft Azure Preview.

La préversion de status de TDE s’applique même dans le sous-ensemble de régions géographiques où la famille de versions V12 de SQL Database est annoncée comme étant désormais en disponibilité générale status. TDE pour SQL Database n’est pas destiné à être utilisé dans les bases de données de production jusqu’à ce que Microsoft annonce que TDE est promu de la préversion à la disponibilité générale. Pour plus d’informations sur SQL Database V12, consultez Nouveautés de Azure SQL Database.

Autorisations

Pour vous inscrire à la version Preview et configurer TDE via le portail Azure, en utilisant l'API REST ou en utilisant PowerShell, vous devez être connecté en tant que propriétaire, collaborateur ou gestionnaire de sécurité SQL Azure.

Pour configurer TDE à l’aide de Transact-SQL, les éléments suivants sont nécessaires :

  • Vous devez être déjà inscrit pour TDE en version Preview.

  • Pour créer la clé de chiffrement de base de données, vous devez être administrateur SQL Database ou être membre du rôle dbmanager dans la base de données master et disposer de l’autorisation CONTROL sur la base de données.

  • L'exécution de l'instruction ALTER DATABASE avec l'option SET requiert seulement l'appartenance au rôle dbmanager .

S'inscrire pour la version Preview de TDE et l'activer sur une base de données

  1. Visitez le portail Azure à l’adresse https://portal.azure.com et connectez-vous avec votre compte Administrateur ou Contributeur Azure.

  2. Dans la bannière de gauche, cliquez sur PARCOURIR, puis cliquez sur Bases de données SQL.

  3. Avec l'option Bases de données SQL sélectionnée dans le volet gauche, cliquez sur votre base de données utilisateur.

  4. Dans le volet de la base de données, cliquez sur Tous les paramètres.

  5. Dans le volet Paramètres , cliquez sur Chiffrement des données transparent (version Preview) pour ouvrir le volet Chiffrement transparent des données – version PREVIEW . Si vous ne vous êtes pas déjà inscrit à la version Preview de TDE, les paramètres de chiffrement de données seront désactivés jusqu'à ce que vous soyez inscrit.

  6. Cliquez sur CONDITIONS D'UTILISATION DE LA VERSION PREVIEW.

  7. Lisez les termes de la préversion et, si vous acceptez les termes, sélectionnez la zone Chiffrement transparent des donnéesPréafficher les conditions d’case activée, puis cliquez sur OK en bas de la page. Revenez au panneau Chiffrement des donnéesPREVIEW , où le bouton Chiffrement des données doit maintenant être activé.

  8. Dans le volet Chiffrement des données, version PREVIEW , changez le bouton Chiffrement des données en Activé, puis cliquez sur Enregistrer (en haut de la page) pour appliquer le paramètre. L'élément État du chiffrement indiquera approximativement la progression du chiffrement transparent des données.

    SQLDB_TDE_TermsNewUI SQLDB_TDE_TermsNewUI

    Vous pouvez également surveiller la progression du chiffrement en vous connectant à SQL Database à l’aide d’un outil de requête tel que SQL Server Management Studio en tant qu’utilisateur de base de données avec l’autorisation VIEW DATABASE STATE. Interrogez la encryption_state colonne de la vue sys.dm_database_encryption_keys .

Activation de TDE sur SQL Database en utilisant Transact-SQL

Les étapes suivantes supposent que vous êtes déjà inscrit à la version Preview.

  1. Connectez-vous à la base de données en utilisant une connexion correspondant à un administrateur ou à un membre du rôle dbmanager dans la base de données master.

  2. Exécutez les instructions suivantes pour créer une clé de chiffrement de base de données et pour chiffrer la base de données.

    -- Create the database encryption key that will be used for TDE.
    CREATE DATABASE ENCRYPTION KEY 
    WITH ALGORITHM = AES_256 
    ENCRYPTION BY SERVER CERTIFICATE ##MS_TdeCertificate##;
    
    -- Enable encryption
    ALTER DATABASE [AdventureWorks] SET ENCRYPTION ON;
    GO
    
  3. Pour surveiller la progression du chiffrement sur SQL Database, les utilisateurs de base de données disposant de l’autorisation VIEW DATABASE STATE peuvent interroger la encryption_state colonne de la vue sys.dm_database_encryption_keys.

Activation de TDE sur SQL Database en utilisant PowerShell

En utilisant Azure PowerShell, vous pouvez exécuter la commande suivante pour activer ou désactiver TDE. Vous devez connecter votre compte dans la fenêtre PS avant d'exécuter la commande. Les étapes suivantes supposent que vous êtes déjà inscrit à la version Preview. Pour plus d'informations sur PowerShell, consultez Comment installer et configurer Azure PowerShell.

  1. Pour activer TDE, retournez l'état de TDE et affichez l'activité de chiffrement.

    Switch-AzureMode -Name AzureResourceManager
    Set-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1" -State "Enabled"
    
    Get-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1"
    Get-AzureSqlDatabaseTransparentDataEncryptionActivity -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1"
    
  2. Pour désactiver TDE :

    Set-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1" -State "Disabled"
    Switch-AzureMode -Name AzureServiceManagement
    

Déchiffrement d'une base de données protégée par TDE sur SQL Database

Pour désactiver TDE en utilisant le portail Azure

  1. Visitez le portail Azure à l’adresse https://portal.azure.com et connectez-vous avec votre compte Administrateur ou Contributeur Azure.

  2. Dans la bannière de gauche, cliquez sur PARCOURIR, puis cliquez sur Bases de données SQL.

  3. Avec l'option Bases de données SQL sélectionnée dans le volet gauche, cliquez sur votre base de données utilisateur.

  4. Dans le volet de la base de données, cliquez sur Tous les paramètres.

  5. Dans le volet Paramètres , cliquez sur Chiffrement des données transparent (version Preview) pour ouvrir le volet Chiffrement transparent des données – version PREVIEW .

  6. Dans le volet Chiffrement transparent des données, version PREVIEW , changez le bouton Chiffrement des données en Désactivé, puis cliquez sur Enregistrer (en haut de la page) pour appliquer le paramètre. L'élément État du chiffrement indiquera approximativement la progression du déchiffrement transparent des données.

    Vous pouvez également surveiller la progression du déchiffrement en vous connectant à SQL Database à l’aide d’un outil de requête tel que Management Studio en tant qu’utilisateur de base de données avec l’autorisation VIEW DATABASE STATE. Interrogez la encryption_state colonne de la vue sys.dm_database_encryption_keys.

Pour désactiver TDE en utilisant Transact-SQL

  1. Connectez-vous à la base de données en utilisant une connexion correspondant à un administrateur ou à un membre du rôle dbmanager dans la base de données master.

  2. Exécutez les instructions suivantes pour déchiffrer la base de données.

    -- Enable encryption
    ALTER DATABASE [AdventureWorks] SET ENCRYPTION OFF;
    GO
    
  3. Pour surveiller la progression du chiffrement sur SQL Database, les utilisateurs de base de données disposant de l’autorisation VIEW DATABASE STATE peuvent interroger la encryption_state colonne de la vue sys.dm_database_encryption_keys.

Utilisation des bases de données protégées par TDE sur SQL Database

Il n'est pas nécessaire de déchiffrer les bases de données pour effectuer des opérations dans Azure. La base de données cible hérite de façon transparente des paramètres de TDE sur la base de données source ou sur la base de données principale. Cela inclut les opérations impliquant :

  • La géo-restauration

  • La restauration à un moment donné en libre-service

  • La restauration d'une base de données supprimée

  • La géo-réplication active

  • La création d'une copie de base de données

Le déplacement d'une base de données protégée par TDE en utilisant des fichiers .Bacpac

Lors de l’exportation d’une base de données protégée par TDE à l’aide de la fonction Exporter la base de données dans le portail de base de données Azure SQL ou de l’Assistant Importation et Exportation SQL Server, le contenu de la base de données n’est pas chiffré. Le contenu est stocké dans des fichiers .bacpac qui ne sont pas chiffrés. Veillez à protéger les fichiers .bacpac de façon appropriée et à activer le TDE une fois l'importation de la base de données terminée.

Activer TDE à l’aide d’EKM

Voir aussi

Transparent Data Encryption (TDE)CREATE CREDENTIAL (Transact-SQL)CREATE ASYMMETRIC KEY (Transact-SQL)CREATE DATABASE ENCRYPTION KEY (Transact-SQL)ALTER DATABASE DATABASE (Transact-SQL)ALTER DATABASE SET Options (Transact-SQL)