CREATE MASTER KEY (Transact-SQL)
Crea una chiave master del database.
Convenzioni della sintassi Transact-SQL
Sintassi
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
Argomenti
- PASSWORD ='password'
Password utilizzata per crittografare la chiave master nel 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'algoritmoAES_256 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 sia nel database master. La copia archiviata nel database master viene in genere aggiornata in modo automatico ogni volta che la chiave master viene modificata. È 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 eseguire il backup della chiave master utilizzando l'istruzione BACKUP MASTER KEY e archiviarlo in un percorso esterno sicuro. |
Le chiavi master del servizio e del database vengono protette mediante l'algoritmo AES-256.
Autorizzazioni
È richiesta l'autorizzazione CONTROL per il database.
Esempi
Nell'esempio seguente viene creata una chiave master per il database AdventureWorks2012. La chiave viene crittografata con la password 23987hxJ#KL95234nl0zBe.
USE AdventureWorks2012;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';
GO
Vedere anche
Riferimento
sys.symmetric_keys (Transact-SQL)
OPEN MASTER KEY (Transact-SQL)
ALTER MASTER KEY (Transact-SQL)
DROP MASTER KEY (Transact-SQL)
CLOSE MASTER KEY (Transact-SQL)