I have been following the directions at https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-authentication?view=azure-bot-service-4.0&tabs=csharp to add authentication to my bot (x). So far, I have done the following:
- Created AD V1 application
- Created AD V2 application
- Successfully configured OAuth Connection Settings called "XAuth" to my bot (x) and used AD V1 (AppId, AppPassword). The test connection returns positive response.
- Configured the sample bot application at https://github.com/Microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/18.bot-authentication, changed the connectionName to XAuth, added AppId and AppPassword from my bot (x)
- Published bot application to Azure https://X.azurewebsites.net/
- Configured Emulator for both development and production
- Both Development and production are responding to help, logout commands in the emulator without prompting for signin dialog.
Since the sample project entrance has calls to WaterfallDialog(authDialog), I am expecting an automatic prompt. However, both environments do not prompt for user login. The .bot file has configuration for both production and development with appId and password. I couple of questions to understand the scenario better.
- What do I need to do to get the prompt in Emulator?
- What is the expected behavior in production? Am I supposed to get prompted when I test my bot (x)?
- what happens if I have more than one OAuth configuration in my bot (x)? Which one will be in effect? How do I control that behavior?