OPEN MASTER KEY (Transact-SQL)

Si applica a:SQL Serverdatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsSistema di Piattaforma Analitica (PDW)Database SQL in Microsoft Fabric

Apre la chiave master del database corrente.

Convenzioni relative alla sintassi Transact-SQL

Syntax

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'   

Note

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

Arguments

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

Remarks

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 utilizzare l'affermazione 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 (DMK). Una volta decriptato il DMK, hai l'opzione di abilitare la decrittazione automatica in futuro utilizzando l'istruzione ALTER MASTER KEY REGENERATE per fornire al server una copia del DMK, criptata 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 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.

Puoi escludere la Chiave Master del Database di un database specifico dalla gestione automatica delle chiavi usando l'istruzione ALTER MASTER KEY con l'opzione DROP ENCRYPTION BY SERVICESERVICE 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.

Permissions

È richiesta l'autorizzazione CONTROL per il database.

Examples

Nell'esempio seguente viene aperta la chiave master del database AdventureWorks2025 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  

Vedere anche