Criptografia do Serviço de Bot do Azure para dados em repouso

aplica-se a: SDK v4

O serviço de bot do Azure criptografa automaticamente os dados quando eles são persistidos na nuvem para proteger os dados e para atender aos compromissos de segurança e conformidade organizacionais.

A criptografia e a descriptografia são transparentes, o que significa que a criptografia e o acesso são gerenciados para você. Como os dados são protegidos por padrão, você não precisa modificar seu código ou seus aplicativos para aproveitar a criptografia.

Sobre o gerenciamento de chaves de criptografia

Por padrão, sua assinatura usa chaves de criptografia gerenciadas pela Microsoft. Você também tem a opção de gerenciar seu recurso de bot com suas próprias chaves chamadas de chaves gerenciadas pelo cliente. As chaves gerenciadas pelo cliente oferecem maior flexibilidade para criar, girar, desabilitar e revogar controles de acesso para os dados do serviço de bot do Azure. Você também pode auditar as chaves de criptografia usadas para proteger seus dados.

Ao criptografar dados, o serviço de bot do Azure criptografa com dois níveis de criptografia. No caso em que as chaves gerenciadas pelo cliente não estão habilitadas, ambas as chaves usadas são chaves gerenciadas pela Microsoft. Quando as chaves gerenciadas pelo cliente são habilitadas, os dados são criptografados com a chave gerenciada pelo cliente e uma chave gerenciada pela Microsoft.

Chaves gerenciadas pelo cliente com o Azure Key Vault

Para utilizar o recurso de chaves gerenciadas pelo cliente, você deve armazenar e gerenciar chaves no Azure Key Vault. Você pode criar suas próprias chaves e armazená-las em um cofre de chaves ou pode usar as APIs do Azure Key Vault para gerar chaves. O registro de bot e o cofre de chaves devem estar no mesmo locatário Azure Active Directory (Azure AD), mas podem estar em assinaturas diferentes. Para obter mais informações sobre o Azure Key Vault, confira O que é o Azure Key Vault?.

Ao usar uma chave gerenciada pelo cliente, o serviço de bot do Azure criptografa seus dados em seu armazenamento, de modo que, se o acesso a essa chave for revogado ou a chave for excluída, o bot não poderá usar o serviço de bot do Azure para enviar ou receber mensagens e você não poderá acessar ou editar a configuração do seu registro de bot na portal do Azure.

Importante

A equipe do serviço de bot do Azure não pode recuperar um bot de chave de criptografia gerenciado pelo cliente sem acesso à chave.

Quais dados são criptografados?

O serviço de bot do Azure armazena dados do cliente sobre o bot, os canais que ele usa, definições de configuração que o desenvolvedor define e quando necessário, um registro de conversas atualmente ativas. Ele também é transitório, por menos de 24 horas, armazena as mensagens enviadas pela linha direta ou canais de bate-papo da Web e todos os anexos carregados.

Todos os dados do cliente são criptografados com duas camadas de criptografia no serviço de bot do Azure; com as chaves de criptografia gerenciadas pela Microsoft ou com as chaves de criptografia gerenciadas pela Microsoft e pelo cliente. Serviço de Bot do Azure criptografa dados armazenados transitóriamente usando as chaves de criptografia gerenciadas pela Microsoft e, dependendo da configuração do registro do bot, criptografa dados de longo prazo usando as chaves de criptografia gerenciadas pela Microsoft ou pelo cliente.

Observação

Como Serviço de Bot do Azure existe para fornecer aos clientes a capacidade de entregar mensagens de e para usuários em outros serviços fora do Serviço de Bot do Azure, a criptografia não se estende a esses serviços. Isso significa que, enquanto Serviço de Bot do Azure controle, os dados serão armazenados criptografados de acordo com as diretrizes neste artigo; No entanto, ao deixar o serviço para entregar a outro serviço, os dados são descriptografados e enviados usando a criptografia TLS 1.2 para o serviço de destino.

Como configurar sua instância Azure Key Vault configuração

O uso de chaves gerenciadas pelo cliente com Serviço de Bot do Azure requer que você habilita duas propriedades na instância Azure Key Vault que planeja usar para hospedar suas chaves de criptografia: Exclusão e proteção contra limpeza. Esses recursos garantem que, se, por algum motivo, sua chave for excluída acidentalmente, você poderá recuperá-la. Para obter mais informações sobre a exclusão e a proteção contra limpeza, consulte a Azure Key Vault visão geral da exclusão suave.

Captura de tela da exclusão suave e proteção de limpeza habilitada

Se estiver usando uma instância existente do Azure Key Vault, você poderá verificar se essas propriedades estão habilitadas examinando a seção Propriedades no portal do Azure. Se qualquer uma dessas propriedades não estiver habilitada, consulte a seção Key Vault em Como habilitar a exclusão e a proteção de limpeza.

Conceder Serviço de Bot do Azure acesso a um cofre de chaves

Para Serviço de Bot do Azure ter acesso ao cofre de chaves que você criou para essa finalidade, é necessário definir uma política de acesso que fornece à entidade de serviço do Serviço de Bot do Azure o conjunto atual de permissões. Para obter mais informações sobre Azure Key Vault, incluindo como criar um cofre de chaves, consulte Sobre Azure Key Vault.

  1. Registre o Serviço de Bot do Azure de recursos em sua assinatura que contém o cofre de chaves.

    1. Acesse o portal do Azure.
    2. Abra a folha Assinaturas e selecione a assinatura que contém o cofre de chaves.
    3. Abra a folha provedores de recursos e registre o provedor de recursos Microsoft. BotService .

    Microsoft. BotService registrado como um provedor de recursos

  2. Configure uma política de acesso em seu cofre de chaves, fornecendo ao serviço de bot CMEK a entidade de serviço de produção o Get (das operações de gerenciamento de chaves) e a chave de desencapsulamento e a tecla de encapsulamento (das operações de criptografia) permissões de chave.

    1. Abra a folha cofres de chaves e selecione o cofre de chaves.
    2. Certifique-se de que o aplicativo de CMEK de produção do serviço de bot seja adicionado como uma política de acesso e tenha essas três permissões. Talvez seja necessário adicionar o aplicativo bot Service CMEK prod como uma política de acesso ao cofre de chaves.
    3. Selecione salvar para salvar as alterações feitas.

    Serviço de bot CMEK prod adicionado como uma política de acesso

  3. Permitir que Key Vault ignore o firewall.

    1. Abra a folha cofres de chaves e selecione o cofre de chaves.

    2. Abra a folha rede e vá para a guia firewalls e redes virtuais .

    3. Se permitir acesso de for definido como ponto de extremidade privado e redes selecionadas, defina permitir que serviços da Microsoft confiáveis ignorem esse firewall para Sim.

    4. Selecione salvar para salvar as alterações feitas.

      Exceção de firewall adicionada para Key Vault

Habilitar chaves gerenciadas pelo cliente

Para criptografar o registro de bot com uma chave de criptografia gerenciada pelo cliente, siga estas etapas:

  1. Abra a folha de recursos do bot.

  2. Abra a folha criptografia do bot e selecione chaves gerenciadas pelo cliente para o tipo de criptografia.

  3. Insira o URI completo da chave, incluindo a versão, ou clique em selecionar um cofre de chaves e uma chave para localizar sua chave.

  4. Clique em Salvar na parte superior da folha.

    Recurso de bot usando criptografia gerenciada pelo cliente

Depois que essas etapas forem concluídas, o serviço de bot do Azure iniciará o processo de criptografia. Isso pode levar algum tempo para ser concluído (até 24 horas). Seu bot estará completamente funcional durante esse período de tempo.

Fazer a rotação de chaves gerenciadas pelo cliente

Para girar uma chave de criptografia gerenciada pelo cliente, você deve atualizar o recurso Serviço de Bot do Azure para usar o novo URI para a nova chave (ou nova versão da chave existente).

Como a nova criptografia com a nova chave ocorre de forma assíncrona, verifique se a chave antiga permanece disponível para que os dados possam continuar a ser descriptografados; caso contrário, o bot pode parar de funcionar. Você deve manter a chave antiga por pelo menos uma semana.

Revogar o acesso a chaves gerenciadas pelo cliente

Para revogar o acesso, remova a política de acesso para a entidade de serviço Do Serviço de Bot CMEK Prod do cofre de chaves.

Observação

Revogar o acesso quebrará a maioria das funcionalidades associadas ao bot. Para desabilitar o recurso de chaves gerenciadas pelo cliente, desative o recurso antes de revogar o acesso para garantir que o bot possa continuar funcionando.

Próximas etapas

Saiba mais sobre Azure Key Vault