Configure Azure AD Single Sign-On (SSO) with WordPress OAuth & OpenID Connect Single Sign-On (SSO) plugin. Enable secure login into WordPress using Microsoft Azure AD as OAuth and OpenID Connect provider. Azure AD Single Sign-On (SSO) with WordPress allows your users to login to your WordPress and access the site by authenticating with their Azure AD identity provider. You can also configure plugin using different IDPs such as Azure B2C, Office 365, and other custom providers.
It supports advanced Single Sign-On (SSO) features such as user profile Attribute mapping, Role mapping, multi tenant login etc. Here we will go through a guide to configure Single Sign-On (SSO) between WordPress and Azure AD for user authentication. By the end of this guide, users should be able to perform secure login to WordPress and access the site with Azure AD SSO. To know more about other features we provide in WP OAuth Single Sign-On ( OAuth & OpenID Connect Client ) plugin,
you can
click here.
To know more details about different features provided in Azure AD SSO and Microsoft Office 365 SSO, please
click here.
WordPress Azure Integration
WordPress Azure integration provides functionality to manage all the user operations from your
WordPress site.
Click here
Following are the features supported with WP OAuth Client Plugin
Pre-requisites : Download And Installation
- Log into your WordPress instance as an admin.
- Go to the WordPress Dashboard -> Plugins and click on Add New.
- Search for a WordPress OAuth Single Sign-On (SSO) plugin and click on Install Now.
- Once installed click on Activate
Steps to configure Azure AD Single Sign-On (SSO) Login into WordPress
1. Setup Azure Active Directory as OAuth Provider
- Sign in to Azure portal.
- Select Azure Active Directory.
- In the left-hand navigation pane, click the App registrations service, and click New registration.
- When the Create page appears, enter your application's registration information.(Refer to the below table)
Name : |
Name of your application. |
Application type : |
- Select "Web app / API" for client applications and resource/API applications that are installed on a secure server. This setting is used for OAuth confidential web clients and public user-agent-based clients. The same application can also expose both a client and resource/API.
|
Redirect URI : |
- For "Web app / API" applications, provide the base URL of your app.
eg, https://<domain-name>
might be the URL for a web app running on your local machine. Users would use this URL to sign in to a web client application.
|
You have successfully configured Azure AD as OAuth Provider for achieving user authentication with Azure AD Single Sign-On (SSO) login into your WordPress Site.
2. Setup WordPress as OAuth Client
3. User Attribute Mapping
- User Attribute Mapping is mandatory for enabling users to successfully login into WordPress. We will be setting up user profile attributes for WordPress using below settings.
Finding user attributes
- Go to Configure OAuth tab. Scroll down and click on Test Configuration.
- You will see all the values returned by your OAuth Provider to WordPress in a table. If you don't see value for First Name, Last Name, Email or Username, make the required settings in your OAuth Provider to return this information.
- Once you see all the values in Test Configuration, go to Attribute / Role Mapping tab, you will get the list of attributes in a Username dropdown.
4. Steps to fetch Azure AD Groups
- Go to Application → Select the application where you want to configure the group mapping. Now, Go to the API Permissions tab.
- Click on the Add permission button, and then Microsoft Graph API -> Delegated Permissions and select openid, Profile scope and click on the Add Permissions button.
- Click on the Grant consent for Demo button.
- Go to Manifest tab and find groupMembershipClaims and changes it’s value to "All" and click on the save button.
- Now you would be able to get the group's value in the Test configuration window.
- You can follow the role mapping section to map the groups to WordPress users while Azure AD SSO.
5. Steps to configure Azure AD Groups in plugin [Premium]
- Go to the Attribute Mapping section in the plugin and map the Attribute Names from the Test Configuration table. Make sure Enable Role Mapping option is enabled and click on the Save Settings button. (Refer to the screenshot)
- Scroll down and go to the Role Mapping section, you need to map Group Attribute Name. Select the attribute name from the list of attributes that return the groups from the test configuration table of Azure AD.
Eg:Groups
- Assign the WordPress role to the Provider Groups: Based on the Azure AD application, you can allocate the WordPress role to Azure AD Groups. Add the Azure AD group's value under Group Attribute Value and assign the required WordPress role in front of it under WordPress Role.
For example, in the below image. Group value has been assigned the role of Subscriber.
- Once you save the mapping, the Azure AD group will be assigned the WordPress Subscriber role after SSO.
Example: As per the given example, a User with group value will be added as a administrator
.
6. Custom Attribute Mapping [Premium]
- Go to your application in Azure Active Directory and select Token configuration from the left menu.
- Click on Add optional claim and then select ID from the right section.
- Now choose all the attributes you want to fetch while SSO (e.g family_name, given_name, etc) and click on Add button.
- You might see a popup to Turn on the Microsoft Graph profile permission (required for claims to appear in token), enable it, and click on Add button.
7. Sign In Settings
- The settings in Single Sign-On (SSO) Settings tab define the user experience for Single Sign-On (SSO). To add a Azure AD login widget on your WordPress page, you need to follow the below steps.
8: Scope & Endpoints
- Please refer the below scope & endpoints table to allow SSO from Azure AD single-tenant into your WordPress site.
Scope: |
openid |
Authorize Endpoint: |
https://login.microsoftonline.com/<tenant-id>/oauth2/authorize |
Access Token Endpoint: |
https://login.microsoftonline.com/<tenant-id>/oauth2/token |
Get User Info Endpoint: |
https://login.windows.net/<tenant-id>/openid/userinfo |
Custom redirect URL after logout:[optional] |
https://login.microsoftonline.com/<tenant-id>/oauth2/logout?post_logout_redirect_uri=<your URL> |
- Please refer the below scope & endpoints table to allow SSO from any Azure AD tenant into your WordPress site.
Scope: |
openid |
Authorize Endpoint: |
https://login.microsoftonline.com/common/oauth2/authorize |
Access Token Endpoint: |
https://login.microsoftonline.com/common/oauth2/token |
Get User Info Endpoint: |
https://login.windows.net/common/openid/userinfo |
Custom redirect URL after logout:[optional] |
https://login.microsoftonline.com/common/oauth2/logout?post_logout_redirect_uri=<your URL> |
In this Guide, you have successfully configured Azure AD Single Sign-On (SSO) by configuring Azure AD as OAuth Provider and WordPress as OAuth Client using our WP OAuth Single Sign-On ( OAuth & OpenID Connect Client ) plugin.
This solution ensures that you are ready to roll out secure access to your WordPress site using Azure AD login credentials within minutes.
Azure Self-Service Password Reset
- Azure Self-Service Password Reset (SSPR) is a feature of Azure Active Directory (AD) that allows users to reset their passwords without having to contact the administrator for support. As an administrator, you can reset a user's password if the password is forgotten, the user is locked out of a device, or the user was never given a password.
Allowing employees to use the Azure AD Self-Service Password Reset (SSPR) feature and unblock themselves can help your company save time and money by eliminating the need to depend on IT administrators & minimizing the support costs associated with the enquiries.
- The WordPress Azure AD integrator interfaces with the WordPress OAuth & OpenId Connect Client Single Sign-On (SSO) and allows you to manage all of your user's actions from your WordPress site. Azure AD Self-Service Password Reset (SSPR) is one of the user functions available. Azure password reset can be controlled by either the users or WordPress administrators. As an administrator, you can deliver a seamless user experience on your WordPress site for all your Azure AD by enabling the Azure AD Self-Service Password Reset(SSPR) feature for them. You don’t need to manage them by yourself at the Azure portal.
- If you forget your Azure AD account password but wish to use SSO with Azure AD B2C, go to the sign-in page of Azure AD and click ‘Forget your Password’. You'll be able to reset your password with Azure AD Self-Service Password Reset (SSPR) feature without the administrator support and securely SSO into WordPress.
Refer to this Setup Guide to enable users to unlock their account or reset passwords using Azure AD self-service password reset, Reach out to us if you face trouble enabling the feature
Azure AD MFA Conditional Access
- Azure AD Multi-Factor Authentication (MFA) conditional access adds additional security over only using a password to authenticate the user login. Multi Factor authentication (MFA) offers an extra layer of security to the sign-in process. It requires users to authenticate their identity through a variety of methods. Instead of simply requesting a username and password. MFA is used to limit access to internal IT systems and solutions. Azure AD MFA conditional access adds extra layer of security to data and apps by enabling a second form of authentication. Enabling Conditional Access policy for MFA makes it easy to customize user’s experience to fit their specific requirements. Conditional Access policy for MFA allows you to prompt users for MFA when it's necessary for security, but also restrict when not needed.
- Secure access to resources with Azure AD MFA conditional access with WordPress OAuth & OpenID Connect Single Sign-On (SSO) plugin allows you to securely Single Sign-On (SSO) with Azure AD & enable Azure AD Multi factor authentication (MFA) with Azure for your WordPress Site as well. This solution ensures that you are ready to roll out secure access to your WordPress(WP) site using Azure login credentials within minutes & provide extra layer of protection with Azure AD MFA conditional access policy.
- To enable and use Azure AD Multi-Factor Authentication is with Conditional Access policies. Conditional Access policy for MFA allows you to specify policies that respond to sign-in events and require extra activities before granting a user access to the service.
Refer to this Setup Guide to learn the steps of planning and deploying Azure AD MFA conditional access. Reach out to us if you face trouble enabling the feature
Additional Resources
Mail us on oauthsupport@xecurify.com for quick guidance(via email/meeting) on your requirement and our team will help you to select the best suitable solution/plan as per your requirement.