/ms-identity-python-flask-tutorial

A Python Flask chapter-wise sample demonstrating authentication, calling MS Graph, authorization, and deployment

MIT LicenseMIT

page_type languages products description urlFragment
sample
python
ms-graph
azure-app-services
azure-storage
azure-key-vault
azure-functions
azure-active-directory
azure-active-directory-b2c
microsoft-identity-platform
Tutorial: Enable your Python Flask webapp to Sign-in users, protect endpoints, and call APIs with the Microsoft identity platform
ms-identity-python-flask-tutorial

Tutorial: Enable your Python Flask webapp to Sign-in users and call APIs with the Microsoft identity platform

The Microsoft identity platform, along with Azure Active Directory (Azure AD) and Azure Azure Active Directory B2C (Azure AD B2C) are central to the Azure cloud ecosystem. This tutorial aims to take you through the fundamentals of modern authentication with Python, using the Microsoft Authentication Library (MSAL) for Python

We recommend following the chapters in successive order. However, the code samples are self-contained, so feel free to pick samples by topics that you may need at the moment.

⚠️ This is a work in progress. Come back frequently to discover more samples.

Prerequisites

Please refer to each chapter's README for sample-specific prerequisites.

Recommendations

  • Some familiarity with the Flask Web Framework
  • Some familiarity with Linux/OSX terminal or Windows PowerShell
  • jwt.ms for inspecting your tokens.
  • Fiddler for monitoring your network activity and troubleshooting.
  • Follow the Azure AD Blog to stay up-to-date with the latest developments.

Please refer to each sample's README for sample-specific recommendations.

Contents

Chapter 1: Adding Authentication with Azure AD in your web application

1.1 Sign-in with Azure AD
Sign-in your users with Azure AD and learn to work with ID Tokens.
1.2 Sign-in with Azure AD B2C
Sign-in your customers with Azure AD B2C. Learn to integrate with external social identity providers. Learn how to use user-flows and custom policies.

Chapter 2: Sign-in a user and get an Access Token for Microsoft Graph

2.1 Acquire an Access Token from Azure AD and call Microsoft Graph
Here we build on the concepts we learnt earlier to authenticate users to got further and acquire an Access Token for and then call the Microsoft Graph API.

Chapter 3: Deploy your app to Azure

3.1 Deploy to Azure Storage and App Service
Finally, we prepare your app for deployment to various Azure services. Learn how to package and upload files, configure authentication parameters and use the various Azure services for managing your operations.

We'd love your feedback!

Were we successful in addressing your learning objective? Consider taking a moment to share your experience with us.

More information

Learn more about the Microsoft identity platform:

See more code samples:

Community Help and Support

Use Stack Overflow to get support from the community. Ask your questions on Stack Overflow first and browse existing issues to see if someone has asked your question before. Make sure that your questions or comments are tagged with [ms-identity azure-ad azure-ad-b2c msal python].

If you find a bug in the sample, please raise the issue on GitHub Issues.

To provide a recommendation, visit the following User Voice page.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.