Compartilhar via


Criptografia do Serviço de Bot de IA do Azure para dados inativos

APLICA-SE A: SDK v4

O Serviço de Bot de IA do Azure criptografa automaticamente os seus dados quando eles são mantidos na nuvem para protegê-los e atender aos compromissos de conformidade e segurança da organização.

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 pode gerenciar o recurso do seu bot com suas próprias chaves, que são chamadas de chaves gerenciadas pelo cliente. As chaves gerenciadas pelo cliente oferecem maior flexibilidade para criar, fazer rotação, desabilitar e revogar controles de acesso aos armazenamentos de dados do Serviço de Bot de IA do Azure. Você também pode auditar as chaves de criptografia usadas para proteger seus dados.

Ao criptografar dados, o Serviço de Bot de IA 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 estã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 as 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 recurso de seu bot do Azure e o cofre de chaves devem estar no mesmo locatário de ID do Microsoft Entra. mas eles podem estar em diferentes assinaturas. 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 de IA do Azure criptografa seus dados em seu armazenamento. Se o acesso a essa chave for revogado ou a chave for excluída, seu bot não poderá usar o Serviço de Bot de IA do Azure para enviar ou receber mensagens e você não poderá acessar ou editar a configuração do bot no portal do Azure.

Quando você cria um recurso de Bot do Azure por meio do portal, o Azure gera uma ID de aplicativo e uma senha, mas não as armazena no Azure Key Vault. Você pode usar o Cofre de Chaves com o Serviço de Bot de IA do Azure. Para mais informações, confira Configurar o aplicativo Web para se conectar ao Cofre de Chaves. Para obter um exemplo sobre como armazenar e recuperar segredos com o Cofre de Chaves, confira Guia de início rápido: biblioteca de clientes secreta do Azure Key Vault para .NET (SDK v4).

Importante

A equipe do Serviço de Bot de IA 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 de IA do Azure armazena dados do cliente sobre o bot, os canais que ele usa, as definições de configuração que o desenvolvedor define e, quando necessário, um registro de conversas ativas no momento. Ele também armazena transitoriamente, por menos de 24 horas, as mensagens enviadas pelos canais Direct Line ou WebChat e todos os anexos carregados.

Todos os dados do cliente são criptografados com duas camadas de criptografia no Serviço de Bot de IA do Azure; com chaves de criptografia gerenciadas pela Microsoft ou chaves de criptografia gerenciadas pela Microsoft e pelo cliente. O Serviço de Bot de IA do Azure criptografa dados armazenados transitoriamente usando as chaves de criptografia gerenciadas pela Microsoft e, dependendo da configuração do recurso Bot do Azure, criptografa dados de longo prazo usando as chaves de criptografia gerenciadas pela Microsoft ou pelo cliente.

Observação

Como o Serviço de Bot de IA 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 de IA do Azure, a criptografia não se estende a esses serviços. Isso significa que, enquanto estiver sob o controle do Serviço de Bot de IA do Azure, os dados serão armazenados criptografados de acordo com as diretrizes deste artigo. No entanto, ao saírem do serviço para serem entregues a outro serviço, os dados são descriptografados e, em seguida, enviados usando criptografia TLS 1.2 para o serviço de destino.

Como configurar sua instância do Azure Key Vault

O uso de chaves gerenciadas pelo cliente com Serviço de Bot de IA do Azure exige que você habilite duas propriedades na instância do Azure Key Vault que planeja usar para hospedar suas chaves de criptografia: Exclusão temporária 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 exclusão temporária e proteção contra limpeza, confira Visão geral da exclusão temporária do Azure Key Vault.

Screenshot of soft delete and purge protection enabled.

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, confira a seção Cofre de chaves em Como habilitar a exclusão temporária e a proteção contra limpeza.

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

Para que o Serviço de Bot de IA do Azure tenha acesso ao cofre de chaves criado para essa finalidade, uma política de acesso precisa ser definida, o que dá à entidade de serviço do Serviço de Bot de IA do Azure o conjunto atual de permissões. Para obter mais informações sobre o Azure Key Vault, incluindo como criar um cofre de chaves, confira Sobre o Azure Key Vault.

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

    1. Vá para 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 registered as a resource provider

  2. O Azure Key Vault suporta dois modelos de permissão: o Controle de acesso baseado em função (RBAC) do Azure ou a Política de acesso do cofre. Você pode optar por usar qualquer modelo de permissão. Verifique se os Firewalls e redes virtuais na folha Redes do Cofre de Chaves estão definidos para Permitir acesso público de todas as redes nesta etapa. Além disso, verifique se o operador recebeu a permissão para operações de gerenciamento de chaves.

    Screenshot of the two permission models available for your key vault.

    1. Para configurar o modelo de permissão RBAC do Azure em seu cofre de chaves:

      1. Abra a folha Cofres de chaves e selecione seu cofre de chaves.
      2. Vá para a folha Controle de acesso (IAM) e atribua a função Usuário de Criptografia do Serviço de Criptografia do Cofre de Chaves ao Serviço de Bot CMEK Pro. Somente um usuário com a função de proprietário da assinatura pode fazer essa alteração.

      Screenshot of key vault configuration showing the crypto service encryption user role has been added.

    2. Para configurar o modelo de permissão de política de acesso do Cofre de chaves em seu cofre de chaves:

      1. Abra a folha Cofres de chaves e selecione seu cofre de chaves.
      2. Adicione o aplicativo de serviço de bot CMEK Prod como uma política de acesso e atribua-lhe as seguintes permissões:
      • Obter (das Operações de Gerenciamento de Chaves)
      • Desempacotar chave (das Operações Criptográficas)
      • Empacotar chave (das Operações Criptográficas)
      1. Selecione Salvar para salvar todas as alterações feitas.

      Bot Service CMEK Prod added as an access policy

  3. Permita que o Cofre de Chaves ignore seu firewall.

    1. Abra a folha Cofres de chaves e selecione seu cofre de chaves.
    2. Abra a folha Redes e vá para a guia Firewalls e redes virtuais.
    3. Se a opção Permitir acesso de estiver definida para Desabilitar o acesso público, certifique-se de que a opção Permitir que serviços confiáveis da Microsoft ignorem esse firewall esteja selecionada.
    4. Selecione Salvar para salvar todas as alterações feitas.

    Firewall exception added for Key Vault

Habilitar chaves gerenciadas pelo cliente

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

  1. Kudu a folha do recurso de Bot do Azure para o seu bot.

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

  3. Insira a URI completa 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.

    Bot resource using customer-managed encryption

Depois que essas etapas forem concluídas, o Serviço de Bot de IA do Azure iniciará o processo de criptografia, que pode levar até 24 horas para ser concluído. Seu bot permanece funcional durante esse período de tempo.

Fazer a rotação de chaves gerenciadas pelo cliente

Para fazer a rotação de uma chave de criptografia gerenciada pelo cliente, você deve atualizar o recurso Serviço de Bot de IA do Azure para usar a nova URI para a nova chave (ou uma 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, seu 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 da entidade de serviço do Serviço de Bot CMEK Prod do seu cofre de chaves.

Observação

Revogar o acesso interromperá a maior parte das funcionalidades associadas ao seu bot. Para desativar 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 o Azure Key Vault