CREATE MASTER KEY (Transact-SQL)

Permet de créer une clé principale de base de données.

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

Syntaxe

CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'

Arguments

  • PASSWORD = 'password'
    Mot de passe utilisé pour chiffrer la clé principale dans la base de données. password doit satisfaire aux critères de la stratégie de mot de passe Windows de l'ordinateur qui exécute l'instance de SQL Server.

Notes

La clé principale de base de données est une clé symétrique qui permet de protéger les clés privées des certificats et des clés asymétriques présentes dans la base de données. Lors de sa création, la clé principale est chiffrée à l'aide de l'algorithme Triple DES et d'un mot de passe fourni par l'utilisateur. Pour permettre le déchiffrement automatique de la clé principale, une copie de la clé est chiffrée à l'aide de la clé principale de service et stockée dans la base de données et dans master. En général, la copie stockée dans master est mise à jour sans avertissement chaque fois que la clé principale est modifiée. Ce comportement par défaut peut être changé à l'aide de l'option DROP ENCRYPTION BY SERVICE MASTER KEY de ALTER MASTER KEY. Une clé principale qui n'est pas chiffrée par la clé principale de service doit être ouverte à l'aide de l'instruction OPEN MASTER KEY et d'un mot de passe.

La colonne is_master_key_encrypted_by_server de l'affichage catalogue sys.databases dans master indique si la clé principale de base de données est chiffrée au moyen de la clé principale de service.

Des informations sur la clé principale de base de données sont consultables dans l'affichage catalogue sys.symmetric_keys.

Important

Vous devez sauvegarder la clé principale à l'aide de l'instruction BACKUP MASTER KEY et stocker la sauvegarde en lieu sûr, en dehors de votre lieu de travail.

Autorisations

Requiert l'autorisation CONTROL sur la base de données.

Exemples

Dans l'exemple ci-dessous, une clé principale de base de données est créée pour la base de données AdventureWorks2008R2. La clé est chiffrée à l'aide du mot de passe 23987hxJ#KL95234nl0zBe.

USE AdventureWorks2008R2;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';
GO