CREATE MASTER KEY (Transact-SQL)
Crea una chiave master del database.
Sintassi
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
Argomenti
- PASSWORD ='password'
Specifica la password utilizzata per crittografare la chiave master del database. password deve soddisfare i criteri password Windows del computer che sta eseguendo l'istanza di SQL Server.
Osservazioni
La chiave master del database è una chiave simmetrica utilizzata per proteggere le chiavi private dei certificati e le chiavi asimmetriche presenti nel database. Al momento della creazione, la chiave master viene crittografata con l'algoritmo Triple DES e una password specificata dall'utente. Per consentire la decrittografia automatica della chiave master, una copia della chiave viene crittografata con la chiave master del servizio e archiviata sia nel database che nel database master. La copia archiviata nel database master viene generalmente aggiornata in modo automatico in seguito a ogni modifica della chiave master. È possibile modificare questa impostazione predefinita utilizzando l'opzione DROP ENCRYPTION BY SERVICE MASTER KEY dell'istruzione ALTER MASTER KEY. Per aprire una chiave master non crittografata con la chiave master del servizio, è necessario utilizzare l'istruzione OPEN MASTER KEY e una password.
La colonna is_master_key_encrypted_by_server della vista del catalogo sys.databases nel database master indica se la chiave master del database è crittografata con la chiave master del servizio.
Le informazioni sulla chiave master del database sono visibili nella vista del catalogo sys.symmetric_keys.
Importante |
---|
È consigliabile creare una copia di backup della chiave master utilizzando l'istruzione BACKUP MASTER KEY e archiviare la copia di backup in una posizione esterna protetta. |
Autorizzazioni
È richiesta l'autorizzazione CONTROL per il database.
Esempi
Nell'esempio seguente viene creata una chiave master per il database AdventureWorks. La chiave viene crittografata con la password 23987hxJ#KL95234nl0zBe.
USE AdventureWorks;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';
GO