Introduction
This guide provides information on how to:
Set up Beyond Identity as a passwordless authentication solution for your CIAM Application using Azure B2C environment.
Set up Azure B2C to use Beyond Identity as an Identity Provider.
Set up Beyond Identity Admin Console in Azure AD B2C Directory.
Prerequisites
Ensure that you have an Azure Active Directory Admin Account with “Global Administrator” privileges to configure:
“Beyond Identity Admin Console” App
Identity Provider
User Flows
Beyond Identity Configuration
Information to provide to the Beyond Identity Field Team:
Your Company Name | |
Your Azure AD B2C Instance ID | |
Beyond Identity Admin Console Application credentials (SAML SSO) SSO Client Id SSO Client Secret | |
(Optional) A logo for your corporation Logo requirements: 300 x 150 pixels or less File size of 10kb or less File types accepted: SVG, PNG, JPG, or GIF |
Information you will receive from the Beyond Identity Field Team
Beyond Identity IdP endpoint URLs: Issuer Authorization endpoint Token endpoint JWKS endpoint OIDC Metadata | https://auth.byndid.com/v2/authorize https://auth.byndid.com/v2/authorize https://auth.byndid.com/v2/authorize https://auth.byndid.com/v2/authorize https://auth.byndid.com/v2/authorize https://auth.byndid.com/v2/authorize |
Client ID | [From Beyond Identity Console] |
Client Secret | [From Beyond Identity Console] |
SCIM API Bearer Token | [From Beyond Identity SE] |
Beyond Identity Org ID | [From Beyond Identity SE] |
SCIM API endpoints |
Section 1: Setup Beyond Identity Admin Console in Azure AD
Sign in to the Azure portal as the global administrator of your Azure AD B2C tenant.
Make sure you're using the directory that contains your Azure AD B2C tenant. Select the Directories + subscriptions icon in the portal toolbar.
On the Portal settings | Directories + subscriptions page, find your Azure AD B2C directory in the Directory name list, and then select Switch.
Choose All services in the top-left corner of the Azure portal, search for and select Azure AD B2C.
Click on “App Registations” from the left menu bar.
Click on “New Application” from top menu bar.
On the Register an Application page update parameter as follows.
Name: Beyond Identity Admin Console
Supported account types: Accounts in this organizational directory only (acloudonly only - Single tenant)
Under Redirect URI, select Web, and then enter https://admin.byndid.com/auth/callback in the URL text box.
Under Permissions, select the Grant admin consent to openid and offline_access permissions check box.
Select Register.
In the left menu, select Authentication.
Under Implicit grant and hybrid flows, select “Access Token” and “ID Tokens”.
Select “Save” at the top of the page to save changes.
In the left menu, under Select Certificates & secrets.
Under Client Secrets tab select New client secret.
Description: e.g. Beyond Identity Admin Console
Expires: 24 months
Select Add.
Record the secret’s Value for use in next section to be configured by Beyond Identity field team. This secret value is never displayed again after you leave this page. You use this value as the application secret in your application's code.
Record Application (Client) ID for the “Beyond Identity Admin Console” application from the overview page. Please provide this value to Beyond Identity field team to be used in the next steps.
From the Overview page for the “Beyond Identity Admin Console” application, select the App hyperlink under “Managed Application in local directory”.
From the left menu, select “Users and Groups”.
Select “Add User/Group”.
Select “Users” and assign admins to this application.
Section 2: Setup Admin Console Access in Beyond Identity Support Console
Provide “Client ID”, and “Client Secret” collected from the previous step to Beyond Identity SE. Beyond Identity team will collect and populate those values using Beyond Identity Support Console.
Beyond Identity Field Team: Please configure following fields through Beyond Identity Support Console for Admin Console Configuration.
Name: <Name of the SSO> (e.g. Azure B2C SSO)
Client ID: <Use the value recorded in the previous step>
Client Secret: <Use the value recorded in the previous step>
Issuer: https://sts.windows.net/<Azure-AD-tenant-id>/
Token Field: upn
Token Field Lookup: user_name
After these values are provisioned, login and confirm that the admin has access to the Beyond Identity Admin Console.
Section 3: Setup Beyond Identity service for User Authentication:
Once logged into Beyond Identity Admin Console UI, click on “Integrations” page in top left menu and then click on “OIDC”.
Click on “Add OIDC Client” and update the fields as following:
Name: <SSO Connection Name> (e.g. Azure AD B2C)
Redirect URIs: https://<your-tenant-name>.b2clogin.com/<your-tenant-name>.onmicrosoft.com/oauth2/authresp
Token Signing Algorithm: RS256
Auth Method: client_secret_post
Click on “Save Changes”.
Note down Client ID and Client Secret. You will need this in the next step.
Section 4: Configure Beyond Identity as the Identity Provider on Azure B2C tenant
Sign in to the Azure portal as the global administrator of your Azure AD B2C tenant.
Once logged into Azure AD B2C tenant, Select Identity providers, and then select New OpenID Connect provider.
Update the OpenID Connect IdP fields as follows.
Name: <IdP_Name> (e.g. Beyond Identity)
Matadata URL: https://auth.byndid.com/v2/.well-known/openid-configuration
Client ID: <Use the value recorded in the previous step>
Client secret: <Use the value recorded in the previous step>
Scope: openid profile email
Response Type: Code
Response Mode: form_post
Domain hint: (This optional field needs to be configured if you want to directly redirect authentication request to Beyond Identity as IdP without showing sign-in page, e.g. domain_hint=beyond-identity)
Identity Provider claims mapping:
User ID: sub
Display name: display_name
Given name: given_name
Surname: family_name
Email: email
Click on Save to save Identity Provider Configuration.
Section 5: Configure User Flow and Add Beyond Identity as IdP to a user flow
In your Azure AD B2C tenant, select User flows in left menu bar.
If you have already created a user flow then use following steps.
Click the user flow that you want to add the identity provider.
Under the Custom Identity providers, select the identity provider you added. (e.g. Beyond Identity).
Select Save.
If you are creating a new User Flow then use following steps to include Beyond Identity as Identity provider.
Create a “new user flow” by clicking on New user flow.
Select a user flow type by clicking on appropriate flow type (e.g. “Sign up and sign in” and version to “Recommended”) as shown below.
Update the user flow type parameter as follows.
Name: <User-flow-name> (e.g. Signup-Signin)
Custom identity providers: Select Beyond Identity.
MFA: optional
Conditional Access: Optional
User Attributes and Token Claims Collect Attributes: (e.g. Given Name, Surname, Email)
Return Claims: (e.g. select Given Name, Surname)
Setting up test users
User Enrollment
To enroll a user in the Beyond Identity experience, create user in Beyond Identity Admin Console using following Parameters for the purpose of testing:
External ID (e.g. same as UPN)
Email
Username
Display Name
Enrolled user will receive an email from Beyond Identity welcoming them to the new Identity Provider.
See image below for reference:
Each enrolled user will be asked to follow the two steps below:
Step 1: Download the Beyond Identity Authenticator to their device.
When the user clicks “View Download Options”, the Beyond Identity Authenticator downloads page will open in a browser with all supported platforms displayed. The user should download and install the Beyond Identity Authenticator on their device if they have not already.
Now that the user has the Authenticator installed on their device, they should proceed to Step 2 as there is not yet a user credential associated with the Authenticator on that device.
Step 2: Register their Credential in the Beyond Identity IdP.
By clicking on Step 2 Register New Credential, the user’s credential will get enrolled in the Beyond Identity service on the back end. On the front end, users who click Step 2 will be taken to the Beyond Identity Authenticator where they will see the progress of their credential registration. Once completed, the user will see a credentials in the Authenticator.
See example image below:
Testing a User Flow:
After logging into Azure AD B2C portal, click on User Flows from left side menu.
Select appropriate user flow you want to test.
To test your signin/signup policy, select Run user flow .
For Application, select the web application named testapp1 that you previously registered. The Reply URL should show https://jwt.ms.
Select the Run user flow button.
From the sign-up or sign-in page, select the identity provider you want to sign-in. For example, Beyond Identity.
If the sign-in process is successful, your browser is redirected to https://jwt.ms, which displays the contents of the token returned by Azure AD B2C.
References:
Azure Active Directory B2C code samples
https://docs.microsoft.com/en-us/azure/active-directory-b2c/integrate-with-app-code-samples
Setup MS Identity B2C Javascript SPA sample App
https://github.com/Azure-Samples/ms-identity-b2c-javascript-spa/blob/main/README.md
Set up sign-up and sign-in with generic OpenID Connect using Azure Active Directory B2C
Sign In and Sign Up with Username or Email
https://github.com/azure-ad-b2c/samples/tree/master/policies/username-or-email
Tutorial: Register a web application in Azure Active Directory B2C
Tutorial: Create user flows and custom policies in Azure Active Directory B2C
User flows and custom policies overview
https://docs.microsoft.com/en-us/azure/active-directory-b2c/user-flow-overview