Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Base de dados SQL no Microsoft Fabric
Cria uma chave mestra de banco de dados no banco de dados.
Important
- Você deve fazer backup da chave mestra usando BACKUP MASTER KEY e armazenar o backup em um local externo seguro.
- No SQL Server, você também deve fazer backup da chave mestra de serviço usando BACKUP SERVICE MASTER KEY e armazenar o backup em um local externo seguro.
Transact-SQL convenções de sintaxe
Syntax
CREATE MASTER KEY [ ENCRYPTION BY PASSWORD ='password' ]
[ ; ]
Arguments
PASSWORD ='senha'
A senha usada para criptografar a chave mestra no banco de dados. senha deve atender aos requisitos de diretiva de senha do Windows do computador que está executando a instância do SQL Server. A senha é opcional no Banco de Dados SQL e no Azure Synapse Analytics.
Remarks
A chave mestra do banco de dados é uma chave simétrica usada para proteger as chaves privadas de certificados e chaves assimétricas presentes no banco de dados e segredos nas credenciais com escopo do banco de dados. Quando é criada, a chave mestra é encriptada utilizando o algoritmo AES_256 e uma palavra-passe fornecida pelo utilizador. No SQL Server 2008 (10.0.x) e no SQL Server 2008 R2 (10.50.x), o algoritmo Triple DES é usado. Para habilitar a descriptografia automática da chave mestra, uma cópia da chave é criptografada usando a chave mestra de serviço e armazenada no banco de dados e no master. Normalmente, a cópia armazenada no master é atualizada silenciosamente sempre que a chave mestra é alterada. Esse padrão pode ser alterado usando a opção DROP ENCRYPTION BY SERVICE MASTER KEY da ALTER MASTER KEY. Uma chave mestra que não é criptografada pela chave mestra de serviço deve ser aberta usando a instrução OPEN MASTER KEY e uma senha.
A is_master_key_encrypted_by_server coluna da sys.databases exibição de catálogo em master indica se a chave mestra do banco de dados é criptografada pela chave mestra de serviço.
As informações sobre a chave mestra do banco de dados são visíveis na exibição de sys.symmetric_keys catálogo.
Para o SQL Server e o Parallel Data Warehouse, a chave mestra normalmente é protegida pela chave mestra de serviço e pelo menos uma senha. No caso de o banco de dados ser fisicamente movido para um servidor diferente (envio de logs, restauração de backup, etc.), o banco de dados conterá uma cópia da chave mestra criptografada pela chave mestra de serviço do servidor original (a menos que essa criptografia tenha sido explicitamente removida usando ALTER MASTER KEY DDL), e uma cópia dela criptografada por cada senha especificada durante uma CREATE MASTER KEY ou operações subsequentes ALTER MASTER KEY DDL . Para recuperar a chave mestra e todos os dados criptografados usando a chave mestra como raiz na hierarquia de chaves após o banco de dados ter sido movido, o usuário terá uma instrução de uso OPEN MASTER KEY usando uma das senhas usadas para proteger a chave mestra, restaurar um backup da chave mestra ou restaurar um backup da chave mestra de serviço original no novo servidor.
Para o Banco de Dados SQL e o Azure Synapse Analytics, a proteção por senha não é considerada um mecanismo de segurança para evitar um cenário de perda de dados em situações em que o banco de dados pode ser movido de um servidor para outro, já que a proteção da chave mestra de serviço na chave mestra é gerenciada pela plataforma Microsoft Azure. Portanto, a senha da chave mestra é opcional no Banco de Dados SQL e no Azure Synapse Analytics.
Para o Banco de Dados SQL, a chave mestra do banco de dados pode ser criada automaticamente para proteger os segredos nas credenciais de escopo do banco de dados usadas para auditoria e outros recursos que exigem uma credencial com escopo de banco de dados para autenticação em um recurso externo, como uma conta de Armazenamento do Azure. A chave mestra é criada com uma senha forte selecionada aleatoriamente. Os usuários não podem criar a chave mestra em um banco de dados lógico master . A senha da chave mestra é desconhecida para a Microsoft e não pode ser detetada após a criação. Por esse motivo, é recomendável criar uma chave mestra de banco de dados antes de criar uma credencial com escopo de banco de dados.
A chave mestra de serviço e as chaves mestras do banco de dados são protegidas usando o algoritmo AES-256.
Permissions
Requer permissão CONTROL na base de dados.
Examples
Use o exemplo a seguir para criar uma chave mestra de banco de dados em um banco de dados. A chave é encriptada usando uma palavra-passe.
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<strong password>';
GO
Verifique a presença da nova chave, ##MS_DatabaseMasterKey##:
SELECT * FROM sys.symmetric_keys;
GO