BACKUP MASTER KEY (Transact-SQL)

Aplica-se a:SQL Server

Exporta a chave mestra do banco de dados.

Importante

O SQL Server 2022 (16.x) apresenta suporte para backup e restauração da chave mestra do banco de dados em um armazenamento de blobs do Azure. A sintaxe URL só está disponível para o SQL Server 2022 (16.x) ou posterior.

Convenções de sintaxe de Transact-SQL

Sintaxe

BACKUP MASTER KEY TO 
  {
    FILE = 'path_to_file'
  | URL = 'Azure Blob storage URL'
  }   
    ENCRYPTION BY PASSWORD = 'password'  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

FILE ='path_to_file'
Especifica o caminho completo, inclusive o nome de arquivo, para o arquivo para o qual a chave mestra será exportada. O caminho pode ser um caminho local ou um caminho UNC a um local de rede.

URL ='URL do Armazenamento de Blobs do Azure'
Aplica-se a: SQL Server 2022 (16.x) e versões posteriores
É a URL do Armazenamento de Blobs do Azure, no formato semelhante a https://<storage_account_name>.blob.core.windows.net/<storage_container_name>/<backup_file_name>.bak.

ENCRYPTION BY PASSWORD ='password'
É a senha usada para criptografar a chave mestra no arquivo. Esta senha está sujeita à verificação de complexidade. Para obter mais informações, consulte Password Policy.

Comentários

A chave mestra deve estar aberta e, portanto, descriptografada antes de ser feito o back up. Se for criptografada com a chave mestra de serviço, a chave mestra não terá que ser aberta explicitamente. No entanto, se a chave mestra só for criptografada com uma senha, ela deve ser aberta explicitamente.

Faça o backup da chave mestra assim que ela for criada e armazene o backup em um local externo seguro.

Autentique no Armazenamento de Blobs do Azure

Aplica-se a: SQL Server 2022 (16.x) e versões posteriores.

Para fazer backup da chave mestra do banco de dados em um Armazenamento de Blobs do Azure, os seguintes pré-requisitos se aplicarão:

  1. Ter uma conta do Armazenamento do Azure.

  2. Criar uma política de acesso armazenado e um armazenamento de acesso compartilhado.

  3. Criar uma credencial do SQL Server usando uma assinatura de acesso compartilhado.

    Para obter mais informações, confira Tutorial: Usar o Armazenamento de Blobs do Azure com o SQL Server.

Permissões

Exige a permissão CONTROL no banco de dados.

Exemplos

O exemplo a seguir cria um backup da chave mestra AdventureWorks2022 em um arquivo. Como esta chave mestra não está criptografada pela chave mestra de serviço, é necessário especificar uma senha quando ela for aberta.

USE AdventureWorks2022;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7';  
BACKUP MASTER KEY TO FILE = 'c:\temp\AdventureWorks2022_master_key'   
    ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg';  
GO   

O exemplo a seguir cria um backup da chave mestra AdventureWorks2022 em um Armazenamento de Blobs do Azure. Como esta chave mestra não está criptografada pela chave mestra de serviço, é necessário especificar uma senha quando ela for aberta.

USE AdventureWorks2022;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7';  
BACKUP MASTER KEY TO URL = 'https://mydocsteststorage.blob.core.windows.net/mytestcontainer/AdventureWorks2022_master_key.bak'  
    ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg';  
GO   

Confira também

CREATE MASTER KEY (Transact-SQL)
OPEN MASTER KEY (Transact-SQL)
CLOSE MASTER KEY (Transact-SQL)
RESTORE MASTER KEY (Transact-SQL)
ALTER MASTER KEY (Transact-SQL)
DROP MASTER KEY (Transact-SQL)
Hierarquia de criptografia
BACKUP SYMMETRIC KEY