Adicionar autenticação a um bot
APLICA-SE A: SDK v4
O SDK do Serviço de Bot do Azure v4 facilita o desenvolvimento de bots que podem acessar recursos online que exigem a autenticação do usuário. Seu bot não precisa gerenciar tokens de autenticação porque o Azure faz isso para você usar o OAuth 2.0 para gerar um token com base nas credenciais de cada usuário. O bot usa o token gerado pelo Azure para acessar esses recursos. Dessa forma, o usuário não precisa fornecer ID e senha ao bot para acessar um recurso protegido, mas apenas a um provedor de identidade confiável.
Para obter uma visão geral de como o Bot Framework lida com esse tipo de autenticação, consulte a autenticação do usuário.
Este artigo faz referência a dois exemplos. Um deles mostra como obter um token de autenticação. O outro é mais complexo e mostra como acessar o Microsoft Graph em nome do usuário. Em ambos os casos, você pode usar o Azure AD (Azure Active Directory) v1 ou v2 como um provedor de identidade para obter um token OAuth para o bot. Este artigo aborda como:
- Criar um recurso de Bot do Azure
- Criar o provedor de identidade do Azure AD
- Registrar o provedor de identidade do Azure AD com o bot
- Preparar o código do bot
Depois de concluir este artigo, você terá um bot que pode responder a algumas tarefas simples. No exemplo do Microsoft Graph, você pode enviar um email, exibir quem você é e verificar emails recentes. Você não precisa publicar o bot para testar os recursos do OAuth; no entanto, o bot precisará da ID e senha válidas do aplicativo do Azure.
Considerações de Webchat e Direct Line
Importante
Você precisa usar a Linha Direta com autenticação aprimorada habilitada para atenuar os riscos de segurança ao se conectar a um bot usando o controle web chat. Para obter mais informações, consulte a autenticação aprimorada da Linha Direta.
Pré-requisitos
Conhecimento de fundamentos do bot, gerenciamento de estado, biblioteca de caixas de diálogo, como implementar o fluxo de conversa sequencial e como reutilizar caixas de diálogo.
Conhecimento do desenvolvimento do Azure e do OAuth 2.0.
Visual Studio 2017 ou posterior para .NET.
Node.js para JavaScript.
Python 3.8+ para Python.
Um dos exemplos listados abaixo.
Amostra Versão do BotBuilder Demonstra Autenticação em C# ou JavaScript ou Java ou Python v4 Suporte de OAuthCard Autenticação MSGraph em C# ou JavaScript ou Java ou Python v4 Suporte à API do Microsoft Graph com o OAuth 2.0 Para executar os exemplos referenciados neste artigo, você precisa:
- Um aplicativo do Azure AD (Azure Active Directory) com o qual registrar um recurso de bot no Azure. Esse aplicativo permite que o bot acesse um recurso protegido externo, como o Microsoft Graph. Ele também permite que o usuário se comunique com o bot por meio de vários canais, como o WebChat.
- Um aplicativo separado do Azure AD para funcionar como o provedor de identidade. Esse aplicativo fornece as credenciais necessárias para estabelecer uma conexão OAuth entre o bot e o recurso protegido. Observe que este artigo usa o Active Directory como um provedor de identidade. Muitos outros provedores também são compatíveis.
Importante
Sempre que você registra um bot no Azure, um aplicativo do Azure AD é atribuído a ele. No entanto, esse aplicativo protege o acesso do canal ao bot. Você precisa de um aplicativo do Azure AD adicional para cada recurso protegido externo que deseja que o bot acesse em nome do usuário.
Criar o recurso
Crie o recurso do Bot do Azure , que permitirá que você registre seu bot no Serviço de Bot do Azure.
Dica
Os tipos de recursos de Registro de Canais de Bot e Bot do Bot do Azure são preteridos. Os recursos configurados e implantados antes da substituição continuarão a funcionar. Os bots criados a partir de um modelo VSIX ou Yeoman do SDK versão 4.14.1.2 ou posterior contêm modelos do ARM que gerarão um recurso do Bot do Azure.
Vá para o Portal do Azure.
No painel direito, selecione Criar um recurso.
Na caixa de pesquisa, digite
bote pressione Enter.Selecione o cartão bot do Azure .
Selecione Criar.
Insira valores nos campos necessários. Escolha qual tipo de aplicativo criar e se deseja usar informações existentes ou criar novas identidades.
Selecione Examinar + criar.
Se a validação for aprovada, selecione Criar.
Depois que a implantação for concluída, selecione Ir para o recurso. Você deve ver o bot e os recursos relacionados listados no grupo de recursos selecionado.
Se você ainda não tiver o SDK do Bot Framework, selecione Baixar no GitHub para saber como consumir os pacotes para seu idioma preferencial.
Agora você está pronto para criar seu bot com o SDK do Bot Framework.
Dica
Quando o Azure cria um novo recurso do Azure Bot de locatário único ou multilocatário com uma nova ID do aplicativo, ele também gera uma senha.
Informações de identidade do bot
Siga estas etapas para adicionar informações de identidade ao arquivo de configuração do bot. O arquivo difere dependendo da linguagem de programação que você usa para criar o bot.
Importante
As versões Java e Python do SDK do Bot Framework dão suporte apenas a bots multilocatários. As versões C# e JavaScript dão suporte a todos os três tipos de aplicativo para gerenciar a identidade do bot.
| Linguagem | Nome do arquivo | Observações |
|---|---|---|
| C# | appsettings.json | Dá suporte aos três tipos de aplicativo para gerenciar a identidade do bot. |
| JavaScript | .env | Dá suporte aos três tipos de aplicativo para gerenciar a identidade do bot. |
| Java | application.properties | Só dá suporte a bots multilocatários. |
| Python | config.py | Só dá suporte a bots multilocatários. Forneça as propriedades de identidade como argumentos para as chamadas de os.environ.get método. |
As informações de identidade que você precisa adicionar dependem do tipo de aplicativo do bot. Forneça os seguintes valores em seu arquivo de configuração.
Disponível somente para bots C# e JavaScript.
| Propriedade | Valor |
|---|---|
MicrosoftAppType |
UserAssignedMSI |
MicrosoftAppId |
A ID do cliente da identidade gerenciada atribuída pelo usuário. |
MicrosoftAppPassword |
Não aplicável. Deixe isso em branco para um bot de identidade gerenciada atribuído pelo usuário. |
MicrosoftAppTenantId |
A ID do locatário da identidade gerenciada atribuída pelo usuário. |
Se você tiver um recurso de Aplicativo Web existente para seu bot e seu bot for um aplicativo de identidade gerenciada atribuído pelo usuário , talvez seja necessário atualizar o aplicativo Web do bot:
- Vá para a folha Serviço de Aplicativo para o aplicativo Web do bot.
- Em Configurações, selecione Identidade.
- Na folha Identidade , selecione a guia Atribuída pelo usuário e Adicione (+).
- Na folha Adicionar identidade gerenciada atribuída pelo usuário :
Selecione sua assinatura.
Para identidades gerenciadas atribuídas pelo usuário, selecione a identidade gerenciada do bot. Se a identidade gerenciada tiver sido gerada automaticamente para você, ela terá o mesmo nome que o bot.
Selecione Adicionar para usar essa identidade para o bot.
Para obter o aplicativo ou a ID do locatário do bot:
- Vá para a folha de recursos do Bot do Azure para o bot.
- Vá para a folha Configuração do bot. Nesta folha, você pode copiar a ID do Aplicativo Microsoft ou a ID do Locatário do Aplicativo do bot.
Bots de locatário único e multilocatário têm um segredo do aplicativo ou senha que você precisa para algumas operações. O Serviço de Bot do Azure oculta o segredo do bot. No entanto, o proprietário do recurso do aplicativo Web do bot pode gerar uma nova senha:
- Vá para a folha de recursos do Bot do Azure para o bot.
- Vá para a folha Configuração do bot.
- Selecione Gerenciar, ao lado da ID do Aplicativo da Microsoft, para acessar a folha Certificados + segredos do aplicativo Web.
- Siga as instruções na folha para criar um novo segredo do cliente e registrar o valor em um local seguro.
Serviço de identidade do Azure AD
O Azure AD (Azure Active Directory) é um serviço de identidade de nuvem que permite criar aplicativos que conectem usuários com segurança usando protocolos padrão do setor, como o OAuth 2.0.
Você pode usar um destes dois serviços de identidade:
- Plataforma do desenvolvedor do Azure AD (v1.0). Também conhecida como o ponto de extremidade do Azure AD v1, que permite que você crie aplicativos que conectam usuários com segurança a uma conta corporativa ou de estudante da Microsoft. Para obter mais informações, confira a visão geral do Azure Active Directory para desenvolvedores (v1.0).
- Plataforma de identidade da Microsoft (v2.0). Também conhecida como o ponto de extremidade do Azure AD v2, que é uma evolução da plataforma do Azure AD (v1.0). Ela permite que você crie aplicativos que se conectam em todos os provedores de identidade da Microsoft e obtenha tokens para chamar APIs da Microsoft, como o Microsoft Graph, ou outras APIs que os desenvolvedores criaram. Para obter mais informações, consulte a visão geral da plataforma de identidade da Microsoft (v2.0).
Para obter informações sobre as diferenças entre os pontos de extremidade v1 e v2, confira Por que atualizar para a plataforma de identidade da Microsoft (v2.0)?. Para obter informações completas, confira Plataforma de identidade da Microsoft (conhecida anteriormente como Azure Active Directory para desenvolvedores).
Criar o provedor de identidade do Azure AD
Esta seção mostra como criar um provedor de identidade do Azure AD que usa o OAuth 2.0 para autenticar o bot. Você pode usar os pontos de extremidade do Azure AD v1 ou Azure AD v2.
Dica
Você precisará criar e registrar o aplicativo do Azure AD em um locatário no qual você pode consentir em delegar permissões solicitadas por um aplicativo.
Abra o painel do Azure Active Directory 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.
No painel Registros de Aplicativo, selecione 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. (Qualquer uma dessas opções funcionará com este exemplo.)
Para o URI de Redirecionamento, selecione Web e defina a URL como uma das URLs de redirecionamento OAuth com suporte.
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 posteriormente como a ID do cliente ao criar a cadeia de conexão e registrar o provedor do Azure AD com o registro de bot.
- Registre o valor da ID do Diretório (locatário ). Você usará esse valor para registrar esse aplicativo de provedor com seu bot.
No painel de navegação, selecione Os segredos dos Certificados & para criar um segredo para seu aplicativo.
- Em Segredos do cliente, selecione Novo segredo do cliente.
- Adicione uma descrição para identificar esse segredo em relação a outros que talvez você precise criar para esse aplicativo, como
bot login. - Defina Expira como Nunca.
- Selecione Adicionar.
- Antes de sair desta página, registre o segredo. Você usará esse valor mais tarde como o segredo do cliente ao registrar seu aplicativo do Azure AD com seu bot.
No painel de navegação, selecione permissões de API para abrir o painel de permissões de API . É uma prática recomendada definir explicitamente as permissões de API para o aplicativo.
Selecione Adicionar uma permissão para mostrar o painel de permissões da API de Solicitação .
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
As permissões marcadas como CONSENTIMENTO DO ADMINISTRADOR NECESSÁRIO exigirão um usuário e um administrador de locatário para fazer logon, portanto, evite-os para seu bot.
- openid
- profile
- Mail.Read
- Mail.Send
- User.Read
- User.ReadBasic.All
Selecione Adicionar Permissões. (Na primeira vez que um usuário acessar esse aplicativo por meio do bot, ele precisará dar consentimento.)
Agora você tem um aplicativo do Azure AD configurado.
Observação
Você atribuirá a ID do aplicativo (cliente) e o segredo do cliente ao criar a cadeia de conexão e registrar o provedor de identidade com o registro do bot. Confira a próxima seção.
Registrar o provedor de identidade do Azure AD com o bot
A próxima etapa é registrar seu provedor de identidade com seu bot.
Abra a página de recursos do Bot do Azure do bot no portal do Azure.
Selecione Configurações.
Em Configurações de Conexão OAuth perto da parte inferior da página, selecione Adicionar Configuração.
Preencha o formulário da seguinte maneira:
Nome. Digite um nome para a conexão. Você o usará em seu código de bot.
Provedor de Serviços. Selecione o Azure Active Directory v2 para exibir campos específicos do Azure AD.
ID do cliente. Insira a ID do aplicativo (cliente) que você registrou para o provedor de identidade do Azure AD v2.
Segredo do cliente. Insira o segredo que você registrou para o provedor de identidade do Azure AD v2.
URL do Token Exchange. Deixe em branco porque é usado apenas para SSO no Azure AD v2.
ID do locatário. Insira a ID de diretório (locatário) que você registrou anteriormente para seu aplicativo do Azure AD ou comum , dependendo dos tipos de conta com suporte selecionados quando você criou o aplicativo do Azure DD. Para decidir qual valor atribuir, siga estes critérios:
- Ao criar o aplicativo do Azure AD, se você selecionou contas somente neste diretório organizacional (somente Microsoft – locatário único), insira a ID do locatário que você registrou anteriormente para o aplicativo do Azure AD.
- No entanto, se você selecionou Contas em qualquer diretório organizacional (qualquer diretório do Azure AD – contas microsoft multilocatário e pessoais, por exemplo, Xbox, Outlook.com) ou Contas em qualquer diretório organizacional (diretório do Microsoft Azure AD – Multilocatário), insira a palavra comum em vez de uma ID de locatário. Caso contrário, o aplicativo do Azure AD verificará por meio do locatário cuja ID foi selecionada e excluirá contas de MS pessoais.
Esse será o locatário associado aos usuários que podem ser autenticados. Para obter mais informações, confira Locação no Azure Active Directory.
Para Escopos, insira os nomes da permissão escolhida no registro do aplicativo. Para fins de teste, basta inserir:
openid profile.Observação
Para o Azure AD v2, o campo Escopos usa uma lista de valores separada por espaços que diferencia maiúsculas de minúsculas.
Selecione Save.
Observação
Esses valores permitem que seu aplicativo acesse os dados do Office 365 por meio da API do Microsoft Graph. Além disso, a URL do Token Exchange deve ser deixada em branco porque é usada apenas para SSO no Azure AD v2.
Testar sua conexão
- Selecione na entrada de conexão para abrir a conexão que você criou.
- Selecione Testar Conexão na parte superior do painel Configuração de 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 conexão de teste para a <página nome-de-conexão bem-sucedida>.
Agora você pode usar esse nome de conexão no código do bot para recuperar tokens de usuário.
Como preparar o código do bot
Você precisará da ID e senha do aplicativo do bot para concluir esse processo.
Clone do repositório GitHub com o exemplo com o qual você deseja trabalhar: autenticação de bot ou autenticação de bot MSGraph.
Atualize appsettings.json:
Defina
ConnectionNamecomo o nome da configuração de conexão do OAuth que você adicionou ao seu bot.Defina
MicrosoftAppIdeMicrosoftAppPasswordcomo a ID e o segredo de aplicativo do seu bot.Dependendo dos caracteres do segredo do bot, você pode precisar ignorar a senha com XML. Por exemplo, todas as escarpas (&) precisarão ser codificadas como
&.
{ "MicrosoftAppType": "", "MicrosoftAppId": "", "MicrosoftAppPassword": "", "MicrosoftAppTenantId": "", "ConnectionName": "" }Atualizar Startup.cs:
Para usar o OAuth em nuvens não públicas do Azure, como a nuvem governamental ou em bots com residência de dados, você deve adicionar o código a seguir no arquivo Startup.cs .
string uri = "<uri-to-use>"; MicrosoftAppCredentials.TrustServiceUrl(uri); OAuthClientConfig.OAuthEndpoint = uri;Onde <o uri a ser usado> é uma das seguintes URIs:
URI Descrição https://europe.api.botframework.comPara bots de nuvem pública com residência de dados na Europa. https://unitedstates.api.botframework.comPara bots de nuvem pública com residência de dados nos Estados Unidos. https://api.botframework.azure.usPara bots de nuvem do governo dos Estados Unidos sem residência de dados. https://api.botframework.comPara bots de nuvem pública sem residência de dados. Esse é o URI padrão e não requer uma alteração em Startup.cs.
Para obter a ID do aplicativo Microsoft e os valores de senha do aplicativo Microsoft , consulte Obter senha de registro.
Observação
Agora você pode publicar esse código de bot em sua assinatura do Azure (selecione com o botão direito do mouse no projeto e escolha Publicar), mas não é necessário para este artigo. Você precisaria definir uma configuração de publicação que usasse o aplicativo e o plano de hospedagem que você usou ao configurar o bot no portal do Azure.
Testar o bot usando o Emulador
Se você ainda não fez isso, instale o Emulador do Bot Framework. Consulte também Depurar com o Emulador.
Para que o logon de exemplo do bot funcione, você deve configurar o Emulador, conforme mostrado em Configurar o Emulador para autenticação.
Teste
Depois de configurar o mecanismo de autenticação, você poderá executar o teste de exemplo de bot real.
Observação
Talvez seja necessário inserir um código mágico devido à maneira como a amostra de bot é implementada. Este código mágico faz parte do RFC#7636 e está lá para adicionar um elemento de segurança extra. Ao remover o código mágico, há um risco de segurança aumentado. Isso pode ser mitigado usando a Linha Direta com autenticação aprimorada habilitada. Para obter mais informações, consulte a autenticação aprimorada do Bot Framework.
- Execute o exemplo do bot localmente em seu computador.
- Inicie o Emulador.
- Você precisará fornecer a ID e a senha do aplicativo do bot ao se conectar ao bot.
- Obtenha a ID do aplicativo e a senha do registro de aplicativo do Azure. Esses são os mesmos valores atribuídos ao aplicativo bot no arquivo
appsettings.jsonou.env. No Emulador, você atribui esses valores no arquivo de configuração ou na primeira vez que se conecta ao bot. - Se você precisar usar um escape XML na senha no código do bot, isso também precisará ser feito aqui.
- Obtenha a ID do aplicativo e a senha do registro de aplicativo do Azure. Esses são os mesmos valores atribuídos ao aplicativo bot no arquivo
- Digite
helppara ver uma lista dos comandos disponíveis para o bot e testar os recursos de autenticação. - Quando você tiver entrado, você não precisa fornecer suas credenciais novamente até sair.
- Para sair e cancelar a sua autenticação, digite
logout.
Observação
A autenticação de bot requer o uso do serviço Bot Connector. O serviço acessa informações do recurso do Bot do Azure.
Exemplo de autenticação
No exemplo Autenticação de Bot, o diálogo foi projetado para recuperar o token de usuário após este se conectar.

Exemplo de MSGraph de autenticação
No exemplo Autenticação de Bot MSGraph, o diálogo é projetado para aceitar um conjunto limitado de comandos depois que o usuário faz logon.

Informações adicionais
Quando um usuário pede ao bot para fazer algo que requer que o bot tenha o usuário conectado, o bot pode usar um OAuthPrompt para iniciar a recuperação de um token para uma determinada conexão. O OAuthPrompt cria um fluxo de recuperação de token composto por:
- Verificação se o Serviço de Bot do Azure já tem um token para o usuário e a conexão atuais. Se houver um token, o token será retornado.
- Se o Serviço de Bot do Azure não tiver um token armazenado em cache, será criado um
OAuthCardbotão de entrada no qual o usuário pode selecionar. - Depois que o usuário selecionar no botão de entrada, o
OAuthCardServiço de Bot do Azure enviará diretamente o token do usuário ao bot ou apresentará ao usuário um código de autenticação de 6 dígitos para inserir na janela de chat. - Se o usuário receber um código de autenticação, o bot trocará esse código de autenticação pelo token do usuário.
As seções a seguir descrevem como o exemplo implementa algumas tarefas de autenticação comuns.
Use um prompt do OAuth para conectar o usuário e obter um token

Dialogs\MainDialog.cs
Adicione um prompt do OAuth a MainDialog em seu construtor. Aqui, o valor para o nome da conexão foi recuperado do arquivo appsettings.JSON.
AddDialog(new OAuthPrompt(
nameof(OAuthPrompt),
new OAuthPromptSettings
{
ConnectionName = ConnectionName,
Text = "Please Sign In",
Title = "Sign In",
Timeout = 300000, // User has 5 minutes to login (1000 * 60 * 5)
}));
Dentro de uma etapa de diálogo, use BeginDialogAsync para iniciar o prompt do OAuth, que pede ao usuário para entrar.
- Se o usuário já estiver conectado, isso irá gerar um evento de resposta de token, sem avisar o usuário.
- Caso contrário, será solicitado que o usuário entre. O Serviço de Bot do Azure envia o evento de resposta do token depois que o usuário tenta entrar.
return await stepContext.BeginDialogAsync(nameof(OAuthPrompt), null, cancellationToken);
Dentro da etapa de diálogo a seguir, procure a presença de um token no resultado da etapa anterior. Se não for nulo, o usuário entrou com êxito.
// Get the token from the previous step. Note that we could also have gotten the
// token directly from the prompt itself. There is an example of this in the next method.
var tokenResponse = (TokenResponse)stepContext.Result;
Aguardar um TokenResponseEvent
Quando iniciamos um prompt do OAuth, ele aguarda um evento de resposta de token, a partir do qual ele recupera o token do usuário.
Bots\AuthBot.cs
AuthBot deriva de ActivityHandler e lida explicitamente com atividades de evento de resposta de token. Aqui, damos sequência ao diálogo ativo, que permite que o prompt do OAuth processe o evento e recupere o token.
protected override async Task OnTokenResponseEventAsync(ITurnContext<IEventActivity> turnContext, CancellationToken cancellationToken)
{
Logger.LogInformation("Running dialog with Token Response Event Activity.");
// Run the Dialog with the new Token Response Event Activity.
await Dialog.RunAsync(turnContext, ConversationState.CreateProperty<DialogState>(nameof(DialogState)), cancellationToken);
}
Desconecte o usuário
É uma prática recomendada permitir que os usuários saiam explicitamente, em vez de depender da conexão com o tempo limite.
Dialogs\LogoutDialog.cs
private async Task<DialogTurnResult> InterruptAsync(DialogContext innerDc, CancellationToken cancellationToken = default(CancellationToken))
{
if (innerDc.Context.Activity.Type == ActivityTypes.Message)
{
var text = innerDc.Context.Activity.Text.ToLowerInvariant();
if (text == "logout")
{
// The UserTokenClient encapsulates the authentication processes.
var userTokenClient = innerDc.Context.TurnState.Get<UserTokenClient>();
await userTokenClient.SignOutUserAsync(innerDc.Context.Activity.From.Id, ConnectionName, innerDc.Context.Activity.ChannelId, cancellationToken).ConfigureAwait(false);
await innerDc.Context.SendActivityAsync(MessageFactory.Text("You have been signed out."), cancellationToken);
return await innerDc.CancelAllDialogsAsync(cancellationToken);
}
}
return null;
}
Como adicionar autenticação do Teams
O OAuth é tratado de forma um pouco diferente no Teams do que em outros canais. O exemplo de Bot de Autenticação do Teams (em C#, JavaScript ou Java) demonstra como implementar corretamente a autenticação para o Teams.
Uma diferença entre outros canais e o Temas é o Teams envia uma atividade de invocação para o bot, em vez de uma atividade de evento.
Bots/TeamsBot.cs
protected override async Task OnTeamsSigninVerifyStateAsync(ITurnContext<IInvokeActivity> turnContext, CancellationToken cancellationToken)
{
Logger.LogInformation("Running dialog with signin/verifystate from an Invoke Activity.");
// The OAuth Prompt needs to see the Invoke Activity in order to complete the login process.
// Run the Dialog with the new Invoke Activity.
await Dialog.RunAsync(turnContext, ConversationState.CreateProperty<DialogState>(nameof(DialogState)), cancellationToken);
}
Se você usar um prompt OAuth, essa atividade de invocação deverá ser encaminhada para a caixa de diálogo. Você pode fazer isso no TeamsActivityHandler. Adicione o código a seguir ao arquivo de caixa de diálogo principal.
Bots/DialogBot.cs
public class DialogBot<T> : TeamsActivityHandler where T : Dialog
Por fim, adicione um arquivo apropriado TeamsActivityHandler (TeamsActivityHandler.cs para bots C# e teamsActivityHandler.js para bots JavaScript) no nível superior da pasta do bot.
O TeamsActivityHandler também envia atividades de reação de mensagem. Uma atividade de reação de mensagem faz referência à atividade original usando o campo responder à ID. Essa atividade também deve ser visível por meio do Feed de Atividades no Microsoft Teams.
Observação
Você precisa criar um manifesto e incluir token.botframework.com na seção validDomains; caso contrário, o botão Entrar do OAuthCard não abrirá a janela de autenticação. Use o App Studio para gerar seu manifesto.
Leitura adicional
- Os Recursos adicionais do Bot Framework incluem links para obter suporte adicional.
- O repositório SDK do Bot Framework tem mais informações sobre repositórios, amostras, ferramentas e especificações associadas ao SDK do Bot Builder.


