Existe-t-il un moyen de trouver à partir du fichier de sauvegarde SQL Server ou des tables MSDB si la sauvegarde est chiffrée avec TDE sans essayer de restaurer le fichier de sauvegarde?
Merci
la source
Existe-t-il un moyen de trouver à partir du fichier de sauvegarde SQL Server ou des tables MSDB si la sauvegarde est chiffrée avec TDE sans essayer de restaurer le fichier de sauvegarde?
Merci
Imaginez une seconde que vous avez une base de données de 1 téraoctet. La sauvegarde prend du temps et son cryptage prend du temps. Imaginez donc que:
À quoi vous attendriez-vous que votre requête renvoie, étant donné que dès que vous aurez terminé de restaurer la sauvegarde complète, elle continuera à appliquer TDE, en chiffrant le reste de votre base de données?
Inversement, imaginez que vous commencez avec une base de données déjà chiffrée et:
À quoi vous attendriez-vous que la requête renvoie? Ce sont des exemples de scénarios expliquant pourquoi le chiffrement TDE n'est pas l'un des champs inclus dans msdb.dbo.backupset .
J'ai voté contre la réponse de Brent , car son scénario pourrait certainement brouiller la question de savoir si la sauvegarde contenait des données TDE.
Cependant, si TDE est activé depuis un certain temps, il semble que RESTORE FILELISTONLY (Transact-SQL) puisse fournir les informations que vous recherchez. Il y a une colonne sur l'ensemble de résultats appelée
TDEThumbprint
"Affiche l'empreinte numérique de la clé de chiffrement de la base de données. L'empreinte numérique du chiffreur est un hachage SHA-1 du certificat avec lequel la clé est chiffrée".J'ai regardé certaines de mes sauvegardes qui étaient à la fois cryptées TDE et non cryptées TDE.
Les sauvegardes de mes bases de données TDE avaient l'empreinte numérique du certificat dans cette colonne et les sauvegardes qui n'avaient pas de bases de données TDE étaient nulles.
la source
En étendant la réponse de Scott, voici la requête SQL qui vous dira si une sauvegarde est chiffrée ou non.
la source