Condividi tramite


OPEN MASTER KEY (Transact-SQL)

Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure database SQL di Azure Synapse Analytics Platform System (PDW) in Microsoft Fabric

Apre la chiave master del database corrente.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'   

Nota

Questa sintassi non è supportata da pool SQL serverless in Azure Synapse Analytics.

Argomenti

'password'
Password con cui è stata crittografata la chiave master del database.

Osservazioni:

Se la chiave master del database è stata crittografata con la chiave master del servizio, verrà aperta automaticamente quando è necessaria per operazioni di decrittografia o crittografia. In questo caso non è necessario usare l'istruzione OPEN MASTER KEY.

Quando un database viene collegato per la prima volta a una nuova istanza di SQL Server o viene ripristinato, nel server non viene ancora archiviata una copia della chiave master del database (crittografata dalla chiave master del servizio). È necessario usare l'istruzione OPEN MASTER KEY per decrittografare la chiave master del database. Dopo aver decrittografato la DMK, è possibile usare l'istruzione ALTER MASTER KEY REGENERATE per abilitare la decrittografia automatica per le operazioni successive, in modo da fornire al server una copia della DMK crittografata con la chiave master del servizio (SMK). Quando un database è stato aggiornato da una versione precedente, la DMK deve essere rigenerata per usare l'algoritmo AES più recente. Per altre informazioni sulla rigenerazione della chiave DMK, vedere ALTER MASTER KEY (Transact-SQL). Il tempo richiesto per rigenerare la chiave DMK e aggiornarla ad AES dipende dal numero di oggetti protetti dalla DMK. È necessario rigenerare la chiave DMK per l'aggiornamento ad AES una sola volta e l'operazione non influenza le rigenerazioni future che fanno parte di una strategia di rotazione della chiave.

È possibile escludere la chiave master di un database specifico dalla gestione automatica delle chiavi utilizzando l'istruzione ALTER MASTER KEY con l'opzione DROP ENCRYPTION BY SERVICE MASTER KEY. In seguito, sarà necessario aprire in modo esplicito la chiave master del database con una password.

Se si esegue il rollback di una transazione che include l'apertura esplicita della chiave master del database, la chiave rimarrà aperta.

Autorizzazioni

È richiesta l'autorizzazione CONTROL per il database.

Esempi

Nell'esempio seguente viene aperta la chiave master del database AdventureWorks2022 crittografata con una password.

USE AdventureWorks2022;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = '43987hkhj4325tsku7';  
GO  

Esempi: Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW)

Nell'esempio seguente viene aperto il database master, che è stato crittografato con una password.

USE master;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = '43987hkhj4325tsku7';  
GO  
CLOSE MASTER KEY;  
GO  

Vedi anche