Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Serviço de Bot de IA do Azure facilita o desenvolvimento de agentes que podem acessar recursos online que exigem autenticação de usuário. Seu agente não precisa gerenciar tokens de autenticação, pois o Azure faz isso para você. O Azure usa o OAuth 2.0 para gerar um token com base nas credenciais de cada usuário. O agente usa o token gerado pelo Azure para acessar esses recursos. Dessa forma, o usuário não precisa fornecer ID e senha ao agente para acessar um recurso seguro, mas apenas para um provedor de identidade confiável.
Importante
Considerações sobre Webchat e Direct Line: você precisa usar o Direct Line com autenticação aprimorada habilitada para reduzir os riscos de segurança ao se conectar a um agente usando o controle de Webchat. Para obter mais informações, confira Autenticação avançada do Direct Line.
Para configurar o OAuth no agente, registre um Bot do Azure se você ainda não fez isso.
Importante
Sempre que você registra um agente no Azure, o agente recebe um aplicativo do Microsoft Entra ID. No entanto, esse aplicativo protege o acesso do canal ao bot. Você precisa de um aplicativo do Microsoft Entra ID para cada recurso protegido externo que deseja que o agente acesse em nome do usuário.
Serviço de identidade do Microsoft Entra ID
O Microsoft Entra ID é um serviço de identidade de nuvem que permite a criação de aplicativos que conectam usuários com segurança usando protocolos padrão do setor, como o OAuth2.0.
Você pode usar um destes três serviços de identidade:
- Plataforma de identidade da Microsoft (v2.0): também conhecida como ponto de extremidade do Azure Active Directory v2, que é uma evolução da plataforma do Azure AD (v1.0).
- Credenciais Federadas: também conhecidas como AAD v2 com Credenciais Federadas.
- Certificados: também conhecidos como AAD v2 com Certificados.
Isso permite que você crie aplicativos que entrem em todos os provedores de identidade da Microsoft e obtenham tokens para chamar APIs da Microsoft, como o Microsoft Graph, ou outras APIs que foram criadas por desenvolvedores.
Criar o provedor de identidade do Microsoft Entra ID
Esta seção mostra como criar um provedor de identidades do Microsoft Entra ID que usa o OAuth 2.0 para autenticar o agente ao Graph.
Dica
Você precisará criar e registrar o aplicativo do Microsoft Entra ID em um locatário no qual você pode consentir em delegar permissões solicitadas por um aplicativo.
Abra o painel do Microsoft Entra ID no portal do Azure. Se você não estiver no locatário correto, selecione Alternar diretório para alternar para o locatário correto. (Para obter informações sobre como criar um locatário, consulte Acessar o portal e criar um locatário.)
Abra o painel Registros de aplicativo.
Configurar Registro do Aplicativo
Para o SSO do Teams, abra o Registro de Aplicativo existente para o Agente/Bot do Azure.
- No painel Autenticação se você não vir uma plataforma Web, selecione + Adicionar uma plataforma.
Selecione Web
Insira o URI de Redirecionamento da tabela na próxima etapa.
Clique em Configurar
- No painel Autenticação se você não vir uma plataforma Web, selecione + Adicionar uma plataforma.
Para outros canais ou OAuth
No painel Registros de aplicativo, escolha Novo registro.
Preencha os campos obrigatórios e crie o registro do aplicativo.
Nome do seu aplicativo.
Selecione os Tipos de conta compatíveis para o aplicativo. Selecione Locatário Único.
Para o URI de Redirecionamento, selecione Web e defina a URL como uma das URLs de redirecionamento OAuth com suporte.
Residência de dados Nuvem URL do OAuth URL de Redirecionamento do OAuth Nenhum Público https://token.botframework.com https://token.botframework.com/.auth/web/redirect Europa Público https://europe.token.botframework.com https://europe.token.botframework.com/.auth/web/redirect Estados Unidos Público https://unitedstates.token.botframework.com https://unitedstates.token.botframework.com/.auth/web/redirect Índia Público https://india.token.botframework.com https://india.token.botframework.com/.auth/web/redirect Nenhum Azure Governamental https://token.botframework.azure.us https://token.botframework.azure.us/.auth/web/redirect Nenhum Azure operado pela 21Vianet https://token.botframework.azure.cn https://token.botframework.azure.cn/.auth/web/redirect Selecione Registrar.
- Depois de criado, o Azure exibe a página Visão Geral do aplicativo.
- Registre o valor da ID do aplicativo (cliente). Você usará esse valor mais tarde como a ID do cliente ao criar a cadeia de conexão e registrar o provedor do Microsoft Entra ID com o registro do agente.
- Registre o valor da ID do diretório (locatário). Você usa esse valor para registrar este aplicativo do provedor com seu bot.
No painel de navegação, selecione Certificados & segredos para adicionar credenciais para seu aplicativo.
Em Credenciais Federadas, selecione Adicionar Credenciais.
Na página Adicionar Credenciais, escolha o Cenário de credencial Federada para Outro Emissor
Insira valores nos campos necessários e examine e atualize as configurações
Forneça informações em Conectar sua conta.
Emissor:
https://login.microsoftonline.com/{customer-tenant-ID}/v2.0Identificador de Identidade :
/eid1/c/pub/t/{base64 encoded customer tenant ID}/a/{base64 encoded 1-P app client ID}/{unique-identifier-for-projected-identity}A tabela a seguir contém a representação de matriz de bytes codificada em Base64url de IDs de aplicativo interno com suporte. Use esse valor que representa nosso aplicativo interno.
Valor codificado Description 9ExAW52n_ky4ZiS_jhpJIQ Repositório de Tokens do Serviço de Bot codificado em Base64url ND1y8_Vv60yhSNmdzSUR_A Codificação Base64url do Portal de Desenvolvimento do Bot Framework A tabela a seguir contém a representação de matriz de bytes codificada em Base64url de alguns IDs de locatário com suporte. Use o valor que representa o locatário do seu aplicativo.
Valor codificado Description v4j5cvGGr0GRqy180BHbRw ID de locatário MSIT codificada em Base64url (aaaabbbb-0000-cccc-1111-dddd2222eeee) PwFflyR_6Een06vEdSvzRg ID do locatário PME codificado em Base64url (bbbbcccc-1111-dddd-2222-eeee3333ffff) 6q7FzcUVtk2wefyt0lBdwg ID do locatário do Torus codificada em Base64url (ccccdddd-2222-eeee-3333-ffff4444aaa) IRngM2RNjE-gVVva_9XjPQ ID do locatário do AME codificado em Base64url (ddddeeee-3333-ffff-4444-aaaa5555bbbb) Os proprietários do serviço de Identidade Primária calculam uma vez e fornecem para seus consumidores.
Unique-identifier-for-projected-identity: um Identificador Exclusivo, de sua escolha, que é usado na Configuração de Conexão OAuth no Bot do Azure.
Nome: nome de sua escolha, por exemplo. "agente oauth"
Público-alvo: api://AzureADTokenExchange (usar valores específicos da nuvem)
Forneça informações em detalhes da Credencial.
Selecione Adicionar para adicionar a credencial.
Expor ponto de extremidade da API
Clique em Expor uma API na barra lateral esquerda
-
Para um Bot do Serviço de Bot do Azure: o padrão
api://{appid}é adequado. -
Para um bot do Teams: esse formato é OBRIGATÓRIO
api://botid-{appid}
-
Para um Bot do Serviço de Bot do Azure: o padrão
Adicionar um Escopo
Selecione + Adicionar um escopo nos Escopos definidos por esta seção de API.
Insira os detalhes para configurar o escopo.
Inserir o nome do escopo
defaultScopesSelecione o usuário que pode dar consentimento para este escopo. A opção padrão é Somente administradores.
Insira o Nome de exibição de consentimento do administrador.
Insira a descrição do consentimento do administrador.
Insira o Nome de exibição de consentimento do usuário.
Introduza a descrição do consentimento do usuário.
Selecione a opção Habilitado para o estado.
Selecione Adicionar escopo.
Somente para o Teams, configure um aplicativo cliente autorizado
Selecione + Adicionar um aplicativo cliente.
Introduza o ID de cliente do Microsoft 365 adequado para os aplicativos que você pretende autorizar para o aplicativo Web.
Selecione um dos seguintes IDs do cliente:
ID do cliente a ser usada Tipo de aplicativo para autorizar 1fec8e78-bce4-4aaf-ab1b-5451cc387264 Aplicativo para celular ou desktop do Teams 5e3ce6c0-2b1f-4285-8d4b-75ee78787346 Aplicativo Web do Teams 4765445B-32C6-49B0-83E6-1D93765276CA Aplicativo Web do Microsoft 365 0ec893e0-5785-4de6-99da-4ed124e5296c Aplicativo da área de trabalho do Microsoft 365 D3590ED6-52B3-4102-AEF-AAD2292AB01C Aplicativo móvel do Microsoft 365/aplicativo da área de trabalho do Outlook bc59ab01-8403-45c6-8796-ac3ef710b3e3 Aplicativo Web do Outlook 27922004-5251-4030-b22d-91ecd9a37ea4 Aplicativo móvel do Outlook Selecione o URI da ID do aplicativo criada para seu aplicativo em escopos Autorizados para adicionar o escopo à API Web exposta.
Selecione Adicionar aplicativo.
No painel de navegação, escolha Permissões de API para abrir o painel Permissões de API. A melhor prática é definir explicitamente as permissões de API para o aplicativo.
Escolha Adicionar uma permissão para mostrar o painel Solicitar permissões de API.
Para este exemplo, selecione as APIs da Microsoft e o Microsoft Graph.
Escolha Permissões delegadas e verifique se as permissões necessárias estão selecionadas. Este exemplo requer estas permissões.
Observação: qualquer permissão marcada como CONSENTIMENTO DO ADMINISTRADOR NECESSÁRIA exigirá que tanto um usuário quanto um administrador do locatário façam login, portanto, para seu agente, procure evitar essas permissões.
- User.Read
Selecione Adicionar permissões. (Na primeira vez que um usuário acessa esse aplicativo por meio do agente, ele precisa conceder consentimento.)
Agora você tem um aplicativo OAuth configurado.
Note
Você atribuirá a ID do aplicativo (cliente) ao criar a cadeia de conexão e registrar o provedor de identidade com o registro do agente. Confira a próxima seção.
Criar uma Conexão OAuth no Bot do Azure
A próxima etapa é registrar seu provedor de identidade com seu agente.
Note
O aplicativo Entra de locatário único só tem suporte para o AAD v2 com o provedor de serviços de Credenciais Federadas. O suporte para aplicativos multiusuário será adicionado no futuro.
Abra a página de recursos do Bot do Azure do bot no portal do Azure.
Selecione Configurações e, depois, Configuração.
Selecione o botão Configurações de Conexão OAuth próximo à parte inferior da página.
Preencha o formulário da seguinte maneira:
Nome. Digite um nome para a conexão. Use-o no código do agente.
Provedor de serviços. Selecione AAD v2 com Credenciais Federadas para exibir campos específicos do provedor de serviços.
ID do cliente. Insira a ID do aplicativo (cliente) que você registrou para seu provedor de identidade do Microsoft Entra ID (somente locatário único com suporte).
Identificador exclusivo. Insira o identificador exclusivo que você registrou para seu provedor de identidade do Microsoft Entra ID ao criar credenciais federadas.
URL de troca de token. Para o SSO do Teams, insira o ponto de extremidade de API criado anteriormente:
api://botid-{appId}. Caso contrário, deixe em branco.ID do locatário. Insira a ID do diretório (locatário) que você registrou anteriormente para seu aplicativo Microsoft Entra ID ou
commondependendo dos tipos de conta com suporte selecionados quando você criou o aplicativo DD do Azure. Para decidir qual valor atribuir, siga estes critérios:- Quando criar o aplicativo do Microsoft Entra ID, se você tiver escolhido Contas neste diretório organizacional somente (somente Microsoft: locatário único), insira a ID de locatário que você registrou anteriormente para o aplicativo do Microsoft Entra ID.
- No entanto, se você tiver escolhido Contas em qualquer diretório organizacional (qualquer diretório do Microsoft Entra ID: contas Microsoft multilocatário e pessoais, p. ex., XBox, Outlook.com) ou Contas em qualquer diretório organizacional (diretório do Microsoft entra ID: multilocatário), insira
commonem vez de um ID de locatário. Caso contrário, o aplicativo Microsoft Entra ID verifica através do locatário cuja ID foi selecionada e exclui as contas pessoais da Microsoft.
Esse é o locatário associado aos usuários que podem ser autenticados. Para obter mais informações, consulte Locatário no Microsoft Entra ID.
Em Escopos, digite os nomes da permissão que você escolheu no registro de aplicativo. Para fins de teste, insira somente
User.Read.- Se você precisar usar esse token para o OBO para outro serviço (um token que pode ser trocado), use
api://botid-{{appId}}/defaultScopes.
- Se você precisar usar esse token para o OBO para outro serviço (um token que pode ser trocado), use
Observação: para Microsoft Entra ID, o campo Escopos usa uma lista de valores separados por espaços, que diferencia maiúsculas de minúsculas.
Clique em Salvar.
Teste a conexão
- Escolha a entrada de conexão para abrir a conexão que você criou.
- Escolha Testar Conectividade na parte superior do painel Configuração da Conexão do Provedor de Serviços.
- Na primeira vez, deve abrir uma nova guia do navegador listando as permissões que seu aplicativo está solicitando e solicitará que você aceite.
- Selecione Aceitar.
- Em seguida, isso deve redirecioná-lo para uma página Testar conectividade para seu nome de conexão concluído com sucesso, onde
your-connection-succeededé seu nome de conexão específico. - Somente para tokens que podem ser trocados
- Copiar o token JWT
- Decodificar o token usando https://jwt.io/
- O valor da declaração
auddeve começar comapi://