Elaborar uma solução para gerenciar segredos, chaves e certificados

Concluído

No Azure, as chaves de criptografia podem ser gerenciadas pela plataforma ou pelo cliente.

As PMKs (chave de criptografia gerenciada pela plataforma) são chaves de criptografia geradas, armazenadas e gerenciadas inteiramente pelo Azure. Os clientes não interagem com as PMKs. As chaves usadas para a Criptografia em repouso de Dados do Azure, por exemplo, são PMKs por padrão.

As CMKs (chaves gerenciadas pelo cliente), por outro lado, são aquelas que podem ser lidas, criadas, excluídas, atualizadas e/ou administradas por um ou mais clientes. As chaves armazenadas em um cofre de chaves de propriedade do cliente ou um HSM (módulo de segurança de hardware) são CMKs. O BYOK (Bring Your Own Key) é um cenário de CMK no qual um cliente importa (traz) chaves de um local de armazenamento externo para um serviço de gerenciamento de chaves do Azure (confira Azure Key Vault: traga sua própria especificação de chave).

Um tipo específico de chave gerenciada pelo cliente é a "KEK" (chave de criptografia de chave). A KEK é uma chave primária, que controla o acesso a uma ou mais chaves de criptografia que também são criptografadas.

As chaves gerenciadas pelo cliente podem ser armazenadas no local ou, mais comumente, em um serviço de gerenciamento de chaves na nuvem.

Serviços de gerenciamento de chaves do Azure

O Azure oferece várias opções para armazenar e gerenciar suas chaves na nuvem, incluindo Azure Key Vault, HSM Gerenciado do Azure, HSM Dedicado e HSM de Pagamento. Essas opções diferem em termos de nível de conformidade com o padrão FIPS, sobrecarga de gerenciamento e aplicativos pretendidos.

Azure Key Vault (Camada standard): um serviço de gerenciamento de chaves na nuvem de vários locatários validado pelo FIPS 140-2 nível 1 que também pode ser usado para armazenar segredos e certificados. As chaves armazenadas no Azure Key Vault são protegidas por software e podem ser usadas para criptografia em repouso e aplicativos personalizados. O Key Vault fornece uma API moderna e a mais ampla variedade de implantações regionais e integrações com os Serviços do Azure. Para saber mais, confira Sobre o Azure Key Vault.

Azure Key Vault (camada Premium): uma oferta de HSM de vários locatários validada pelo FIPS 140-2 nível 2 que pode ser usada para armazenar chaves em um limite de hardware seguro. A Microsoft gerencia e opera o HSM subjacente e as chaves armazenadas no Azure Key Vault Premium podem ser usadas para criptografia em repouso e aplicativos personalizados. O Key Vault Premium também fornece uma API moderna e a mais ampla variedade de implantações regionais e integrações com os Serviços do Azure. Para saber mais, confira Sobre o Azure Key Vault.

HSM Gerenciado do Azure: uma oferta de HSM de locatário único validada pelo FIPS 140-2 nível 3 que dá aos clientes controle total de um HSM para criptografia em repouso, SSL Sem Chave e aplicativos personalizados. Os clientes recebem um pool de três partições HSM que juntas agem como um dispositivo HSM lógico e altamente disponível, com um serviço que expõe a funcionalidade de criptografia por meio da API do Key Vault. A Microsoft trata do provisionamento, da aplicação de patches, da manutenção e do failover de hardware dos HSMs, mas não tem acesso às chaves, pois o serviço é executado na infraestrutura de computação confidencial do Azure. O HSM gerenciado é integrado aos serviços PaaS SQL do Azure, Armazenamento do Azure e Proteção de Informações do Azure e oferece suporte para o TLS sem chave com F5 e Nginx. Para obter mais informações, veja O que é o HSM Gerenciado do Azure Key Vault?

HSM Dedicado do Azure: uma oferta de HSM bare-metal validada pelo FIPS 140-2 nível 3, que permite aos clientes conceder um dispositivo HSM de uso geral que reside em datacenters da Microsoft. O cliente tem a propriedade total e completa sobre o dispositivo HSM e é responsável por aplicar patches e atualizar o firmware quando necessário. A Microsoft não tem permissões sobre o dispositivo nem acesso ao material da chave e o HSM Dedicado não é integrado a nenhuma oferta de PaaS do Azure. Os clientes podem interagir com o HSM usando as APIs PKCS#11, JCE/JCA e KSP/CNG. Essa oferta é mais útil para cargas de trabalho lift-and-shift herdadas, PKI, Descarregamento de SSL e TLS sem chave (as integrações com suporte incluem F5, Nginx, Apache, Palo Alto, IBM GW e muito mais), aplicativos OpenSSL, TDE da Oracle e IaaS de TDE de SQL do Azure. Para obter mais informações, veja O que é o HSM Gerenciado do Azure Key Vault?

HSM de Pagamentos do Azure: uma oferta de bare-metal PCI HSM v3 validada pelo FIPS 140-2 nível 3, que permite aos clientes conceder um dispositivo HSM de pagamento em datacenters da Microsoft para operações de pagamentos, incluindo processamento de pagamentos, emissão de credencial de pagamento, proteção de chaves e dados de autenticação e proteção de dados confidenciais. O serviço está em conformidade com o PCI DSS e o PCI 3DS. O HSM de Pagamento do Azure oferece HSMs de locatário único para que os clientes tenham controle administrativo completo e acesso exclusivo ao HSM. Depois que o HSM for alocado a um cliente, a Microsoft não terá acesso aos dados do cliente. Da mesma forma, quando o HSM não for mais necessário, os dados do cliente serão zerados e apagados assim que o HSM for liberado, para garantir que a privacidade e a segurança totais sejam mantidas. Para saber mais, confira Sobre o HSM de Pagamento do Azure.

Para obter uma visão geral dos tipos de segredos, chaves e certificados com os quais você pode trabalhar no cofre de chaves, consulte Visão geral de chaves, segredos e certificados do Azure Key Vault

Melhores práticas para usar o Key Vault

Usar cofres de chaves separados

Recomenda-se usar um cofre por aplicativo por ambiente (desenvolvimento, pré-produção e produção), por região. Isso ajuda você a não compartilhar segredos entre ambientes e regiões. Também reduzirá a ameaça em caso de violação.

Por que recomendamos cofres de chaves separados

Os cofres de chaves definem limites de segurança para segredos armazenados. Agrupar segredos no mesmo cofre aumenta o raio de explosão de um evento de segurança porque os ataques podem ser capazes de acessar segredos através de interesses. Para atenuar as questões de acesso, considere a quais segredos um aplicativo específico deve ter acesso e, em seguida, separe seus cofres de chaves com base nessa delineação. Separar cofres de chaves por aplicativo é o limite mais comum. Os limites de segurança, no entanto, podem ser mais granulares para aplicativos grandes, por exemplo, por grupo de serviços relacionados.

Controle de acesso ao seu cofre

Chaves e segredos de criptografia, como certificados, cadeias de conexão e senhas são confidenciais e comercialmente críticos. Você precisa proteger o acesso aos cofres de chaves permitindo apenas aplicativos e usuários autorizados. Os recursos de segurança do Azure Key Vault fornece uma visão geral do modelo de acesso do Key Vault. Ele explica a autenticação e a autorização. Também descreve como proteger o acesso aos cofres de chaves.

As sugestões para controlar o acesso ao cofre são as seguintes:

  • Bloquear o acesso à sua assinatura, grupo de recursos e cofres de chaves (RBAC [controle de acesso baseado em função]).
  • Crie políticas de acesso para cada cofre.
  • Use o princípio de acesso de privilégios mínimos para conceder acesso.
  • Ative o firewall e os pontos de extremidade de serviço de rede virtual.

Ativar a proteção de dados para o cofre

Ative a proteção de limpeza para se proteger contra a exclusão mal-intencionada ou acidental dos segredos e do cofre de chaves, mesmo após a ativação da exclusão reversível.

Para obter mais informações, veja Visão geral da exclusão temporária do Azure Key Vault

Ativar o registro em log

Ative o registro em log para o cofre. Além disso, configure alertas.

Backup

A proteção contra limpeza impede a exclusão mal-intencionada e acidental de objetos do cofre por até 90 dias. Em cenários em que a proteção contra limpeza não é uma opção possível, recomendamos backup de objetos do cofre, que não podem ser recriados de outras fontes, como chaves de criptografia geradas no cofre.

Para obter mais informações sobre backup, veja Backup e restauração do Azure Key Vault

Soluções multilocatário e Key Vault

Uma solução multilocatário é criada em uma arquitetura em que os componentes são usados para atender vários clientes ou locatários. As soluções multilocatário geralmente são usadas para dar suporte a soluções SaaS (software como serviço). Se você estiver criando uma solução multilocatário que inclua o Key Vault, examine Multilocação e Azure Key Vault.