Esta é a primeira postagem de uma série onde iremos abordar soluções presentes no Microsoft SQL Server com foco na proteção de dados. A solução de hoje é a Criptografia de Dados Transparente (TDE). Esse método é também conhecido como criptografia de dados em repouso.
De maneira geral, é possível adotar várias precauções para ajudar a proteger um banco de dados, como projetar um sistema seguro, implementar uma boa gestão de segurança, utilizar firewall para criar barreiras de acesso aos servidores do banco de dados, entre outros. Porém, ainda há uma preocupação em relação às mídias físicas, unidades ou backups, pois uma parte mal intencionada pode restaurar ou anexar o banco de dados em outro ambiente e ter acesso aos dados.
Uma solução para este problema é criptografar os dados em um banco de dados usando chaves de acesso. Essa solução impede que alguém sem as chaves acesse os dados. A TDE trabalha no banco de dados no nível de página, de forma que as páginas são descriptografadas quando em memória e são criptografadas antes mesmo de serem gravadas em disco – por isso dizemos que os dados ficam criptografados em repouso. A TDE não aumenta o tamanho do banco de dados criptografado. A Microsoft estima que há um aumento em cerca de 3 a 5% na utilização de CPU em um banco de dados com TDE habilitado – sendo menor quando os dados acessados já estão em memória.
Esta solução do SQL Server está disponível desde a versão 2008 nas edições Enterprise e Developer; recentemente no SQL 2019, também disponível na edição Standard. Em banco de dados no Azure (banco de dados SQL, instância gerenciada ou Azure Synapse Analytics), essa solução é habilitada por padrão, gerenciado pelo serviço Azure – também é possível o próprio cliente gerenciar.
Uma observação importante em relação à utilização de TDE é que os arquivos de backup em um banco que está com TDE ativo também serão criptografados.
Links úteis: