Web Application Identity and Access with Azure B2C
Duration
3 days
Description
In our comprehensive course, you'll gain an in-depth understanding of Azure B2C's capabilities for user authentication and authorization. You'll learn to create and configure Azure B2C tenants, explore integration techniques for different types of web applications, and create and configure user flows to streamline authentication processes. Dive into customizing user flow UI templates to tailor user experiences, and set up workflows for developing custom UI templates effectively. Additionally, you'll discover how to work with identity providers, ensuring seamless user access, and explore security measures and auditing practices to maintain the integrity and compliance of your Azure B2C environment. Join us in this course to become a proficient Azure B2C expert.
Objectives
- Understand how Azure B2C can be used to authenticate and authorize users
- Learn how to create and configure a new Azure B2C tenant
- Explore how to integrate various kinds of web applications with Azure B2C
- Create and Configure User Flows
- Customize User Flow UI Templates
- Setup a Workflow for Custom UI Template Development
- Work with Identity Providers
- Secure and Audit Azure B2C
Prerequisites
The course can be taught with Node.js, .NET, or Python. Experience in the selected language is required. Prior experience with the Azure Portal and web applications is very helpful, but not required.
Training Materials
All students receive comprehensive courseware covering all topics in the course. Courseware is distributed via GitHub in the form of documentations and extensive code samples. Students practice the topics covered through challenging hands-on lab exercises.
Software Requirements
Students will need a free, personal GitHub account to access the courseware. Student will need permission to install the selected language platform (Node.js, .NET SDK, or Python) and Visual Studio Code on their computers. Also, students will need permission to install packages for the selected coding platform as well as Visual Studio Extensions. Also, students will need an Azure Subscription (Free Trial Account can be used). If students are unable to configure a local environment, a cloud-based environment can be provided.
Outline
- Introduction
- What is Azure B2C?
- Azure B2C compared to Azure Active Directory
- Azure B2C compared to other authentication providers
- Create a B2C Tenant with the Azure Portal
- Configure the Azure Active Directory Resource Provider
- Create a new B2C Tenant
- Importance of the Organization Name
- Relationship between the B2C Tenant and the Main Tenant
- How to Switch Directories
- Configure Company Branding
- Configure User Attributes
- Controlling Access to the B2C Tenant
- Configure Azure B2C Identity Providers
- Registering Applications
- What does Application Registration accomplish?
- Configure Supported Account Types
- Configure the Redirect URI
- Configure Permissions
- Application Secrets
- Securing APIs
- Example Application Registrations (we cover the ones for your selected language platform)
- React App
- React Next.js App
- Angular App
- ASP.NET MVC
- Blazor WASM
- Blazor WASM ASP.NET Hosted
- Blazor Server
- Python Flask App
- Python Django App
- User Flows
- What is a User Flow?
- Creating a User Flow
- Sign up & Sign-In User Flow
- Sign-In User Flow
- Profile Editing User Flow
- Multi-Factor Authentication
- Identity Providers
- User Attributes
- Application Claims
- Configure Password Settings
- API Connectors
- User Flow UI Templates
- What are UI Templates?
- Configuring UI Templates settings for User Workflows
- Enable JavaScript in the UI template
- Custom UI Template Storage
- Setup a Storage Account to host Custom Templates
- Configure CORS for the Storage Account
- Configure Permissions for the Storage Account
- Uploading Templates with Azure Storage Explorer
- Uploading Templates via an NPM Script Command
- Setup a CDN to improve Custom Template hosting performance
- Custom UI Template Programming
- Acquire the Default Templates provided by Microsoft
- Template Versions
- How to set up an environment for modifying templates
- Automate template building and deployment
- File and Page Structure
- Understand which UI functions are AJAX operations and which are post-back operations
- Detecting AJAX Operations
- Applying CSS
- Perform DOM manipulations with jQuery
- Security
- Conditional Access Policies
- Risky Users
- Risk Detection
- Audit Logs
- Conclusion