A lap around Azure AD B2C custom policies

Slides:



Advertisements
Similar presentations
Attie Naude 14 May 2013 Windows Azure Mobile Services.
Advertisements

Office 365 Identity June 2013 Microsoft Office365 4/2/2017
1Proprietary and Confidential AirVantage API – Getting started David SCIAMMA – June 13th 2014.
Using Evernote and Google Docs in your web or mobile application (and potentially Dropbox and Skydrive) By Peter Messenger Senior Developer – Triple Point.
1 Trillion Azure AD authentications since the release of the service 50 M Office 365 users active every month >1 Billion authentications every.
Microsoft Ignite /16/2017 4:55 PM
1 Trillion Azure AD authentications since the release of the service 50 M Office 365 users active every month >1 Billion authentications every.
Troubleshooting Federation, AD FS 2.0, and More…
Google App Engine Google APIs OAuth Facebook Graph API
Troubleshooting Federation, AD FS 2.0, and More…
Module 5 Configuring Authentication. Module Overview Lesson 1: Understanding Classic SharePoint Authentication Providers Lesson 2: Understanding Federated.
Microsoft ® Official Course Module 13 Implementing Windows Azure Active Directory.
Empowering people-centric IT Unified device management Access and information protection Desktop Virtualization Hybrid Identity.
Paul Andrew. Recently Announced… Identity Integration Options 2 3 Identity Management Overview 1.
101 ways to authenticate with Azure Active Directory
All Rights Reserved 2014 © CMG Consulting LLC Federated Identity Management and Access Andres Carvallo Dwight Moore CMG Consulting, LLC October
Get identities to the cloud Mix on-premises and cloud identity for improved PC, mobile, and web productivity Cloud identities help you run your business.
Building consumer apps with Azure AD B2C
Adxstudio Portals Training
Linus Joyeux Valerie Alonso Managing consultantLead consultant blue-infinity (Switzerland) Active Directory Federation Services v2.
Slavko Kukrika MVP Connect Windows 10 to the Cloud – Cloud Join.
Secure Mobile Development with NetIQ Access Manager
Today’s Applications Web API Browser Native app Web API Web API
Agenda  Microsoft Directory Synchronization Tool  Active Directory Federation Server  ADFS Proxy  Hybrid Features – LAB.
SaaS apps.
Azure Active Directory Uday Hegde 2016 Redmond Summit | Identity Without Boundaries May 26, 2016 Group Program Manager, Azure AD
Microsoft Ignite /20/2017 9:04 PM
Developers Introduction to the Power BI Platform.
A deep dive into Azure AD B2C
Recording Brief EMS Partner Bootcamp Variables Values Module Title
Application Authentication using Azure AD
Access Policy - Federation March 23, 2016
Stop Those Prying Eyes Getting to Your Data
4/18/2018 1:15 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
A lap around Azure Active Directory Business to Consumer (B2C)
Microsoft Ignite /27/2018 9:00 AM THR2016
Azure Active Directory - Business 2 Consumer
Consuming OAuth Services in Alfresco Share
Introduction to Windows Azure AppFabric
Node.js Express Web Applications
Migrating SharePoint Add-ins from Azure ACS to Azure AD
SaaS Application Deep Dive
The power of common identity across any cloud
Understand Hybrid Identity with Azure and Azure Stack
Examine common architectures for hybrid identity
8/1/ :13 PM BRK2276 Azure Active Directory B2C: Modernize your customer identity management Saeed Akhter Senior Program Manager © Microsoft Corporation.
Windows Azure AppFabric
Exam : Implementing Microsoft Azure Infrastructure Solutions
9/13/2018 4:54 PM BRK How to get Office 365 to the next level with Azure Active Directory Premium Brjann Brekkan Program Manager Lead – Customer.
Using AAD B2C for WordPress & Secure Deployment Scenario
New Primo Authentication
Azure AD Line Of Business Application Integration
Cloud Connect Seamlessly
Azure AD Application Proxy
11/14/ :30 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Office 365 Development July 2014.
SharePoint Online Hybrid – Configure Outbound Search
Introduction to Authentication Authentication සදහා හැදින්වීම
Office 365 Identity Management
Agenda OAuth Concepts Programming OAuth.
1/3/2019 1:47 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
Matthew Levy Azure AD B2B vs B2C Matthew Levy
SharePoint Online Authentication Patterns
Office 365 Development.
Token-based Authentication
Azure Active Directory
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
ACS and WIF.
07 | Introduction to Authentication
Check-in Identity and Access Management solution that makes it easy to secure access to services and resources.
Presentation transcript:

A lap around Azure AD B2C custom policies Rory Braybrook Microsoft Identity Architect @rbrayb

Azure AD / Azure AD B2C Azure AD Company employees On-premises AD synced to Azure AD via AAD Connect Domain joined email address Access to Azure SaaS e.g. Microsoft 365 5 guest users per Azure AD account

Azure AD / Azure AD B2C Azure AD B2C Customers Not in on-premises AD Any email address – Gmail / Hotmail No access to SaaS No AAD Connect

Azure AD B2C Provides: Self service registration (Sign up) Sign in Self service password reset Self service profile edit Zero help desk involvement Scales to hundreds of millions of users Priced appropriately – first 50,000 users free

Azure AD B2C protocols In: Open ID Connect (OAuth) MSAL library - .NET / .NET Core / Java / iOS / Android / React / Mobile native … Out SAML 2.0 Various social providers – Facebook, Google, LinkedIn, Twitter … Custom OpenID Connect No WS-Federation currently

Built-in policies Demo

Custom policies Allow user to customise journey? Passport? Driver’s licence? ADFS 2.0 – “disaster” Identity Experience Framework (IEF) XML as code

Custom policies – getting started Get started with custom policies in Azure Active Directory B2C Starter pack

Custom policies – getting started Starter pack

Create a tenant

IEF – setup applications Create application registrations in Azure AD Create applications in Azure AD B2C Setup keys Copy GUID’s in custom policy

IEF – custom policy upload “Compiling” Checks against xsd Checks e.g. that declared “variables” have been defined

IEF Overview

IEF - BYOI

IEF Inheritance

Policy flow

Technical Profiles

Self-asserted TP All interactions in AAD B2C where the user is expected to provide input are self-asserted technical profiles. For example, a sign-up page, sign-in page, or password reset page. In a self-asserted technical profile, you can use the InputClaims and InputClaimsTransformations elements to prepopulate the value of the claims that appear on the self-asserted page (output claims). Output claims Collecting the output claims from the user Setting a default value in an output claim A validation technical profile returns the output claims Output the claims via output claims transformation Persisted claims Used to persist the data to Azure AD B2C.

Validation TP A validation technical profile is used for validating some or all of the output claims of the referencing technical profile. Claims that are returned from a validation technical profile are added back to the claims bag. You can use those claims in the next validation technical profiles.

Claims transformation TP A claims transformation technical profile enables you to call output claims transformations to manipulate claims values, validate claims, or set default values for a set of output claims. Types Boolean Date Integer JSON General Social account String StringCollection

Claims transformation

Claims transformation TP - Example – Boolean <ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue"> <InputClaims> <InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" /> </InputClaims> <InputParameters> <InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" /> </InputParameters> </ClaimsTransformation>

Claims transformation TP - Example – String <ClaimsTransformation Id="ChangeToLower" TransformationMethod="ChangeCase"> <InputClaims> <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim1" /> </InputClaims> <InputParameters> <InputParameter Id="toCase" DataType="string" Value="LOWER" /> </InputParameters> <OutputClaims> <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="outputClaim" /> </OutputClaims> </ClaimsTransformation>

User Journeys User journeys specify explicit paths through which a policy allows a relying party application to obtain the desired claims for a user. The user is taken through these paths to retrieve the claims that are to be presented to the relying party. User journeys define the business logic of what an end user goes through as the Azure AD B2C IEF processes the request. Series of steps – can be skipped <OrchestrationStep Order="2" Type="ClaimsExchange"> <Preconditions> <Precondition Type="ClaimsExist" ExecuteActionsIf="true"> <Value>objectId</Value> <Action>SkipThisOrchestrationStep</Action> </Precondition>

Relying Party This specifies the user journey to enforce for the current request to Azure Active Directory (Azure AD) B2C. It also specifies the list of claims that the relying party (RP) application needs as part of the issued token. An RP application, such as a web, mobile, or desktop application, calls the RP policy file. The RP policy file executes a specific task, such as signing in, resetting a password, or editing a profile. Multiple applications can use the same RP policy and a single application can use multiple policies. All RP applications receive the same token with claims, and the user goes through the same user journey.

Claims Providers A claims provider contains a set of TP. Every claims provider must have one or more technical profiles that determine the endpoints and the protocols needed to communicate with the claims provider. A claims provider can have multiple technical profiles.

The flow <RelyingParty> <DefaultUserJourney ReferenceId="SignUpOrSignIn" /> <UserJourney Id="SignUpOrSignIn"> <OrchestrationStep Order="1“ ContentDefinitionReferenceId="api.signuporsignin"> TP - SelfAsserted-LocalAccountSignin-Email <ValidationTechnicalProfile ReferenceId="login-NonInteractive" /> TP – Order=“2“ – LocalAccountSignUpWithLogonEmail <ValidationTechnicalProfile ReferenceId="AAD-UserWriteUsingLogonEmail" /> REST API TP - Order=“3“ - AAD-UserReadUsingObjectId TP - Order=“4“ – JwtIssuer Extension attributes

IEF demo Sign up not sign in relying party Branding User Journey with TP Validate password using Troy Hunt’s “Pwned Password” via REST API

Built-in policy retrospective Built-in policies are custom policies that can be downloaded but not uploaded

IEF utilities

Resources Get started with custom policies in Azure Active Directory B2C Gaining Expertise with Azure AD B2C course for developers GitHub utilities Azure AD B2C blog articles Tips and tricks for working with custom policies in Azure AD B2C Azure AD B2C documentation