This document describes how to set up multi-factor authentication (MFA) for WordPress with AuthPoint as an identity provider. WordPress must already be configured and deployed before you set up MFA with AuthPoint.
To use SAML authentication to log in to WrodPress, you must install a plugin. For our integration, we use the miniOrange SAML SP (service provider) Single Sign On plugin.
This integration was tested with version 5.4.1 of WordPress.
WordPress Authentication Data Flow with AuthPoint
AuthPoint communicates with various cloud-based services and service providers with the SAML protocol. This diagram shows the data flow of a SAML MFA transaction.
Before You Begin
Before you begin these procedures, make sure that:
- You have installed the WordPress
- You have installed the miniOrange SAML SP Single Sign On plugin
- A token is assigned to a user in AuthPoint
- You have an AuthPoint identity provider (IdP) certificate (see Certificate Management)
To start, you must download the metadata file and certificate file from the Certificate Management page in the AuthPoint management UI. After you have that, you can configure WordPress.
- Log in to WatchGuard Cloud.
- From the navigation menu, select Configure > AuthPoint. If you have a Service Provider account, you must select an account from Account Manager.
- Select Resources.
- Click Certificate.
- Next to AuthPoint certificate you will associate with your resource, click and select Download Metadata and Download Certificate . We recommend that you choose the certificate with the latest expiration date.
The AuthPoint metadata and certificate provides your resource, in this case WordPress, with information necessary to identify AuthPoint as a trusted identity provider.
- Log in to your WordPress site.
- Select miniOrange SSO using SAML 2.0 > Plugin Configuration > Service Provider Setup.
- From the Select configuration guide for your Identity Provider drop-down list, select Other.
- In the Identity Provider Name text box, type AuthPoint.
- Open the AuthPoint metadata file you downloaded and find these values:
- SingleSignOnService Location
- In the IdP Entity ID or Issuer text box, type or paste the entityID value from the AuthPoint metadata file.
- In the SAML Login URL text box, type or paste the SingleSignOnService Location value from the AuthPoint metadata file.
- In the X.509 Certificate text box, paste the Certificate value from the AuthPoint certificate file that you downloaded.
- Click Save.
- Select the Service Provider Metadata tab.
- Copy the SP-EntityID / Issuer and ACS (AssertionConsumerService) URL values. You need these values to create a SAML resource in AuthPoint.
- Select Appearance > Widgets.
- From the Login with AuthPoint drop-down list, select Footer #1.
- Click Add Widget.
- In the Footer #1 section, expand Login with AuthPoint and type a title. In our example, we type SAML Login.
- Click Save.
- Click Done.
Before AuthPoint can receive authentication requests from WordPress, you must add a SAML resource for WordPress in AuthPoint. You must also assign an access policy for the WordPress resource to the user group(s) that must authenticate to log in.
Add a SAML Resource in AuthPoint
From the AuthPoint management UI:
- From the navigation menu, select Resources.
- From the Choose a Resource Type drop-down list, select SAML. Click Add Resource.
- Type a name for this resource.
- From the Application Type drop-down list, select WordPress.
- In the Service Provider Entity ID text box, type or paste the SP-EntityID / Issuer value that you copied from WordPress.
- In the Assertion Consumer Service text box, type or paste the ACS (AssertionConsumerService) URL value that you copied from WordPress.
- From the User ID sent on redirection to service provider drop-down list, select Email.
- From the Signature Method drop-down list, select SHA-256.
- From the AuthPoint Certificate drop-down list, select the certificate to associate with your resource. This must be the same certificate that you downloaded the metadata for in the previous section.
- Click Save.
Add an Access Policy to AuthPoint
You must have at least one user group in AuthPoint for authentication with WordPress, and you must assign an access policy for the WordPress resource to that group. If you already have a group, you do not have to add another group.
In the AuthPoint management UI:
- From the navigation menu, select Groups.
- To add a new group, click Add Group. If you already have a group that you want to use, select the group to edit it.
- In the Name text box, type a descriptive name for the group.
- (Optional) In the Description text box, type a description of the group.
- In the Access Policy section, click Add Policy.
- In the Add Policy dialog box, from the Resource drop-down list, select the resource you want to add an access policy for.
- (Optional) To require that users type their password before they authenticate for this resource, enable the Require Password Authentication toggle.
- Select the authentication options that users in this group can select from when they authenticate.
For SAML resources, if you select more than one authentication option, users must select one of the available options when they authenticate. For example, if you select OTP and Push, users can choose to type their OTP or approve a push to authenticate. You cannot require that they do both.
- Click Add.
- (Optional) Add one or more safe locations to your group. For more information about safe locations and detailed instructions to add them, see About Safe Locations.
- Click Save.
Add Users to AuthPoint
Before you assign users to a group, you must add the users to AuthPoint. There are two ways to add AuthPoint user accounts:
- Sync users from an external user database
- Add local AuthPoint users
Each user must be a member of a group. You must add at least one group before you can add users to AuthPoint.
To import users from Active Directory, Azure Active Directory, or an LDAP database, you must add an external identity in the AuthPoint management UI. External identities connect to user databases to get user account information and validate passwords.
- To sync users from Active Directory or an LDAP database, you must add an LDAP external identity
- To sync users from Azure Active Directory, you must add an Azure AD external identity
When you sync users from an external user database, you can sync any number of users and they are all added to AuthPoint at one time. Users synced from an external user database use the password defined for their user account as their AuthPoint password.
You can create local AuthPoint users on the Users page in the AuthPoint management UI. Because you can create only one user at a time, you most commonly do this when you want to create test users or to add only a small number of users.
Unlike users synced from an external user database, local AuthPoint users define and manage their own AuthPoint password. When you add a local user account, the user receives an email that prompts them to set their password.
To learn how to add local AuthPoint user accounts, see Add Local AuthPoint Users.
Test the Integration
To test AuthPoint MFA with WordPress, you can authenticate with a mobile token on your mobile device. For SAML resources, you can choose any method (push, QR code, or one-time password).
In this example, we show the push authentication method (users receive a push notification in the mobile app that they must approve to authenticate).
- In a web browser, navigate to your WordPress site (http://localhost/<your site>/)
- Below SAML Login, click Login with AuthPoint. If you specified a different Identity Provider name in WordPress, the link instead says Login with <IDP name>.
The AuthPoint single sign-on page appears.
- Type your email address or AuthPoint user name. Click Next.
- If required, in the Password text box, type your password.
- For the authentication method, select Send Push.
- Approve the authentication request that is sent to your mobile device.
You are logged in to WordPress.