Skip to content

Latest commit

 

History

History
 
 

18.bot-authentication

This sample demonstrates the use of OAuth within a bot.

Concepts introduced in this sample

What is a bot?

A bot is an app that users interact with in a conversational way using text, graphics (cards), or speech. It may be a simple question and answer dialog, or a sophisticated bot that allows people to interact with services in an intelligent manner using pattern matching, state tracking and artificial intelligence techniques well-integrated with existing business services.

Authentication

This Sample uses bot authentication capabilities in Azure Bot Service, providing features to make it easier to develop a bot that authenticates users to various identity providers such as Azure AD (Azure Active Directory), GitHub, Uber, and so on. These updates also take steps towards an improved user experience by eliminating the magic code verification for some clients.

To try this sample

  • Clone the repository.
git clone https://github.com/microsoft/botbuilder-samples.git
  • [Optional] Update the appsettings.json file under botbuilder-samples/samples/csharp_dotnetcore/18.bot-authentication with your botFileSecret. For Azure Bot Service bots, you can find the botFileSecret under application settings.

Visual Studio

  • Navigate to the samples folder (botbuilder-samples/samples/csharp_dotnetcore/18.bot-authentication) and open AuthenticationBot.csproj in Visual Studio
  • Hit F5

Visual Studio Code

  • Open botbuilder-samples/samples/csharp_dotnetcore/18.bot-authentication folder
  • Bring up a terminal, navigate to botbuilder-samples/samples/csharp_dotnetcore/18.bot-authentication
  • Type 'dotnet run'.

Update packages

  • In Visual Studio right click on the solution and select "Restore NuGet Packages".

Testing the bot using Bot Framework Emulator

Microsoft Bot Framework Emulator is a desktop application that allows bot developers to test and debug their bots on localhost or running remotely through a tunnel.

  • Install the Bot Framework emulator from here.

Connect to bot using Bot Framework Emulator V4

  • Launch the Bot Framework Emulator.
  • File -> Open bot and navigate to botbuilder-samples/samples/csharp_dotnetcore/18.bot-authentication folder.
  • Select BotConfiguration.bot file.

Deploy this bot to Azure

You can use the MSBot Bot Builder CLI tool to clone and configure any services this sample depends on.

To install all Bot Builder tools -

Ensure you have Node.js version 8.5 or higher

npm i -g msbot chatdown ludown qnamaker luis-apis botdispatch luisgen

To clone this bot, run

msbot clone services -f deploymentScripts/msbotClone -n <BOT-NAME> -l <Azure-location> --subscriptionId <Azure-subscription-id>

Further reading