OPEN MASTER KEY (Transact-SQL)
Abre a chave mestra do banco de dados atual.
Convenções da sintaxe Transact-SQL
Sintaxe
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'
Argumentos
- 'password'
A senha com que a chave mestra do banco de dados foi criptografada.
Comentários
Se a chave mestra do banco de dados for criptografada com a chave mestra de serviço, ela será aberta automaticamente quando for necessária para descriptografia ou criptografia. Nesse caso, não é necessário usar a instrução OPEN MASTER KEY.
Quando um banco de dados é anexado ou restaurado pela primeira vez a uma nova instância do SQL Server, uma cópia da chave mestra de banco de dados (criptografada pela chave mestra de serviço) ainda não está armazenada no servidor. Você deve usar a instrução OPEN MASTER KEY para descriptografar a chave mestra do banco de dados (DMK). Uma vez que a DMK foi descriptografada, você tem a opção de permitir a descriptografia automática futuramente usando a instrução ALTER MASTER KEY REGENERATE para fornecer ao servidor uma cópia da DMK criptografada com a SMK. Quando um banco de dados for atualizado de uma versão anterior, a DMK deverá ser regenerada para usar o algoritmo AES mais recente. Para obter mais informações sobre a regeneração da DMK, consulte ALTER MASTER KEY (Transact-SQL). O tempo necessário para regenerar a chave DMK para atualizar o AES depende do número de objetos protegidos pela DMK. É necessário regenerar a chave DMK para atualizar o AES somente uma vez, isso não tem impacto sobre regenerações futuras como parte de uma estratégia de rotação de chave.
É possível excluir a chave mestra de banco de dados de um banco de dados específico do gerenciamento automático de chave usando a instrução ALTER MASTER KEY com a opção DROP ENCRYPTION BY SERVICE MASTER KEY. Posteriormente, você deve abrir a chave mestra do banco de dados explicitamente com uma senha.
Se uma transação em que a chave mestra de banco de dados foi aberta explicitamente for revertida, a chave permanecerá aberta.
Permissões
Requer a permissão CONTROL no banco de dados.
Exemplos
O exemplo a seguir abre a chave mestra do banco de dados AdventureWorks2012 que foi criptografado com uma senha.
USE AdventureWorks2012;
OPEN MASTER KEY DECRYPTION BY PASSWORD = '43987hkhj4325tsku7';
GO
Consulte também
Referência
CREATE MASTER KEY (Transact-SQL)
CLOSE MASTER KEY (Transact-SQL)
BACKUP MASTER KEY (Transact-SQL)
RESTORE MASTER KEY (Transact-SQL)
ALTER MASTER KEY (Transact-SQL)
DROP MASTER KEY (Transact-SQL)