Partilhar via


Ameaça e mitigação de vulnerabilidade (Replicação)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Este tópico descreve técnicas para reduzir ameaças a uma topologia de replicação.

Criptografia

A criptografia é o processo de converter dados em um formato que não pode ser lido sem uma chave especial, de modo que somente o destinatário pode ler os dados. A replicação não criptografa dados armazenados em tabelas ou enviados por conexões de rede. Isso é por projeto, pois a criptografia está disponível em nível de transporte com diversas tecnologias, incluindo as seguintes tecnologias padrão da indústria: VPN (Virtual Private Networks), Transport Layer Security (TLS), anteriormente conhecido como SSL (Secure Sockets Layer) e IPSEC (IP Security). Recomendamos usar um desses métodos de criptografia para as conexões entre computadores em uma topologia de replicação. Para obter mais informações, confira Habilitar conexões criptografadas para o mecanismo de banco de dados (SQL Server Configuration Manager). Para obter informações sobre como usar VPN e TLS para replicar dados na Internet, confira Proteger a replicação na Internet.

Se você usar TLS para proteger as conexões entre computadores em uma topologia de replicação, especifique o valor 1 ou 2 para o parâmetro -EncryptionLevel de cada agente de replicação (o valor 2 é recomendado). O valor 1 especifica que é usada criptografia, mas o agente não verifica se o certificado do servidor TLS/SSL está assinado por um emissor confiável; o valor 2 especifica que o certificado é verificado. Os parâmetros de agente podem ser especificados em perfis de agente e na linha de comando. Para saber mais, veja:

A replicação tem o seguinte comportamento em relação a Chaves Mestras de banco de dados, que são usadas para criptografar dados:

  • Se existir uma Chave Mestra em um banco de dados envolvido em replicação (um banco de dados de publicação, um banco de dados de assinatura ou um banco de dados de distribuição), a replicação criptografa e descriptografa as senhas dos agentes nesse banco de dados usando uma chave simétrica de banco de dados do SQL Server 2012 (11.x). Se forem usadas Chaves Mestras, deverá ser criada uma Chave Mestra em cada banco de dados envolvido na replicação. Para obter mais informações sobre como criar chaves mestras, consulte CREATE MASTER KEY (Transact-SQL).

  • Replicação não replica Chaves Mestras. Caso exija a Chave Mestra no Assinante, você deverá exportá-la do banco de dados de publicação usando BACKUP MASTER KEY e, em seguida, importá-la para o banco de dados de assinatura usando RESTORE MASTER KEY. Para obter mais informações, veja BACKUP MASTER KEY (Transact-SQL) e RESTORE MASTER KEY (Transact-SQL).

  • Se uma Chave Mestra for definida para um banco de dados de assinatura anexável, especifique a senha da Chave Mestra usando o parâmetro @db_master_key_password de sp_attachsubscription (Transact-SQL). Isso permite anexar o banco de dados no Assinante.

Para obter mais informações sobre criptografia e Chaves Mestras, consulte Encryption Hierarchy.

A replicação permite que você publique dados criptografados em coluna. Para descriptografar e usar esses dados no Assinante, a chave usada para criptografar os dados no Publicador também deve estar presente no Assinante. A replicação não fornece um mecanismo seguro para transportar chaves de criptografia. Você deve recriar a chave de criptografia manualmente no Assinante. Para obter mais informações, consulte Replicar dados em colunas criptografadas (SQL Server Management Studio).