Histórico da Página
Backup do certificado
O certificado é o arquivo com o qual você conseguirá acessar sua database, portanto, é de extrema importância possuir um backup deste.
Para fazer o backup do certificado, é importante fazer, também, o backup da chave privada deste certificado. Não é necessário especificar uma extensão para o certificado nem para a chave privada, porém, para fins de clareza na distinção dos arquivos, a chave privada neste exemplo tem a extensão pvk, bem como o mesmo nome que o certificado.
Você pode definir uma senha para criptografar estes arquivos, e este procedimento também é apresentado no exemplo.
Em caso de dúvidas, consulte a documentação oficial da Microsoft sobre o backup de certificado.
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
--Realizando o backup do certificado
--A private key precisa ser exportada junto com o certificado, pois é ela que o criptografa.
USE MASTER
GO
BACKUP CERTIFICATE CERTIPROD
TO FILE = 'X:\CERTIFICADO\CERTIPROD'
WITH PRIVATE KEY (file='X:\CERTIFICADO\CERTIPROD.pvk',
ENCRYPTION BY PASSWORD='Criptografia_1@2#3$')
GO |
Restore do certificado
Para restaurar a database criptografada em outro servidor, é necessário que este tenha o mesmo certificado para descriptografia. A sintaxe para restaurar um certificado não contém a palavra "restore"; na verdade, você irá criar um outro certificado a partir do arquivo exportado.
Informações | ||
---|---|---|
| ||
Para restaurar um certificado, a instância do SQL Server precisa ter uma chave mestra (master key). Esta não precisa, necessariamente, ser a mesma chave do servidor original. |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
--Procedimentos para a criação de certificado
USE master;
GO
-- Cria a chave-mestre de acordo com a senha
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Criptografia_1@2#3$';
GO
--Ao invés de criar outro certificado, você irá restaurar o certificado
--Verifique o caminho e as permissões do diretório onde se encontra o certificado e sua chave
CREATE CERTIFICATE CERTIPROD
FROM FILE='X:\CERTIFICADO\CERTIPROD'
WITH PRIVATE KEY (FILE='X:\CERTIFICADO\CERTIPROD.pvk',
DECRYPTION BY PASSWORD='Criptografia_1@2#3$')
GO |