ALTER SERVICE ALTER SERVICE MASTER KEY (Transact-SQL)

Aplica-se a: SQL ServerAzure SQL Managed Instance

Altera a chave mestra de serviço de uma instância do SQL Server.

Transact-SQL convenções de sintaxe

Syntax

ALTER SERVICE MASTER KEY   
    [ { <regenerate_option> | <recover_option> } ] [;]  
  
<regenerate_option> ::=  
    [ FORCE ] REGENERATE  
  
<recover_option> ::=  
    { WITH OLD_ACCOUNT = 'account_name' , OLD_PASSWORD = 'password' }  
    |      
    { WITH NEW_ACCOUNT = 'account_name' , NEW_PASSWORD = 'password' }  

Arguments

FORÇA
Indica que a chave mestra de serviço deve ser regenerada, mesmo com risco de perda de dados. Para mais informações, consulte Alterar a Conta de Serviço SQL Server mais adiante neste tópico.

REGENERAR
Indica que a chave mestra de serviço deve ser regenerada.

OLD_ACCOUNT ='account_name'
Especifica o nome da conta antiga do serviço Windows.

Warning

Esta opção está obsoleta. Não utilizar. Use o Gestor de Configuração do SQL Server em vez disso.

OLD_PASSWORD ='password'
Especifica a palavra-passe da conta antiga do serviço Windows.

Warning

Esta opção está obsoleta. Não utilizar. Use o Gestor de Configuração do SQL Server em vez disso.

NEW_ACCOUNT ='account_name'
Especifica o nome da nova conta de serviço Windows.

Warning

Esta opção está obsoleta. Não utilizar. Use o Gestor de Configuração do SQL Server em vez disso.

NEW_PASSWORD ='palavra-passe'
Especifica a palavra-passe da nova conta de serviço Windows.

Warning

Esta opção está obsoleta. Não utilizar. Use o Gestor de Configuração do SQL Server em vez disso.

Remarks

A chave mestra de serviço é gerada automaticamente na primeira vez que é necessária para encriptar uma palavra-passe de servidor ligado, credencial ou chave mestra da base de dados. A chave mestra do serviço é encriptada usando a chave local da máquina ou a API de Proteção de Dados do Windows. Esta API utiliza uma chave derivada das credenciais do Windows da conta de serviço do SQL Server.

O SQL Server 2012 (11.x) usa o algoritmo de criptografia AES para proteger a chave mestra de serviço (SMK) e a chave mestra de banco de dados (DMK). AES é um algoritmo de encriptação mais recente do que o 3DES usado em versões anteriores. Após atualizar uma instância do Database Engine para SQL Server 2012 (11.x), o SMK e o DMK devem ser regenerados para atualizar as chaves mestras para AES. Para mais informações sobre a regeneração do DMK, vejaALTER MASTER KEY (Transact-SQL).

Alteração da Conta de Serviço do SQL Server

Para alterar a conta do serviço SQL Server, utilize o Gestor de Configuração do SQL Server. Para gerir uma alteração da conta de serviço, o SQL Server armazena uma cópia redundante da chave mestra de serviço protegida pela conta da máquina que tem as permissões necessárias concedidas ao grupo de serviços do SQL Server. Se o computador for reconstruído, o mesmo utilizador de domínio que foi anteriormente usado pela conta de serviço pode recuperar a chave mestra de serviço. Isto não funciona com contas locais nem com as contas do Sistema Local, Serviço Local ou Serviço de Rede. Quando estiver a mover o SQL Server para outro computador, migre a chave mestra de serviço usando backup e restauro.

A frase REGENERATE regenera a chave mestra do serviço. Quando a chave mestra de serviço é regenerada, o SQL Server desencripta todas as chaves que foram encriptadas com ela e depois encripta-as com a nova chave mestra de serviço. Esta é uma operação que consome muitos recursos. Deve agendar esta operação num período de baixa procura, a menos que a chave tenha sido comprometida. Se alguma das desencriptações falhar, toda a instrução falha.

A opção FORCE faz com que o processo de regeneração de chaves continue mesmo que o processo não consiga recuperar a chave mestra atual, ou não consiga desencriptar todas as chaves privadas encriptadas com ela. Use FORCE apenas se a regeneração falhar e não conseguir restaurar a chave mestra de serviço usando a RESTORE SERVICE MASTER KEY instrução.

Caution

A chave mestra de serviço é a raiz da hierarquia de encriptação do SQL Server. A chave mestra de serviço protege direta ou indiretamente todas as outras chaves e segredos na árvore. Se uma chave dependente não puder ser desencriptada durante uma regeneração forçada, os dados que a chave segura serão perdidos.

Se moveres SQL para outra máquina, tens de usar a mesma conta de serviço para desencriptar o SMK – o SQL Server corrige automaticamente a encriptação da conta da máquina.

Permissions

Requer permissão CONTROL SERVER no servidor.

Examples

O exemplo seguinte regenera a chave mestra de serviço.

ALTER SERVICE MASTER KEY REGENERATE;  
GO  

Ver também

RESTORE SERVICE RESTORE SERVICE MASTER KEY (Transact-SQL)
BACKUP SERVICE BACKUP SERVICE MASTER KEY (Transact-SQL)
Hierarquia de criptografia