Bot Framework v4 bot authentication sample.
This bot has been created using Bot Framework, it shows how to use authentication in your bot using OAuth.
The sample uses the 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, etc.
NOTE: Microsoft Teams currently differs slightly in the way auth is integrated with the bot. Refer to sample 46.teams-auth.
This sample is a Spring Boot app and uses the Azure CLI and azure-webapp Maven plugin to deploy to Azure.
- Java 1.8+
- Install Maven
- An account on Azure if you want to deploy to Azure.
- Deploy your bot to Azure
- Follow the instruction in this document to configure the OAuth authentication: Add Authentication to your bot via Azure Bot Service
- From the root of this project folder:
- Build the sample using
mvn package
- Run it by using
java -jar .\target\bot-authentication-sample.jar
- Build the sample using
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 latest Bot Framework Emulator from here
- Launch Bot Framework Emulator
- File -> Open Bot
- Enter a Bot URL of
http://localhost:3978/api/messages
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, etc. These updates also take steps towards an improved user experience by eliminating the magic code verification for some clients.
To learn more about deploying a bot to Azure, see Deploy your bot to Azure for a complete list of deployment instructions.
- Spring Boot
- Maven Plugin for Azure App Service
- Bot Basics
- Azure Portal
- Add Authentication to Your Bot Via Azure Bot Service
- Activity processing
- Azure Bot Service Introduction
- Azure Bot Service Documentation
- Azure CLI
- Azure Portal
- Language Understanding using LUIS
- Azure for Java cloud developers
- Channels and Bot Connector Service