Partilhar via


Noções básicas de autenticação do Bot Framework

APLICA-SE A: SDK v4

Muitas vezes, um bot deve acessar recursos protegidos, por exemplo, conta de e-mail, em nome do usuário. Para fazer isso, o bot deve ser autorizado com base nas credenciais do usuário. Antes disso, o usuário deve ser autenticado primeiro. O bot deve ser uma entidade conhecida, ou seja, deve ser autenticado dentro do contexto do Serviço de Bot do Azure AI. Isso acontece antes de o bot ser autorizado a operar em nome do usuário.

Vamos ver se podemos desembaraçar esse pacote começando com uma visão panorâmica do contexto de autenticação do Bot Framework.

Bot authentication context

  • Quando você registra um bot no Azure por meio de um recurso de Bot do Azure, o Azure cria um aplicativo de registro do Microsoft Entra ID. Esta aplicação tem um ID de aplicação () e um segredo do cliente (MicrosoftAppIdMicrosoftAppPassword). Você usa esses valores nos arquivos de configuração do bot conforme descrito abaixo.

  • O Microsoft Entra ID é um serviço de identidade na nuvem que permite criar aplicativos que entram com segurança nos usuários usando protocolos padrão do setor, como o OAuth 2.0. Você cria um aplicativo do Ative Directory e usa sua ID de aplicativo e senha para selecionar um provedor de identidade e gerar uma conexão de autenticação. Você adiciona essa conexão ao seu recurso de bot. Você também adiciona o nome da conexão nos arquivos de configuração do bot, conforme descrito abaixo.

  • Um bot é identificado por sua ID e senha do aplicativo de recursos do Bot do Azure. Você adiciona os valores relacionados no arquivo de configuração do bot ou a um gerenciador de segredos ou chaves. Você também adiciona o nome da conexão. O bot usa um token baseado no ID e na senha do aplicativo para acessar recursos protegidos. O bot usa tokens diferentes, com base na conexão de autenticação, para acessar os recursos protegidos do usuário.

Autenticação e autorização de bots

A seguir estão as principais etapas para autenticar um bot e autorizá-lo a acessar os recursos protegidos do usuário:

  1. Crie um aplicativo de registro de canal de bot.
  2. Adicione o ID e a senha do aplicativo de registro ao arquivo de configuração do bot. Isso permite que o bot seja autenticado para acessar recursos protegidos.
  3. Crie um aplicativo Microsoft Entra ID para selecionar um provedor de identidade para autenticar o usuário.
  4. Crie uma conexão de autenticação e adicione-a às configurações de registro do canal.
  5. Adicione o nome da conexão aos arquivos de configuração do bot. Isso permite que o bot seja autorizado a acessar os recursos protegidos do usuário.

Para obter um exemplo completo, consulte Adicionar autenticação a um bot.

Melhores práticas

  • Mantenha o registro do aplicativo Microsoft Entra ID restrito à sua finalidade original de serviço para aplicativo de serviço.
  • Crie um aplicativo Microsoft Entra ID adicional para qualquer usuário para autenticação de serviço, para obter mais controle finito sobre como desabilitar conexões de autenticação, rolar segredos ou reutilizar o aplicativo Microsoft Entra ID com outros aplicativos.

Alguns dos problemas encontrados se você também usar o aplicativo de registro Microsoft Entra ID para autenticação são:

  • Se o certificado anexado ao registro do aplicativo Microsoft Entra ID precisar ser renovado, isso afetará os usuários que se autenticaram com outros serviços do Microsoft Entra ID usando o certificado.
  • Em geral, ele cria um único ponto de falha e controle para todas as atividades relacionadas à autenticação com o bot.

Os artigos a seguir fornecem informações detalhadas e exemplos sobre autenticação dentro do Bot Framework. Comece examinando os tipos de autenticação e, em seguida, os provedores de identidade.

Artigo Descrição
Tipos de autenticação Descreve os dois tipos de autenticação do Bot Framework e os tokens que eles usam.
Provedores de identidade Descreve o uso de provedores de identidade. Eles permitem que você crie aplicativos que conectam usuários com segurança usando protocolos padrão do setor, como OAuth2.0.
Autenticação do utilizador Descreve a autenticação do usuário e o token relacionado para autorizar um bot a executar tarefas em nome do usuário.
Logon único Descreve a autenticação de usuário único para acesso a vários recursos protegidos.
Registrar um bot com o Azure Mostra como registrar um bot com o Serviço de Bot do Azure AI.
Diretrizes de segurança do Bot Framework Descreve a segurança em geral e como ela se aplica ao Bot Framework.
Adicionar autenticação a um bot Mostra como criar registro de canal de bot, criar uma conexão de autenticação e preparar o código.
Adicionar logon único a um bot Mostra como adicionar autenticação de logon único a um bot.