Partilhar via


Transparent Data Encryption com o Banco de Dados SQL do Azure

SQL do Azure a transparent data encryption (versão prévia) do Banco de Dados ajuda a proteger contra a ameaça de atividade mal-intencionada executando criptografia e descriptografia em tempo real do banco de dados, backups associados e arquivos de log de transações em repouso sem a necessidade de alterações no aplicativo.

A TDE criptografa o armazenamento de um banco de dados inteiro usando uma chave simétrica chamada de chave de criptografia de banco de dados. No Banco de Dados SQL, a chave de criptografia do banco de dados está protegida por um certificado de servidor interno. O certificado de servidor interno é exclusivo para cada servidor do Banco de Dados SQL. Se um banco de dados está em uma relação de GeoDR, ele é protegido por uma chave diferente em cada servidor. Se dois bancos de dados estão conectados ao mesmo servidor, eles compartilham o mesmo certificado interno. A Microsoft gira automaticamente esses certificados pelo menos a cada 90 dias. Para obter uma descrição geral do TDE, consulte TDE (Transparent Data Encryption).

SQL do Azure Banco de Dados não dá suporte à integração do Azure Key Vault com a TDE. SQL Server em execução em uma máquina virtual do Azure pode usar uma chave assimétrica do Key Vault. Para obter mais informações, consulte Example A: Transparent Data Encryption by Using an Asymmetric Key from the Key Vault.

Aplica-se a: Banco de Dados SQL V12 (versão prévia em algumas regiões).

Importante

Este é um recurso de visualização. Reconheço e concordo que a implementação de Banco de Dados SQL transparent data encryption em meus bancos de dados está sujeita aos termos de visualização do meu contrato de licença (por exemplo, o Enterprise Agreement, o Contrato do Microsoft Azure ou o Contrato de Assinatura online da Microsoft), bem como quaisquer Termos de Uso Complementares aplicáveis para a Versão Prévia do Microsoft Azure.

A visualização de status de TDE se aplica mesmo no subconjunto de regiões geográficas em que a família de versões V12 do Banco de Dados SQL é anunciada como estando em disponibilidade geral status. A TDE para Banco de Dados SQL não se destina ao uso em bancos de dados de produção até que a Microsoft anuncie que a TDE é promovida da versão prévia para a GA. Para obter mais informações sobre Banco de Dados SQL V12, consulte Novidades no banco de dados SQL do Azure.

Permissões

Para inscrever-se para a visualizar e configurar TDE por meio do portal do Azure, usando a API REST ou usando o PowerShell, você deve estar conectado como o proprietário do Azure, Colaborador ou Gerenciador de segurança do SQL.

Para configurar o TDE usando o Transact-SQL, é necessário o seguinte:

  • Você já deve estar inscrito para a visualização da TDE.

  • Para criar a chave de criptografia de banco de dados, você deve ser um administrador Banco de Dados SQL ou deve ser membro da função dbmanager no banco de dados master e ter a permissão CONTROL no banco de dados.

  • Para executar a instrução ALTER DATABASE com a opção SET só requer a associação na função dbmanager .

Inscreva-se para a visualização da TDE e habilite TDE em um banco de dados

  1. Visite o Portal do Azure em https://portal.azure.com e entre com sua conta de Administrador ou Colaborador do Azure.

  2. Na faixa esquerda, clique em PROCURAR e em Bancos de dados SQL.

  3. Com Bancos de dados SQL selecionado no painel esquerdo, clique em seu banco de dados de usuário.

  4. Na folha do banco de dados, clique em Todas as configurações.

  5. Na folha Configurações , clique na parte Transparent Data Encryption (visualização) para abrir a folha VISUALIZAÇÃO da Transparent Data Encryption . Se você ainda não estiver inscrito para a visualização de TDE, as configurações de criptografia de dados serão desabilitadas até que você conclua a inscrição.

  6. Clique em TERMOS DE VISUALIZAÇÃO.

  7. Leia os termos da visualização e, se você concordar com os termos, selecione a caixa Transparent Data encryptionPreview terms marcar e clique em OK na parte inferior da página. Retornando à folha Criptografia de dadosVISÃO PRÉVIA , em que o botão Criptografia de dados agora deve estar habilitado.

  8. Na folha VISUALIZAÇÃO da criptografia de dados , mova o botão Criptografia de dados para Ligado, e, em seguida, clique em Salvar (na parte superior da página) para aplicar a configuração. O Status de criptografia aproximará o progresso da Transparent Data Encryption.

    SQLDB_TDE_TermsNewUI

    Você também pode monitorar o progresso da criptografia conectando-se a Banco de Dados SQL usando uma ferramenta de consulta, como SQL Server Management Studio como um usuário de banco de dados com a permissão VIEW DATABASE STATE. Consulte a encryption_state coluna do modo de exibição sys.dm_database_encryption_keys .

Habilitando a TDE no banco de dados SQL usando Transact-SQL

Nas etapas a seguir, suponha que você já se inscreveu para a visualização.

  1. Conecte-se ao banco de dados usando um logon que seja um administrador ou um membro da função dbmanager no banco de dados mestre.

  2. Execute as seguintes instruções para criar uma chave de criptografia do banco de dados e criptografar o banco de dados.

    -- Create the database encryption key that will be used for TDE.
    CREATE DATABASE ENCRYPTION KEY 
    WITH ALGORITHM = AES_256 
    ENCRYPTION BY SERVER CERTIFICATE ##MS_TdeCertificate##;
    
    -- Enable encryption
    ALTER DATABASE [AdventureWorks] SET ENCRYPTION ON;
    GO
    
  3. Para monitorar o progresso da criptografia em Banco de Dados SQL, os usuários do banco de dados com a permissão VIEW DATABASE STATE podem consultar a encryption_state coluna da exibição sys.dm_database_encryption_keys.

Habilitando a TDE no banco de dados SQL usando PowerShell

Usando o Azure PowerShell, você pode executar o seguinte comando para ligar/desligar a TDE. Você precisa se conectar a sua conta na janela de PS antes de executar o comando. Nas etapas a seguir, suponha que você já se inscreveu para a visualização. Para obter informações adicionais sobre o PowerShell, consulte Como instalar e configurar o Azure PowerShell.

  1. Para habilitar a TDE, retorne o status de TDE e exiba a atividade de criptografia.

    Switch-AzureMode -Name AzureResourceManager
    Set-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1" -State "Enabled"
    
    Get-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1"
    Get-AzureSqlDatabaseTransparentDataEncryptionActivity -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1"
    
  2. Para desabilitar a TDE:

    Set-AzureSqlDatabaseTransparentDataEncryption -ServerName "myserver" -ResourceGroupName "Default-SQL-WestUS" -DatabaseName "database1" -State "Disabled"
    Switch-AzureMode -Name AzureServiceManagement
    

Descriptografar um banco de dados protegido por TDE no banco de dados SQL

Para desabilitar a TDE usando o Portal do Azure

  1. Visite o Portal do Azure em https://portal.azure.com e entre com sua conta de Administrador ou Colaborador do Azure.

  2. Na faixa esquerda, clique em PROCURAR e em Bancos de dados SQL.

  3. Com Bancos de dados SQL selecionado no painel esquerdo, clique em seu banco de dados de usuário.

  4. Na folha do banco de dados, clique em Todas as configurações.

  5. Na folha Configurações , clique na parte Transparent Data Encryption (visualização) para abrir a folha VISUALIZAÇÃO da Transparent Data Encryption .

  6. Na folha VISUALIZAÇÃO da Transparent Data Encryption , mova o botão Criptografia de dados para Desligadoe, em seguida, clique em Salvar (na parte superior da página) para aplicar a configuração. O Status de criptografia aproximará o progresso de descriptografia de dados transparente.

    Você também pode monitorar o progresso da descriptografia conectando-se a Banco de Dados SQL usando uma ferramenta de consulta como o Management Studio como um usuário de banco de dados com a permissão VIEW DATABASE STATE. Consulte a encryption_state coluna do modo de exibição sys.dm_database_encryption_keys.

Para desabilitar a TDE usando Transact-SQL

  1. Conecte-se ao banco de dados usando um logon que seja um administrador ou um membro da função dbmanager no banco de dados mestre.

  2. Execute as seguintes instruções para descriptografar o banco de dados.

    -- Enable encryption
    ALTER DATABASE [AdventureWorks] SET ENCRYPTION OFF;
    GO
    
  3. Para monitorar o progresso da criptografia em Banco de Dados SQL, os usuários do banco de dados com a permissão VIEW DATABASE STATE podem consultar a encryption_state coluna da exibição sys.dm_database_encryption_keys.

Trabalhar com bancos de dados protegido por TDE no banco de dados SQL

Não é necessário descriptografar bancos de dados para operações no Azure. As configurações de TDE no banco de dados de origem ou banco de dados primário são herdadas de forma transparente no destino. Isso inclui operações envolvendo:

  • Restauração Geográfica

  • Recuperação Pontual de Autoatendimento

  • Restaurar um Banco de Dados Excluído

  • Replicação Geográfica Ativa

  • Criar uma Cópia do Banco de Dados

Mover um Banco de Dados Protegido por TDE Usando Arquivos .Bacpac

Ao exportar um banco de dados protegido por TDE usando a função Exportar Banco de Dados no Portal do Banco de Dados do SQL do Azure ou no Assistente de Importação e Exportação do SQL Server, o conteúdo do banco de dados não é criptografado. O conteúdo é armazenado em arquivos. bacpac que não estão criptografados. Certifique-se de proteger os arquivos. bacpac adequadamente e habilitar a TDE após a conclusão da importação do novo banco de dados.

Habilitar TDE usando EKM

Consulte Também

Transparent Data Encryption (TDE)CREATE CREDENTIAL (Transact-SQL)CREATE ASYMMETRIC KEY (Transact-SQL)CREATE DATABASE ENCRYPTION KEY (Transact-SQL)ALTER DATABASE (Transact-SQL)ALTER DATABASE SET Options (Transact-SQL)