Criptografia transparente de dados para o AlloyDB Omni

Selecione uma versão da documentação:

Com a criptografia transparente de dados (TDE, na sigla em inglês), é possível 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 prévios de gravação (WALs, na sigla em inglês) sejam criptografados automaticamente antes de serem gravados em disco. Isso ajuda você a atender aos requisitos de compliance e proteger informações sensíveis.

A criptografia é transparente porque as consultas SQL e as operações DDL e 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 dois níveis 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): geradas e de propriedade do AlloyDB Omni. Elas criptografam os arquivos de dados reais, o WAL e os arquivos temporários. O AlloyDB Omni armazena DEKs no disco, mas as encapsula com sua KEK.
  • Chave de criptografia de chaves (KEK): 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 faz a autenticação 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 em disco: quando o banco de dados grava blocos de dados, registros do 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. Assim, mesmo que a mídia de armazenamento físico seja comprometida, os dados permanecem 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 compatíveis

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

Observação: o AlloyDB Omni é compatível com o KMS baseado em arquivos. No entanto, recomendamos que você use isso apenas para testes, não em cargas de trabalho de produção.

Compatibilidade com ferramentas do PostgreSQL

Os clusters habilitados para TDE são compatíveis com todas as ferramentas integradas do PostgreSQL, exceto initdb, de maneira transparente por variáveis de ambiente. Se você usa initdb, transmita o URL da KEK. Para mais informações, consulte Criar um cluster com TDE ativada.

Limitações

  • Não é possível ativar a TDE em clusters atuais.
  • Depois de ativada, não é possível desativar a TDE.
  • Não é possível fazer upgrade de versão principal em clusters ativados para TDE.
  • Não é possível restaurar backups criptografados em servidores não criptografados nem backups não criptografados em servidores criptografados.
  • A rotação de DEK não é compatível.
  • A rotação da KEK é compatível desde que o caminho do URL da KEK permaneça o mesmo.
  • A rotação de KEK é compatível apenas 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ó aceitam o modo rsync. O método de backup postgres não é compatível.

A seguir