Criptografia transparente de dados para o AlloyDB Omni

Selecione uma versão da documentação:

A criptografia de dados transparente (TDE, na sigla em inglês) permite proteger todos os dados em repouso nos clusters do AlloyDB Omni sem modificar o código do aplicativo. Ao ativar esse recurso, você garante que tabelas, índices e registros de gravação antecipada (WAL, na sigla em inglês) sejam criptografados automaticamente antes de serem gravados no disco. Isso ajuda você a atender aos requisitos de conformidade e proteger informações sensíveis.

A criptografia é transparente porque as consultas SQL, DDL e operações DML funcionam normalmente sem exigir mudanças no aplicativo. Os dados são criptografados automaticamente antes de serem gravados no disco e descriptografados quando lidos na memória.

Hierarquia de chaves

O AlloyDB Omni implementa uma hierarquia de chaves de duas camadas que mantém uma segregação de funções estrita entre o banco de dados e a infraestrutura de segurança gerenciada pelo usuário.

  • Chaves de criptografia de dados (DEKs, na sigla em inglês): geradas e de propriedade do AlloyDB Omni. Essas chaves criptografam os arquivos de dados reais, o WAL, e os arquivos temporários. O AlloyDB Omni armazena DEKs no disco, mas as envolve com sua KEK.
  • Chave de criptografia de chaves (KEK, na sigla em inglês): a chave principal que você gerencia em um serviço de gerenciamento de chaves (KMS) externo. O AlloyDB Omni usa sua KEK para criptografar as DEKs. O AlloyDB Omni acessa essa chave apenas na inicialização para desencapsular as DEKs. Sua KEK nunca é armazenada de forma permanente no disco do banco de dados.

Como a TDE funciona com o AlloyDB Omni

Quando a TDE está ativada, o AlloyDB Omni protege seus dados usando um modelo de criptografia em camadas que se integra a um KMS externo.

  • Inicialização e recuperação de chaves: durante a fase de inicialização ou inicialização do cluster, o mecanismo do AlloyDB Omni estabelece uma conexão segura com o KMS. Ele autentica usando um JSON Web Token (JWT) e recupera a KEK.
  • Desencapsulamento das DEKs: o AlloyDB Omni usa sua KEK para desencapsular as DEKs, que são armazenadas no armazenamento local em um estado encapsulado. Em seguida, essas DEKs são carregadas na memória.
  • Operações de dados transparentes:
    • Gravação no disco: à medida que o banco de dados grava blocos de dados, registros WAL ou arquivos temporários no disco físico, ele criptografa automaticamente os dados usando algoritmos AES-256 antes de gravar no disco físico.
    • Leitura do disco: quando o banco de dados precisa ler dados na memória, ele descriptografa automaticamente os blocos usando as DEKs armazenadas na memória.
  • Limites de segurança: sua KEK nunca é armazenada no disco do banco de dados local, garantindo que, mesmo que a mídia de armazenamento físico seja comprometida, os dados permaneçam ilegíveis sem acesso autorizado ao cofre externo.

Escopo e especificações de criptografia

O AlloyDB Omni usa algoritmos AES-256 padrão do setor para proteger seus dados.

  • Arquivos de dados (tabelas e índices) : AES-256-XTS.
  • Registros de gravação antecipada (WAL) : AES-256-CTR.
  • Arquivos temporários:AES-256-XTS ou AES-256-CTR, dependendo do tipo de dados temporários.
  • Encapsulamento de chaves:AES-256-KWP.

Backup e alta disponibilidade

Quando a TDE está ativada, os backups criados usando pgBackRest herdam a configuração de criptografia do cluster de origem. Isso garante que os dados de backup permaneçam protegidos com o mesmo nível de segurança do banco de dados principal.

KMS e autenticação com suporte

O AlloyDB Omni oferece suporte ao HashiCorp Vault como provedor de KMS externo. O AlloyDB Omni só oferece suporte ao mecanismo de secrets KV-V2, e o único método de autenticação com suporte é o JWT.

Observação: o AlloyDB Omni oferece suporte ao KMS baseado em arquivos. No entanto, recomendamos que você use isso apenas para fins de teste, não em cargas de trabalho de produção.

Compatibilidade com ferramentas do PostgreSQL

Os clusters ativados para TDE oferecem suporte a todas as ferramentas integradas do PostgreSQL, exceto initdb, de forma transparente por meio de variáveis de ambiente. Se você usar initdb, verifique se transmitiu o URL da KEK. Para mais informações, consulte Criar um cluster ativado para TDE.

Limitações

  • Não é possível ativar a TDE em clusters atuais.
  • Depois de ativada, não é possível desativar a TDE.
  • Não há suporte para upgrades de versão principal em clusters ativados para TDE.
  • Não é possível restaurar backups criptografados em servidores não criptografados ou backups não criptografados em servidores criptografados.
  • Não há suporte para rotação de DEK.
  • A rotação de KEK é compatível, desde que o caminho do URL da KEK permaneça o mesmo.
  • A rotação de KEK só é compatível com o HashiCorp Vault como provedor de KMS externo.
  • Não é possível CREATE DATABASE usando a estratégia FILE_COPY.
  • Em clusters ativados para TDE, os backups do Barman só oferecem suporte ao modo rsync. O método de backup postgres não é compatível.

A seguir