Partilhar via


Criptografia de dados transparente para Banco de Dados SQL, Instância Gerenciada SQL e Azure Synapse Analytics

Aplica-se a:Banco de Dados SQL do AzureInstância Gerenciada SQL do Azure do Azure Synapse Analytics

A criptografia de dados transparente (TDE) ajuda a proteger o Banco de Dados SQL do Azure, a Instância Gerenciada SQL do Azure e o Azure Synapse Analytics contra a ameaça de atividades offline mal-intencionadas criptografando dados em repouso. Ele executa criptografia e descriptografia em tempo real do banco de dados, backups associados e arquivos de log de transações em repouso sem exigir alterações no aplicativo. Por padrão, o TDE é habilitado para todos os Bancos de Dados SQL do Azure recém-implantados e deve ser habilitado manualmente para bancos de dados mais antigos do Banco de Dados SQL do Azure. Para a Instância Gerenciada SQL do Azure, o TDE é habilitado no nível da instância e nos bancos de dados recém-criados. A TDE deve ser habilitada manualmente para o Azure Synapse Analytics.

Observação

Este artigo aplica-se à Base de Dados SQL do Azure, à Instância Gerida SQL do Azure e ao Azure Synapse Analytics (pools SQL dedicados (anteriormente SQL DW)). Para obter documentação sobre Criptografia de Dados Transparente para pools SQL dedicados dentro de espaços de trabalho Synapse, consulte sobre a criptografia no Azure Synapse Analytics.

Alguns itens considerados conteúdo do cliente, como nomes de tabelas, nomes de objetos e nomes de índice, podem ser transmitidos em arquivos de log para suporte e solução de problemas pela Microsoft.

A TDE executa criptografia de E/S em tempo real e descriptografia dos dados no nível da página. Cada página é desencriptada quando é lida na memória e, em seguida, encriptada antes de ser gravada no disco. A TDE criptografa o armazenamento de um banco de dados inteiro usando uma chave simétrica chamada Chave de Criptografia de Banco de Dados (DEK). Na inicialização do banco de dados, a DEK criptografada é descriptografada e, em seguida, usada para descriptografar e novamente cifrar os arquivos de banco de dados no processo do mecanismo de banco de dados do SQL Server. O DEK é protegido pelo protetor TDE. O protetor TDE é um certificado gerenciado por serviço (criptografia de dados transparente gerenciada por serviço) ou uma chave assimétrica armazenada no Azure Key Vault ou no Azure Key Vault Managed HSM (criptografia de dados transparente gerenciada pelo cliente).

Para o Banco de Dados SQL do Azure e o Azure Synapse, o protetor TDE é definido no nível do servidor e é herdado por todos os bancos de dados associados a esse servidor. Para a Instância Gerenciada SQL do Azure, o protetor TDE é definido no nível da instância e herdado por todos os bancos de dados criptografados nessa instância. O termo servidor refere-se ao servidor e à instância ao longo deste documento, a menos que indicado de forma diferente.

Importante

Todos os bancos de dados SQL recém-criados são criptografados por padrão usando criptografia de dados transparente gerenciada por serviço. Quando a origem do banco de dados é criptografada, os bancos de dados de destino criados por meio de restauração, replicação geográfica e cópia do banco de dados são criptografados por padrão. No entanto, quando a origem do banco de dados não é criptografada, os bancos de dados de destino criados por meio de restauração, replicação geográfica e cópia do banco de dados não são criptografados por padrão. Os bancos de dados SQL existentes criados antes de maio de 2017 e os bancos de dados existentes da Instância Gerenciada SQL criados antes de fevereiro de 2019 não são criptografados por padrão. Os bancos de dados da Instância Gerenciada SQL criados por meio da restauração herdam o status de criptografia da origem. Para restaurar um banco de dados criptografado TDE existente, o certificado TDE necessário deve primeiro ser importado para a Instância Gerenciada SQL. Para descobrir o estado de criptografia de um banco de dados, execute uma consulta select do sys.dm_database_encryption_keys DMV e verifique o status da coluna encryption_state_desc.

Observação

A TDE não pode ser usada para criptografar bancos de dados do sistema, como o master banco de dados, no Banco de dados SQL e na Instância Gerenciada SQL. O master banco de dados contém objetos necessários para executar operações TDE em bancos de dados de usuários. Recomenda-se não armazenar dados confidenciais em bancos de dados do sistema. A exceção é tempdbo , que é sempre criptografado com TDE para proteger os dados armazenados lá.

Criptografia de dados transparente gerenciada por serviço

No Azure, a configuração padrão para TDE é que a DEK é protegida por um certificado de servidor interno. O certificado de servidor interno é exclusivo para cada servidor e o algoritmo de criptografia usado é AES 256. Se um banco de dados estiver em uma relação de replicação geográfica, os bancos de dados primário e geosecundário serão protegidos pela chave do servidor pai do banco de dados primário. Se dois bancos de dados estiverem conectados ao mesmo servidor, eles também compartilharão o mesmo certificado interno. A Microsoft alterna automaticamente esses certificados uma vez por ano, em conformidade com a política de segurança interna, e a chave raiz é protegida por um armazenamento secreto interno da Microsoft. Os clientes podem verificar a conformidade do Banco de Dados SQL e da Instância Gerenciada SQL com as políticas internas de segurança em relatórios de auditoria independentes de terceiros disponíveis na Central de Confiabilidade da Microsoft.

A Microsoft também move e gere de forma integrada as chaves conforme necessário para georreplicação e restaurações.

Criptografia de dados transparente gerenciada pelo cliente - Traga sua própria chave

O TDE gerenciado pelo cliente também é conhecido como suporte Bring Your Own Key (BYOK) para TDE. Nesse cenário, o Protetor TDE que criptografa a DEK é uma chave assimétrica gerenciada pelo cliente, que é armazenada em um Cofre de Chaves do Azure gerenciado e de propriedade do cliente (o sistema de gerenciamento de chaves externas baseado em nuvem do Azure) e nunca sai do cofre de chaves. O Protetor TDE pode ser gerado pelo cofre de chaves ou transferido para o cofre de chaves a partir de um dispositivo local de HSM (módulo de segurança de hardware). Como alternativa, os clientes podem usar o Azure Managed HSM para armazenar e gerenciar o TDE Protetor. O Banco de Dados SQL, a Instância Gerenciada SQL e a Sinapse do Azure precisam receber permissões para o cofre de chaves de propriedade do cliente para descriptografar e criptografar a DEK. Se as permissões do servidor para o cofre de chaves forem revogadas, um banco de dados ficará inacessível e todos os dados serão criptografados.

Com o TDE com o Azure Key Vault ou a integração do Azure Managed HSM, os usuários podem controlar tarefas de gerenciamento de chaves, incluindo rotações de chaves, permissões de cofre de chaves, backups de chaves e habilitar auditorias/relatórios sobre todos os protetores TDE usando o Azure Key Vault ou a funcionalidade Azure Managed HSM. O Azure Key Vault e o Azure Managed HSM fornecem gerenciamento central de chaves, aproveitam HSMs rigorosamente monitorados e permitem a separação de tarefas entre o gerenciamento de chaves e dados para ajudar a atender à conformidade com as políticas de segurança. Para saber mais sobre o BYOK para o Banco de Dados SQL do Azure e o Azure Synapse, consulte Criptografia de dados transparente com a integração do Azure Key Vault.

Para começar a usar o TDE com a integração do Azure Key Vault, consulte o guia de instruções Ativar a criptografia de dados transparente usando sua própria chave do Azure Key Vault.

Mover um banco de dados transparente protegido por criptografia de dados

Você não precisa descriptografar bancos de dados para operações no Azure. As configurações de TDE no banco de dados de origem ou no banco de dados primário são herdadas de forma transparente no destino. As operações incluídas envolvem:

  • Restauração Geográfica
  • Autoatendimento para restauração a um momento específico
  • Restauração de um banco de dados excluído
  • Replicação geográfica ativa
  • Criação de uma cópia de banco de dados
  • Restauração do arquivo de backup para a Instância Gerenciada SQL do Azure

Importante

Não há suporte para fazer backup manual SOMENTE CÓPIA de um banco de dados criptografado pelo TDE gerenciado pelo serviço na Instância Gerenciada SQL do Azure, pois o certificado usado para criptografia não está acessível. Use o recurso de restauração point-in-time para mover esse tipo de banco de dados para outra instância gerenciada do SQL ou alterne para a chave gerenciada pelo cliente.

Quando você exporta um banco de dados protegido por TDE, o conteúdo exportado do banco de dados não é criptografado. Este conteúdo exportado é armazenado em ficheiros BACPAC não encriptados. Certifique-se de proteger os arquivos BACPAC adequadamente e habilitar o TDE após a conclusão da importação do novo banco de dados.

Por exemplo, se o arquivo BACPAC for exportado de uma instância do SQL Server, o conteúdo importado do novo banco de dados não será criptografado automaticamente. Da mesma forma, se o arquivo BACPAC for importado para uma instância do SQL Server, o novo banco de dados também não será criptografado automaticamente.

A única exceção é quando você exporta um banco de dados de e para o Banco de dados SQL. TDE está habilitado no novo banco de dados, mas o arquivo BACPAC em si ainda não está criptografado.

Gerencie a criptografia de dados transparente

Gerencie TDE no portal do Azure.

Para configurar o TDE através do portal do Azure, tem de estar ligado como Proprietário, Colaborador ou Gestor de Segurança SQL do Azure.

Habilite e desabilite o TDE no nível do banco de dados. Para a Instância Gerenciada SQL do Azure, use Transact-SQL (T-SQL) para ativar e desativar o TDE em um banco de dados. Para o Banco de Dados SQL do Azure e o Azure Synapse, você pode gerenciar o TDE para o banco de dados no portal do Azure depois de entrar com a conta de Administrador ou Colaborador do Azure. Encontre as configurações de TDE em seu banco de dados de usuários. Por padrão, a chave de criptografia no nível do servidor é usada. Um certificado TDE é gerado automaticamente para o servidor que contém o banco de dados.

Captura de ecrã do menu de encriptação de dados no portal do Azure para uma base de dados.

Você define a chave mestra TDE, conhecida como protetor TDE, no nível do servidor ou da instância. Para usar o TDE com suporte a BYOK e proteger seus bancos de dados com uma chave do Azure Key Vault ou do Azure Managed HSM, abra as configurações de TDE em seu servidor ou instância gerenciada.

Captura de ecrã do menu de encriptação de dados transparente no portal do Azure para um servidor.

Você também pode usar uma chave gerenciada pelo cliente para TDE em um nível de banco de dados para o Banco de Dados SQL do Azure. Para obter mais informações, consulte Criptografia de dados transparente (TDE) com chaves gerenciadas pelo cliente no nível do banco de dados.