Criptografia de dados do Azure Cosmos DB

APLICA-SE AO: NoSQL MongoDB Cassandra Gremlin Table

"Criptografia em repouso" é uma frase que geralmente se refere à criptografia de dados em dispositivos de armazenamento não complicados, como SSDs (unidades de estado sólido) e HDDs (unidades de disco rígido). O Azure Cosmos DB armazena os bancos de dados principais em SSDs. Seus anexos de mídia e backups são armazenados no Armazenamento de Blobs do Azure, que geralmente são apoiados por HDDs. Com o lançamento da criptografia em repouso no Azure Cosmos DB, todos os bancos de dados, anexos de mídia e backups são criptografados. Os dados agora são criptografados em trânsito (pela rede) e em repouso (armazenamento não volátil), fornecendo criptografia de ponta a ponta.

Como uma PaaS (plataforma como serviço), o Azure Cosmos DB é fácil de usar. Como todos os dados de usuário armazenados no Azure Cosmos DB são criptografados em repouso e transporte, você não precisa realizar nenhuma ação. Em outras palavras, a criptografia em repouso está "ativada" por padrão. Não existem controles para ativá-lo ou desativá-lo. O Azure Cosmos DB usa a criptografia AES-256 em todas as regiões onde a conta está em execução.

Fornecemos esse recurso enquanto continuamos a atender aos nossos SLAs (contratos de nível de serviço) de disponibilidade e desempenho. Os dados armazenados em sua conta do Azure Cosmos DB são criptografados de forma automática e direta, com as chaves gerenciadas pela Microsoft (chaves gerenciadas pelo serviço). Opcionalmente, você pode optar por adicionar uma segunda camada de criptografia com suas próprias chaves, conforme descrito no artigo chaves gerenciadas pelo cliente.

Implementação de criptografia em repouso para Azure Cosmos DB

A criptografia em repouso é implementada usando várias tecnologias de segurança, incluindo sistemas de armazenamento de chaves seguras, redes criptografadas e APIs criptográficas. Os sistemas que descriptografam e processam dados precisam se comunicar com sistemas que gerenciam chaves. O diagrama mostra como o armazenamento de dados criptografados e o gerenciamento de chaves são separados.

Diagram that shows data storage and key management design.

O fluxo básico de uma solicitação de usuário é:

  • A conta do banco de dados do usuário é preparada e as chaves de armazenamento são recuperadas por meio de uma solicitação ao Provedor de Recursos do Serviço de Gerenciamento.
  • Um usuário cria uma conexão ao Azure Cosmos DB por meio de HTTPS/transporte seguro. (Os SDKs abstraem os detalhes).
  • O usuário envia um documento JSON para ser armazenado pela conexão segura criada anteriormente.
  • O documento JSON é indexado, a menos que o usuário tenha desativado a indexação.
  • O documento JSON e os dados de índice são gravados no armazenamento seguro.
  • Periodicamente, os dados são lidos no armazenamento seguro e o backup é feito Repositório de Blobs Criptografados do Azure.

Perguntas frequentes

Encontre respostas para perguntas frequentes sobre criptografia.

Quanto custa a mais o Armazenamento do Azure se a Criptografia do Serviço de Armazenamento for habilitada?

Não há custo adicional.

Quem gerencia as chaves de criptografia?

Os dados armazenados em sua conta do Azure Cosmos DB são criptografados automaticamente e perfeitamente com chaves gerenciadas pela Microsoft usando chaves gerenciadas pelo serviço. Opcionalmente, você pode optar por adicionar uma segunda camada de criptografia com chaves gerenciadas pelo cliente usando chaves gerenciadas pelo cliente.

Com que frequência as chaves de criptografia são trocadas?

A Microsoft tem um conjunto de diretrizes internas para rotação de chaves de criptografia, que o Azure Cosmos DB segue. As diretrizes específicas não são publicadas. A Microsoft publica o Ciclo de Vida de Desenvolvimento de Segurança, que é visto como um subconjunto de diretrizes internas e tem práticas recomendadas úteis para desenvolvedores.

Posso usar minhas próprias chaves de criptografia?

Sim, esse recurso está disponível para novas contas do Azure Cosmos DB. Ele deve ser implantado no momento da criação da conta. Para obter mais informações, consulte o documento de chaves gerenciadas pelo cliente.

Aviso

Os seguintes nomes de campo são reservados em tabelas de API do Cassandra em contas usando chaves gerenciadas pelo cliente:

  • id
  • ttl
  • _ts
  • _etag
  • _rid
  • _self
  • _attachments
  • _epk

Quando as chaves gerenciadas pelo cliente não estão habilitadas, somente os nomes de campo que começam com __sys_ são reservados.

Em quais regiões a criptografia está ativada?

A criptografia está ativada para todos os dados do usuário em todas as regiões do Azure Cosmos DB.

A criptografia afeta os SLAs de latência de desempenho e produtividade?

Não há nenhum efeito ou alterações nos SLAs de desempenho porque a criptografia em repouso agora está habilitada para todas as contas existentes e novas. Para ver as garantias mais recentes, consulte SLA para Azure Cosmos DB.

O emulador local dá suporte à criptografia em repouso?

O emulador é uma ferramenta autônoma de desenvolvimento/teste e não usa os serviços de gerenciamento de chaves que o serviço gerenciado do Azure Cosmos DB usa. Recomendamos habilitar o BitLocker em unidades em que você está armazenando dados confidenciais de teste do emulador. O emulador dá suporte à alteração do diretório de dados padrão e ao uso de um local conhecido.

Próximas etapas