Activation du chiffrement TDE (Transparent Data Encryption) sur des bases de données SQL Server

SQL Server contient un mécanisme TDE (Transparent Data Encryption) intégré qui chiffre les données résidant dans la base de données ou dans les sauvegardes sur le support physique.

Avant de commencer

TDE est disponible uniquement dans la version Enterprise Edition de Microsoft™ SQL Server 2008 et versions suivantes. Pour la version Standard Edition, voir Chiffrement, sauvegarde et restauration d'une base de données SQL Server avec le système de fichiers EFS.

Pourquoi et quand exécuter cette tâche

Pour activer le chiffrement TDE sur SQL Server, vous devez disposer des autorisations normales associées à la création d'une clé principale de base de données et de certificats dans la base de données maître. Vous devez également posséder les autorisations CONTROL sur la base de données utilisateur.

L'activation du chiffrement est une tâche courante pour les administrateurs de base de données. Nous avons fourni à des fins pratiques un script SQL qui convient parfaitement pour une configuration SQL Server type : EnableTDE.zip. (Si le fichier n'est pas téléchargé, cliquez avec le bouton droit de la souris sur le lien et enregistrez le fichier sur votre disque dur.)

Remarque : Pour les utilisateurs effectuant une mise à niveau :
  1. Activez TDE à l'issue de la mise à niveau de base de données pour améliorer les performances de cette mise à niveau.
  2. Même si vous pouvez exécuter ces étapes à n'importe quel moment, vous devez les terminer pour que la base de données soit chiffrée. L'activation du chiffrement TDE avant le processus de mise à niveau permet de protéger votre base de données au cours de la mise à niveau et par la suite.

Procédure

  1. Ouvrez le composant SQL Management Studio de votre installation de SQL Server 2008, 2008R2, 2012 ou 2014.
  2. Connectez-vous à la base de données que vous souhaitez chiffrer. Vous pouvez ainsi vérifier que la base de données a été créée et qu'elle est disponible.
  3. Accédez à l'emplacement où vous avez téléchargé le fichier EnableTDE.zip. Procédez à l'extraction du fichier et ouvrez le script. (Fichier > Ouvrir > Fichier). Vous remarquerez que plusieurs commandes seront exécutées sur le serveur.
  4. Avant d'exécuter le script, vous devez définir trois zones pour votre environnement. Dans la section des commentaires du script, elles sont toutes signalées par "ACTION REQUIRED" :
    1. DECLARE @mot_de_passeMKP : mot de passe de clé principale utilisé pour créer la clé principale dans la base de données [master] (maître).
    2. DECLARE @nom_base_de_données : nom de la base de données sur laquelle vous souhaitez activer le chiffrement.
    3. (Facultatif) DECLARE @Mot_de_passe_sauvegarde : Mot de passe de sauvegarde de certificat. Ce mot de passe est utilisé pour sécuriser la sauvegarde de certificat et il est obligatoire pour restaurer ce certificat sur une autre machine.
  5. Après avoir mis les zones à jour, lancez le script (Query >Execute). Activation par le script de TDE sur SQL Server.
  6. Une fois l'exécution du script terminée, le résultat s'affiche dans la fenêtre "Messages" de SQL Management Studio.
    Remarque : Vous pouvez également effectuer la vérification via SQL Management Studio. Cliquez avec le bouton droit de la souris sur "nom_base_de_données->Tâches->Gérer le chiffrement de base de données". Vous pourrez constater que la case "Définir le chiffrement de la base de données sur" sera cochée.

Résultats

Important : Lorsque vous avez terminé, prenez soin de noter les mots de passe utilisés dans ce script et de réaliser une copie de sauvegarde du certificat. La copie de sauvegarde du certificat se compose de deux fichiers, AppScanEntCert.bak et AppScanEntCert.pvk. Ils sont stockés avec le fichier de base de données .mdf qui se trouve par défaut dans le dossier suivant :
  • (SQL 2014) C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA
  • (SQL 2012) C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA
  • (SQL 2008) C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
  • (SQL 2008 R2) C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA