Recuperar backups SQL criptografados após perder o servidor
Preserve certificados e chaves privadas dos backups criptografados e teste a restauração em uma instância sem depender do estado do servidor original.
Um backup intacto pode ser inutilizável em outro servidor. Se a chave privada do certificado necessário existe apenas na instância perdida, copiar o arquivo não basta. O plano de recuperação precisa incluir material criptográfico e um caminho testado para utilizá-lo fora da origem.
Identificar a proteção real
Diferencie criptografia explícita de backup e Transparent Data Encryption. A primeira usa o criptografador configurado para a cópia. TDE protege a base com uma chave cujo protetor precisa estar disponível ao mover ou restaurar. Uma cadeia pode depender dos dois mecanismos.
Para proteção por certificado, inventarie os certificados de master e relacione suas impressões digitais aos backups. A consulta é um começo, não prova que cada certificado é necessário para todo arquivo.
USE master;
SELECT name, thumbprint, expiry_date,
pvt_key_encryption_type_desc
FROM sys.certificates
WHERE name NOT LIKE '##%'
ORDER BY name;
Use metadados reais de backup ou restore para identificar o protetor correspondente. O nome amigável pode variar entre servidores; a identidade criptográfica deve coincidir. Se houver chave assimétrica ou provedor externo, siga seu procedimento de recuperação, não esta receita de arquivos de certificado.
Não suponha que o backup da base de usuário contém tudo para iniciar sua própria descriptografia. O destino precisa do protetor e de acesso à chave privada antes da restauração.
Exportar certificado e chave privada
O modelo usa um certificado existente chamado BackupRecoveryDemo. Substitua nome, caminhos e segredo. O diretório deve existir e permitir acesso ao serviço SQL Server. O script não cria um criptografador nem altera jobs de backup.
USE master;
BACKUP CERTIFICATE [BackupRecoveryDemo]
TO FILE = 'D:\KeyExport\BackupRecoveryDemo.cer'
WITH PRIVATE KEY
(
FILE = 'D:\KeyExport\BackupRecoveryDemo.pvk',
ENCRYPTION BY PASSWORD = 'REPLACE_WITH_A_UNIQUE_SECRET'
);
O arquivo .cer sozinho não basta quando a chave privada é necessária. Preserve o arquivo privado criptografado e sua senha por caminhos de recuperação controlados e independentes. Guardar a única senha na base protegida pela mesma chave cria dependência circular.
A importação executa em master no destino. Ela pressupõe uma chave mestra de banco existente e utilizável pelo operador autorizado. Prepare esse requisito quando ausente, sem substituir cegamente uma chave existente.
USE master;
CREATE CERTIFICATE [BackupRecoveryDemo]
FROM FILE = 'D:\KeyImport\BackupRecoveryDemo.cer'
WITH PRIVATE KEY
(
FILE = 'D:\KeyImport\BackupRecoveryDemo.pvk',
DECRYPTION BY PASSWORD = 'REPLACE_WITH_A_UNIQUE_SECRET'
);
A senha de exportação descriptografa o arquivo privado durante a importação. Ela não é a senha do login nem necessariamente a da chave mestra destino. Diferencie os segredos no procedimento.
Depois, confira impressão digital e disponibilidade da chave privada. Remova cópias temporárias conforme o processo operacional e preserve as cópias duráveis. Não coloque segredos reais em tickets, código ou transcrições compartilhadas.
Testar sem depender da instância original
Um ensaio no servidor original pode passar porque o certificado já está instalado. Use uma instância isolada com inventário conhecido. Restaure a sequência necessária de backup completo, diferencial e logs até o ponto requerido, depois valide consistência e funções básicas da aplicação.
Registre arquivos, impressões digitais, obtenção de segredos, permissões, duração e ponto recuperado. RESTORE VERIFYONLY oferece evidência útil, mas não substitui uma restauração completa e uma base utilizável.
Rotação não elimina a necessidade de descriptografar backups históricos retidos. Mantenha protetores antigos enquanto alguma cadeia necessária depender deles. Um novo backup completo com outro certificado não reescreve arquivos anteriores nem logs existentes.
Teste também indisponibilidade do armazenamento de segredos, senha privada ausente e execução por outro operador autorizado. Verifique se ele identifica os arquivos e a função de cada senha sem depender da memória do administrador original. O objetivo é reconstruir o caminho completo de descriptografia quando o servidor e seu estado local não estão mais disponíveis.
Referências técnicas: Microsoft Learn: BACKUP CERTIFICATE · Microsoft Learn: Backup encryption · Microsoft Learn: Moving a TDE database.