Compartilhar via


Multilocação e Azure Key Vault

O Azure Key Vault é usado para gerenciar dados seguros para sua solução, incluindo segredos, chaves de criptografia e certificados. Neste artigo, descrevemos alguns dos recursos do Azure Key Vault que são úteis para soluções multilocatário. Em seguida, fornecemos links para as diretrizes que poderão ajudá-lo quando você estiver planejando como usará o Key Vault.

Modelos de isolamento

Ao trabalhar com um sistema multilocatário usando o Key Vault, você precisará tomar uma decisão sobre o nível de isolamento que deseja usar. A escolha de modelos de isolamento usados depende dos seguintes fatores:

  • Quantos locatários você planeja ter?
  • Você compartilha sua camada de aplicativo entre múltiplos locatários, implanta instâncias de aplicativo de locatário único ou implanta selos de implantação separados para cada locatário?
  • Seus locatários precisam gerenciar as próprias chaves de criptografia?
  • Seus locatários têm requisitos de conformidade que exigem que seus segredos sejam armazenados separadamente dos segredos de outros locatários?

A tabela a seguir resume as diferenças entre os principais modelos de locação do Key Vault:

Consideração Cofre por locatário, na assinatura do provedor Cofre por locatário, na assinatura do locatário Cofre compartilhado
Isolamento de dados Alto Muito alto Baixo
Isolamento de desempenho Média. A alta taxa de transferência pode ser limitada, mesmo com muitos cofres Alto Baixo
Complexidade da implantação Baixa/média, dependendo do número de locatários Alto. O locatário deve conceder corretamente acesso ao provedor Baixo
Complexidade operacional Alto Baixa para o provedor, mais alta para o locatário O menor
Cenário de exemplo Instâncias de aplicativos individuais por locatário Chaves de criptografia gerenciadas pelo cliente Grande solução multilocatário com uma camada de aplicativo compartilhada

Cofre por locatário, na assinatura do provedor

Você pode considerar a implantação de um cofre para cada um de seus locatários em sua assinatura do Azure (do provedor de serviços). Essa abordagem fornece um forte isolamento de dados entre os dados de cada locatário. No entanto, isso requer que você implante e gerencie um número crescente de cofres à medida que aumenta o número de locatários.

Não há limite para o número de cofres que você pode implantar em uma assinatura do Azure. No entanto, você deve considerar os seguintes limites:

Cofre por locatário, na assinatura do locatário

Em algumas situações, seus locatários poderão criar cofres em suas próprias assinaturas do Azure e talvez queiram conceder acesso ao aplicativo para trabalhar com segredos, certificados ou chaves. Essa abordagem é apropriada quando você permite chaves gerenciadas pelo cliente (CMKs) para criptografia em sua solução.

Para acessar os dados no cofre do seu locatário, o locatário deve fornecer ao seu aplicativo acesso ao cofre dele. Esse processo requer que seu aplicativo seja autenticado por meio de uma instância do Microsoft Entra. Uma abordagem é publicar um aplicativo multilocatário do Microsoft Entra. Seus locatários devem executar um processo de consentimento único. Primeiro, eles registram o aplicativo multilocatário do Microsoft Entra em seu próprio locatário do Microsoft Entra. Em seguida, concedem ao aplicativo multilocatário do Microsoft Entra o nível apropriado de acesso ao cofre. Eles também precisam fornecer a ID de recurso completa do cofre que criaram. Em seguida, seu código de aplicativo pode usar uma entidade de serviço associada ao aplicativo multilocatário do Microsoft Entra em seu próprio Microsoft Entra ID para acessar o cofre de cada locatário.

Como alternativa, você pode pedir a cada locatário para criar uma entidade de serviço para seu serviço usar e fornecer suas credenciais. No entanto, essa abordagem exige que você armazene e gerencie com segurança as credenciais destinadas a cada locatário, o que é uma responsabilidade de segurança.

Se os seus locatários configurarem controles de acesso à rede em seus cofres, verifique se você poderá acessar os cofres. Projete seu aplicativo para lidar com situações em que um locatário altera seus controles de acesso à rede e impede que você acesse seus cofres.

Cofres compartilhados

Você pode optar por compartilhar os segredos dos locatários em um cofre único. O cofre é implantado em sua assinatura do Azure (do provedor de solução), e você é responsável por gerenciá-lo. Essa abordagem é mais simples, mas fornece o mínimo de isolamento de dados e de desempenho.

Você também pode optar por implantar vários cofres compartilhados. Por exemplo, se você seguir o padrão de Selos de Implantação, será provável que implante um cofre compartilhado em cada selo. Da mesma forma, se você implantar uma solução de várias regiões, deverá implantar cofres em cada região pelos seguintes motivos:

  • Para evitar a latência de tráfego entre regiões ao trabalhar com os dados no seu cofre.
  • Para dar suporte aos requisitos de residência de dados.
  • Para habilitar o uso de cofres regionais em outros serviços que requerem implantações de mesma região.

Quando você trabalha com um cofre compartilhado, é importante considerar o número de operações executadas no cofre. As operações incluem a leitura de segredos e a execução de operações de criptografia ou descriptografia. O Key Vault impõe limites ao número de solicitações que podem ser feitas em um único cofre e em todos os cofres em uma assinatura do Azure. Certifique-se de seguir as diretrizes de limitação. É importante seguir as práticas recomendadas, incluindo armazenar em cache com segurança os segredos recuperados e usar a criptografia de envelope para evitar o envio de todas as operações de criptografia para o Key Vault. Ao seguir essas práticas recomendadas, você poderá executar soluções de alta escala em um cofre único.

Se você precisar armazenar segredos, chaves ou certificados específicos do locatário, considere usar uma convenção de nomenclatura como um prefixo de nomenclatura. Por exemplo, você poderá acrescentar a ID do locatário ao nome de cada segredo. Em seguida, o código do aplicativo poderá carregar facilmente o valor de um segredo específico para um locatário específico.

Recursos do Azure Key Vault que dão suporte à multilocação

Marcações

O Key Vault tem suporte para marcação de segredos, certificados e chaves com metadados personalizados, para que você possa usar uma marca para rastrear a ID do locatário para o segredo específico de cada locatário. No entanto, o Key Vault não tem suporte para consulta por marcas, portanto, esse recurso é mais adequado para fins de gerenciamento, em vez de para uso na lógica do aplicativo.

Para obter mais informações:

Suporte ao Azure Policy

Se você decidir implantar um grande número de cofres, será importante garantir que eles sigam um padrão consistente para a configuração de acesso à rede, o registro em log e o controle de acesso. Considere usar o Azure Policy para verificar se os cofres foram configurados de acordo com seus requisitos.

Para obter mais informações:

HSM Gerenciado e HSM Dedicado

Se você precisar executar um grande número de operações por segundo e os limites de operação do Key Vault forem insuficientes, considere usar o HSM Gerenciado ou o HSM Dedicado. Os dois produtos fornecem uma quantidade reservada de capacidade, mas geralmente são mais caros do que o Key Vault. Além disso, esteja ciente dos limites no número de instâncias desses serviços que você pode implantar em cada região.

Para obter mais informações:

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Outros colaboradores:

  • Jack Lichwa | Gerente Principal de Produto, Azure Key Vault
  • Arsen Vladimirskiy | Engenheiro principal de atendimento ao cliente, FastTrack for Azure

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas

Examine as abordagens de implantação e configuração para multilocação.