Partager via


CREATE DATABASE ENCRYPTION KEY (Transact-SQL)

Crée une clé de chiffrement permettant de chiffrer une base de données de façon transparente. Pour plus d'informations sur le chiffrement transparent de bases de données, consultez Présentation du chiffrement transparent des données (TDE).

Icône Lien de rubriqueConventions de syntaxe de Transact-SQL

Syntaxe

CREATE DATABASE ENCRYPTION KEY
       WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
   ENCRYPTION BY SERVER 
    {
        CERTIFICATE Encryptor_Name |
        ASYMMETRIC KEY Encryptor_Name
    }
[ ; ]

Arguments

  • WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
    Spécifie l'algorithme de chiffrement utilisé pour la clé de chiffrement.

  • ENCRYPTION BY SERVER CERTIFICATE Encryptor_Name
    Spécifie le nom du chiffreur utilisé pour chiffrer la clé de chiffrement de base de données.

  • ENCRYPTION BY SERVER ASYMMETRIC KEY Encryptor_Name
    Spécifie le nom de la clé asymétrique utilisée pour chiffrer la clé de chiffrement de base de données. Pour chiffrer la clé de chiffrement de base de données avec une clé asymétrique, la clé asymétrique doit résider sur un fournisseur de gestion de clés extensible.

Notes

Une clé de chiffrement de base de données est requise avant qu'une base de données ne puisse être chiffrée en utilisant le chiffrement transparent de bases de données. Lorsqu'une base de données est chiffrée de façon transparente, elle l'est entièrement au niveau des fichiers, sans aucune modification de code spéciale. Le certificat ou la clé asymétrique utilisé pour chiffrer la clé de chiffrement de base de données doit se trouver dans la base de données système master.

Les instructions de chiffrement de base de données ne sont autorisées que sur les bases de données utilisateur.

La clé de chiffrement de base de données ne peut pas être exportée de la base de données. Elle est uniquement disponible pour le système, les utilisateurs qui disposent d'autorisations de débogage sur le serveur et les utilisateurs qui ont accès aux certificats qui chiffrent et déchiffrent la clé de chiffrement de base de données.

La clé de chiffrement de base de données n'a pas besoin d'être régénérée lorsqu'un propriétaire de base de données (dbo) est modifié.

Autorisations

Nécessite l'autorisation CONTROL sur la base de données et l'autorisation VIEW DEFINITION sur le certificat ou la clé asymétrique permettant de chiffrer la clé de chiffrement de base de données.

Exemples

Pour des exemples supplémentaires utilisant le chiffrement transparent de données, consultez Présentation du chiffrement transparent des données (TDE) et Procédure : activer le chiffrement transparent des données à l'aide de la gestion de clés extensible (EKM).

Dans l'exemple suivant, une clé de chiffrement de base de données est créée à l'aide de l'algorithme AES_256, et protège la clé privée à l'aide d'un certificat nommé MyServerCert.

USE AdventureWorks2008R2;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
GO