Partilhar via


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

APLICA-SE A: SDK v4

O Serviço de Bot de IA do Azure criptografa automaticamente seus dados quando eles persistem na nuvem para proteger os dados e atender aos compromissos organizacionais de segurança e conformidade.

A encriptação e a desencriptação são transparentes, o que significa que a encriptação e o acesso são geridos por si. Os dados estão protegidos por predefinição e não precisa de modificar o código ou as aplicações para tirar partido da encriptação.

Sobre o gerenciamento de chaves de criptografia

Por predefinição, a subscrição utiliza chaves de encriptação geridas pela Microsoft. Você pode gerenciar seu recurso de bot com suas próprias chaves chamadas chaves gerenciadas pelo cliente. As chaves gerenciadas pelo cliente oferecem maior flexibilidade para criar, girar, desabilitar e revogar controles de acesso aos dados que o Serviço de Bot do Azure AI armazena. Também pode auditar as chaves de encriptação utilizadas para proteger os dados.

Ao criptografar dados, o Serviço de Bot do Azure AI 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 geridas pelo cliente com o Azure Key Vault

Para utilizar o recurso de chaves gerenciadas pelo cliente, você deve armazenar e gerenciar chaves no Cofre de Chaves do Azure. Você pode criar suas próprias chaves e armazená-las em um cofre de chaves ou pode usar as APIs do Cofre de Chaves do Azure para gerar chaves. Seu recurso de Bot do Azure e o cofre de chaves devem estar no mesmo locatário do Microsoft Entra ID, mas podem estar em assinaturas diferentes. Para obter mais informações sobre o Azure Key Vault, consulte O que é o Azure Key Vault?.

Ao usar uma chave gerenciada pelo cliente, o Serviço de Bot do Azure AI 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 do Azure AI para enviar ou receber mensagens e você não poderá acessar ou editar a configuração do seu 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 Cofre de Chaves do Azure. Você pode usar o Cofre da Chave com o Serviço de Bot do Azure AI. Para obter informações, consulte Configurar o aplicativo Web para se conectar ao Cofre da Chave. Para obter um exemplo sobre como armazenar e recuperar segredos com o Cofre da Chave, consulte Guia de início rápido: biblioteca de cliente secreta do Cofre da Chave do Azure para .NET (SDK v4).

Importante

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

Que dados são encriptados?

O Serviço de Bot do Azure AI armazena dados do cliente sobre o bot, os canais que ele usa, as definições de configuração definidas pelo desenvolvedor e, quando necessário, um registro de conversas ativas no momento. Também armazena transitoriamente, por menos de 24 horas, as mensagens enviadas através dos canais de Linha Direta ou Web Chat e quaisquer anexos carregados.

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

Nota

Como o Serviço de Bot do Azure AI 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 AI, a criptografia não se estende a esses serviços. Isso significa que, enquanto estiver sob o controle do Serviço de Bot do Azure AI, os dados serão armazenados criptografados de acordo com as orientações deste artigo; no entanto, ao sair do serviço para entregar 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 o Serviço de Bot do Azure AI requer que você habilite duas propriedades na instância do Cofre de Chaves do Azure que planeja usar para hospedar suas chaves de criptografia: Proteção de exclusão suave e Proteção de 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 suave e proteção de limpeza, consulte a Visão geral de exclusão suave do Cofre de Chaves do Azure.

Screenshot of soft delete and purge protection enabled.

Se estiver a utilizar uma instância existente do Azure Key Vault, pode verificar se estas propriedades estão ativadas consultando a secção Propriedades no portal do Azure. Se alguma dessas propriedades não estiver habilitada, consulte a seção Cofre da Chave em Como habilitar a proteção de exclusão suave e limpeza.

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

Para que o Serviço de Bot do Azure AI 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 do Azure AI o conjunto atual de permissões. Para obter mais informações sobre o Azure Key Vault, incluindo como criar um cofre de chaves, consulte Sobre o Azure Key Vault.

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

    1. Aceda ao portal do Azure.
    2. Abra a folha Subscrições e selecione a subscrição 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 dá suporte a dois modelos de permissão: RBAC (controle de acesso baseado em função) do Azure ou política de acesso ao cofre. Você pode optar por usar qualquer um dos modelos de permissão. Verifique se os Firewalls e redes virtuais na folha Rede do Cofre da Chave estão definidos como Permitir acesso público de todas as redes nesta etapa. Além disso, certifique-se de que o operador recebeu a permissão de 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 do RBAC do Azure no seu cofre de chaves:

      1. Abra a folha Cofres de chaves e selecione o cofre de chaves .
      2. Vá para a folha Controle de acesso (IAM) e atribua a função Usuário de criptografia do Key Vault Crypto Service ao Bot Service CMEK Prod. 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 da política de acesso do Cofre da Chave no cofre da chave:

      1. Abra a folha Cofres de chaves e selecione o cofre de chaves .
      2. Adicione o aplicativo Bot Service CMEK Prod como uma política de acesso e atribua-lhe as seguintes permissões:
      • Obter (a partir das Operações de Gestão de Chaves)
      • Chave de desembrulhar (das Operações Criptográficas)
      • Chave de encapsulamento (das operações criptográficas)
      1. Selecione Salvar para salvar as alterações feitas.

      Bot Service CMEK Prod added as an access policy

  3. Permita que o Cofre da Chave 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 estiver definido como Desativar acesso público, certifique-se de que a opção Permitir que serviços confiáveis da Microsoft ignorem este firewall está selecionada.
    4. Selecione Salvar para salvar as alterações feitas.

    Firewall exception added for Key Vault

Ativar as chaves geridas pelo cliente

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

  1. Abra a folha de recursos do Bot do Azure para seu 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 Guardar, na parte superior do painel.

    Bot resource using customer-managed encryption

Quando essas etapas forem concluídas, o Serviço de Bot do Azure AI 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.

Girar chaves gerenciadas pelo cliente

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

Como a recriptografia com a nova chave ocorre de forma assíncrona, certifique-se de que a chave antiga permaneça 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 Bot Service CMEK Prod do cofre de chaves.

Nota

Revogar o acesso interromperá a maioria 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óximos passos

Saiba mais sobre o Azure Key Vault