Azure B2C WordPress Single Sign On (SSO) login with our WordPress SAML Single
Sign-On (SSO) module. WordPress Azure B2C SSO allows your users to login to your WordPress
and access the site by authenticating with their Azure B2C Identity Provider (IDP) credentials. You can also
configure plugin using different IDPs such as Azure B2C / Azure AD, Office 365, and other custom providers. Our
WordPress Azure AD B2C SSO solution will make WordPress (WP) SAML 2.0 compliant Service Provider (SP),
establishing trust between the WordPress (WP) site and Azure B2C to securely authenticate and login users to the
WordPress (WP) site. It also provides Seamless support for advanced Windows SSO features like Attribute & Group
Mapping, Populate Employee information from Azure B2C / Azure AD to WordPress (WP), Intranet SSO / Internet SSO,
Mapping the profile picture from Azure B2C / Azure AD to your WordPress (WP) avatar, etc.
Here, we will go through a guide to configure SAML Single Sign-On SSO for WordPress Azure B2C login by
considering Azure B2C as IDP (Identity Provider) and WordPress as SP (Service Provider). Our WordPress Azure AD B2C SSO solution
provides Unlimited user authentications from Azure B2C. To know more about other features we provide in WordPress
(WP) SAML Single Sign-On (SSO) plugin, you can click here.
Pre-requisites : Download
And Installation
Log into your WordPress (WP) instance as an Admin.
Steps to configure Azure B2C WordPress login using Azure B2C as SAML IDP
1. Setup Azure B2C
as IdP (Identity Provider)
Follow the steps below to configure Azure B2C as an Identity Provider
Configure Azure
B2C as IdP
In the WordPress (WP) SAML SP SSO plugin, navigate to Service Provider Metadata tab. Here, you can
find the SP metadata such as SP Entity ID and ACS ( AssertionConsumerService ) URL which are required to
configure Azure B2C as the Identity Provider.
2. Register
Azure B2C Applications
Register the
Identity Experience Framework application
From the Azure AD B2C tenant, select App registrations, and then select New registration.
For Name, enter IdentityExperienceFramework.
Under Supported account types, select Accounts in this organizational directory only.
Under Redirect URI, select Web, and then enter
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com, where your-tenant-name is your Azure
AD B2C tenant domain name.
NOTE:
In the following step if the 'Permissions' section is not visible then it might be the reason that
you don't have an active AzureAD B2C subscription for that tenant. You can find the details regarding
the AzureAD B2C subscription here and you can create a new tenant by following the steps here.
Under Permissions, select the Grant admin consent to openid and offline_access permissions check box.
Select Register.
Record the Application (client) ID for use in a later step.
Register the
Identity Experience Framework application
Under Manage, select Expose an API.
Select Add a scope, then select Save and continue to accept the default application ID URI.
Enter the following values to create a scope that allows custom policy execution in your Azure AD B2C
tenant:
Admin consent description:Allow the application to access IdentityExperienceFramework on
behalf of the signed-in user.
Select Add scope
Register the
ProxyIdentityExperienceFramework application
Select App registrations, and then select New registration.
For Name, enter ProxyIdentityExperienceFramework.
Under Supported account types, select Accounts in this organizational directory only.
Under Redirect URI, use the drop-down to select Public client/native (mobile & desktop).
For Redirect URI, enter myapp://auth.
Under Permissions, select the Grant admin consent to openid and offline_access permissions check box.
Select Register.
Record the Application (client) ID for use in a later step.
Next, specify that
the application should be treated as a public client
Under Manage, select Authentication.
Under Advanced settings, enable Allow public client flows (select Yes).
Select Save.
Now, grant
permissions to the API scope you exposed earlier in the IdentityExperienceFramework registration
Under Manage, select API permissions.
Under Configured permissions, select Add a permission.
Select the My APIs tab, then select the IdentityExperienceFramework
application.
Under Permission, select the user_impersonation scope that you defined earlier.
Select Add permissions. As directed, wait a few minutes before proceeding to the next step.
Select Grant admin consent for (your tenant name).
Select your currently signed-in administrator account, or sign in with an account in your Azure AD B2C
tenant that's been assigned at least the Cloud application administrator role.
Select Yes.
Select Refresh, and then verify that "Granted for ..." appears under Status for the scopes -
offline_access, openid and user_impersonation. It might take a few minutes for the permissions to propagate.
Register the
WordPress Application
Select App registrations, and then select New registration.
Enter a Name for the application such as: WordPress.
Under Supported account types, select Accounts in any organizational directory or any identity
provider. For authenticating users with Azure AD B2C.
Under Redirect URI, select Web, and then enter the ACS URL from the Service Provider Metadata
tab of the miniOrange SAML plugin.
Select Register.
Under Manage, click on Expose an API.
Click on Set for the Application ID URI and then click on Save, accepting the default value.
Once saved, copy the Application ID URI and navigate to the Service Provider Metadata tab of the
plugin.
Paste the copied value under the SP Entity ID / Issuer field provided in this tab.
Click on Save.
3. Generate SSO Policies
From our Azure B2C portal, navigate to the Overview section of your B2C tenant and record your tenant
name. NOTE: If your B2C domain is b2ctest.onmicrosoft.com, then your tenant name is b2ctest.
Enter your Azure B2C tenant name below, along with the application ID for
IdentityExperienceFramework and ProxyIdentityExperienceFramework apps as registered in the above steps.
Click on the Generate Azure B2C Policies button to download the SSO policies.
Extract the downloaded zip file. It contains the policy files and certificate (.pfx), which you will require
in the following steps.
4. Setup Certificates
NOTE:
In the following step if the 'Identity Experience Framework' is not clickable then it might be the
reason that you don't have an active Azure AD B2C subscription for that tenant. You can find the details
regarding the Azure AD B2C subscription
here and you can create a new tenant by following the steps here.
Upload the
Certificate
Sign in to the Azure portal and browse to your Azure
AD B2C tenant.
Under Policies, select Identity Experience Framework and then Policy keys.
Select Add, and then select Options > Upload
Enter the Name as SamlIdpCert. The prefix B2C_1A_ is automatically added to the name of your key.
Using the upload file control, upload your certificate that was generated in
the above steps along with the SSO policies (tenantname-cert.pfx).
Enter the certificate's password as your tenant name and click on Create. For example, if your tenant
name is xyzb2c.onmicrosoft.com, enter the password as xyzb2c
You should be able to see a new policy key with the name B2C_1A_SamlIdpCert.
Create the signing
key
On the overview page of your Azure AD B2C tenant, under Policies, select Identity Experience
Framework.
Select Policy Keys and then select Add.
For Options, choose Generate.
In Name, enter TokenSigningKeyContainer.
For Key type, select RSA.
For Key usage, select Signature.
Select Create.
Create the
encryption key
On the overview page of your Azure AD B2C tenant, under Policies, select Identity Experience
Framework.
Select Policy Keys and then select Add.
For Options, choose Generate.
In Name, enter TokenEncryptionKeyContainer.
For Key type, select RSA.
For Key usage, select Encryption.
Select Create.
5. Upload the Policies
Select the Identity Experience Framework menu item in your B2C tenant in the Azure portal.
Select Upload custom policy.
As per the following order, upload the policy files downloaded in the above steps:
TrustFrameworkBase.xml
TrustFrameworkExtensions.xml
SignUpOrSignin.xml
ProfileEdit.xml
PasswordReset.xml
SignUpOrSigninSAML.xml
As you upload the files, Azure adds the prefix B2C_1A_ to each.
You have successfully configured Azure B2C as SAML IdP (Identity Provider) for achieving WordPress Azure B2C
Single Sign-On (SSO) Login, ensuring secure login into WordPress (WP) Site.
6. Configure the plugin
Navigate to the Service Provider Setup tab of the plugin and click on the Upload IDP Metadata
button.
Provide any IDP Name. For example, AzureB2C
Enter the Metadata URL as
https://tenant-name.b2clogin.com/tenant-name.onmicrosoft.com/B2C_1A_signup_signin_saml/Samlp/metadata
(NOTE :You will need to replace the tenant-name in above URl with Azure B2C tenant name)
Click on the Fetch Metadata button.
7. How to configure SAML Single Logout in Azure AD B2C?
To access SLO users would first require the SLO URL which is provided in the Service Provider Metadata tab of
the Plugin. (Premium Feature)
Copy the SLO Url from the SAML Single Sign-On – SAML SSO Login Plugin.
Navigate to Azure AD B2C portal, navigate to the App ( connected to the WordPress (WP) ).
In the left panel and select the Manifest tab.
Place the Single Logout URL in the manifest code by replacing the NULL value.
You have successfully configured Single Logout functionality with Azure B2C.
In the free plugin, only NameID is supported for Email and Username attributes of the WordPress
(WP) user.
When a user performs SSO, the NameID value sent by the IDP will get mapped to the email and username of
the WordPress (WP) user.
9. Role Mapping
In the free plugin, you can choose a default role which will be assigned to all the non-admin users when
they perform SSO.
Go to Attribute/Role mapping tab and navigate to Role Mapping section.
Select the Default Role and click on the Update button.
10. SSO settings
In the free plugin you can add a Single Sign-On button by enabling Add a Single Sign-On button on the
WordPress (WP) Login Page toggle in Option 1.
If your WordPress theme supports login widget, you can add a login widget to enable SP-Initiated SSO on
your site.
Navigate to Redirection and SSO links tab and follow the given steps given under Option 2: Use a
Widget to add a login widget on your site.
8. Attribute Mapping
Attribute Mapping feature allows you to map the user attributes sent by the IDP during SSO
to the user attributes at WordPress (WP).
In WordPress (WP) SAML plugin, go to Attribute/Role Mapping tab and fill up the following fields
in Attribute Mapping section.
NOTE: If you click on Test Configuration button in Service Provider Setup tab and
authenticate with your IDP, you can see a list of attributes sent by the IDP in the Attribute/Role
mapping tab. This information can be used to
provide the above mapping.
9: Role Mapping
In the standard plugin, you can choose a default role which will be assigned to all the non-admin users
when they perform SSO.
Go to Attribute/Role mapping tab and navigate to Role Mapping section.
Select the Default Role and click on the Save button.
10: SSO settings
In the Standard plugin you can enable SP-initiated SSO using the following options.
Auto-Redirection from site: If this option is enabled, any unauthenticated user trying to access
your site will get redirected to the IDP login page and after successful authentication, they will be
redirected back to the same page
on your site which they were trying to access.
Steps:
1. Go to Redirection and SSO Links tab of the plugin and navigate to Option 1: Auto-
Redirection from site.
2. Enable Redirect to IdP
if user not logged in [PROTECT COMPLETE SITE] option.
Auto-Redirection from WordPress (WP) Login: If this option is enabled, any unauthenticated user
trying to access the default WordPress (WP) login page will get redirected to the IDP login page for
authentication. After successful authentication,
they will be redirected back to the WordPress (WP) site.
Steps:
1. Go to Redirection and SSO Links tab of the plugin and navigate to Option 2: Auto-
Redirection from WordPress (WP) Login.
2. Enable
Redirect to IdP from WordPress Login Page option.
NOTE: Please enable the Backdoor login and note down the backdoor URL. This will allow
you to access the WordPress (WP) login page in case you get locked out of the IDP.
SSO Links: You can add SSO links anywhere on your site using the Shortcode and Widget provided in
Redirection and SSO Links tab > Option 3: SSO Links section of the plugin
8. Attribute Mapping
Attribute Mapping feature allows you to map the user attributes sent by the IDP during SSO
to the user attributes at WordPress (WP).
In WordPress (WP) SAML plugin, go to Attribute/Role Mapping tab and fill up the following fields
in Attribute Mapping section.
Custom Attribute Mapping: This feature allows you to map any attribute sent by the IDP to
the usermeta table of WordPress (WP).
9. Role Mapping
This feature allows you to assign and manage roles of the users when they perform SSO. Along with the
default WordPress (WP) roles, this is compatible with any custom roles as well.
From the Attribute Mapping section of the plugin, provide a mapping for the field named
Group/Role. This attribute will contain the role related information sent by the IDP and will be
used for Role Mapping.
Navigate to role mapping section and provide the mappings for the highlighted roles.
For example, If you want a user whose Group/Role attribute value is wp-editor to be assigned as
an Editor in WordPress (WP), just provide the mapping as wp-editor in the Editor field of Role
Mapping section.
10. SSO settings
In the Premium plugin you can enable SP-initiated SSO using the following options.
Auto-Redirection from site: If this option is enabled, any unauthenticated user trying to access
your site will get redirected to the IDP login page and after successful authentication they will be
redirected back to the same page on
your site which they were trying to access.
Steps:
1. Go to Redirection and SSO Links tab of the plugin and navigate to Option 1 :
Auto-Redirection from site. 2. Enable Redirect to IdP if user not logged in
[PROTECT COMPLETE SITE] option.
Auto-Redirection from WordPress (WP) Login: If this option is enabled, any unauthenticated user
trying to access the default WordPress (WP) login page will get redirected to the IDP login page for
authentication. After successful authentication,
they will be redirected back to the WordPress (WP) site.
Steps:
1. Go to Redirection and SSO Links tab of the plugin and navigate to Option 2: Auto-
Redirection from WordPress (WP) Login. 2. Enable
Redirect to IdP from WordPress Login Page option.
NOTE: Please enable the Backdoor login and note down the
backdoor URL. This will allow you to access the WordPress (WP) login page in case you get locked out
of the IDP login.
Login Button: You can add a customized login button anywhere on your site or WordPress (WP) login
page by navigating to Option 3: Login Button section of Redirection and SSO Links tab.
SSO Links: You can add SSO links anywhere on your site using the Shortcode and Widget provided in
Option 4: SSO Links section of Redirection and SSO Links tab.
In this Guide, you have successfully configured WordPress Azure B2C SSO [SAML] (Azure B2C WordPress SSO / Azure
B2C WordPress Login), choosing Azure B2C as IDP and WordPress (WP) as SP. WordPress (WP) SAML
Single Sign On – SSO solution ensures that you are ready to roll out secure access / Login into
WordPress (WP) site using Azure B2C login credentials.
Our solution WordPress Azure B2C SSO supports all kinds of SSO use cases such as WordPress Azure Active
directory SSO, WordPress Office 365 SSO, WordPress Azure AD SSO.
Recommended Add-Ons
SCIM User Provisioning
Allows syncing user's creation, updation and deletion from your IDP to WordPress site
If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com
Cookie Preferences
Cookie Consent
This privacy statement applies to miniorange websites describing how we handle the personal
information.
When you visit any website, it may store or retrieve the information on your browser, mostly in the
form of the cookies. This information might be about you, your preferences or your device and is
mostly used to make the site work as you expect it to. The information does not directly identify
you, but it can give you a more personalized web experience.
Click on the category headings to check how we handle the cookies.
For the privacy statement of our solutions you can refer to the privacy policy.
Strictly Necessary Cookies
Always Active
Necessary cookies help make a website fully usable by enabling the basic functions like site
navigation, logging in, filling forms, etc. The cookies used for the functionality do not store any
personal identifiable information. However, some parts of the website will not work properly without
the cookies.
Performance Cookies
Always Active
These cookies only collect aggregated information about the traffic of the website including -
visitors, sources, page clicks and views, etc. This allows us to know more about our most and least
popular pages along with users' interaction on the actionable elements and hence letting us improve
the performance of our website as well as our services.