SAML Authentication adds an extra layer of security to the password reset and account unlock process. If your organization already has SAML-based identity provider (IdP) applications such as OneLogin or Okta, it is only sensible that you use SAML Authentication as a method to verify users' identity. When SAML authentication is enabled, users are redirected to their IdP login URL for authentication, during password self-service operations. After successful authentication, the users are routed back to the ADSelfService Plus portal where they can reset their password or unlock their account. To use SAML authentication, end users do not have to enroll with ADSelfService Plus.
Steps to be followed:
Configuration of SAML authentication must be done in two places:
Here, the IdP is the SAML-based identity provider application such as OneLogin or Okta. The SP is ADSelfService Plus.
SAML authentication cannot be used to perform user identification through the ADSelfService Plus mobile app during self-service actions.
Log in to ADSelfService Plus web console with admin credentials. Navigate to Configuration tab → Multi-factor Authentication section → SAML authentication. Copy the ACS URL/ Recepient URL and the Relay State.
The SAML-based identity provider that you intend to use must have ADSelfService Plus as one of its SAML supported applications. If it is not supported by default, you can add ADSelfService Plus as a new application in your identity provider. Find the steps to add a new application in Okta, OneLogin, ADFS and Line Works by clicking on the respective links. For other identity providers, contact their support team for further assistance.
Log in to your identity provider application web-console with admin credentials and navigate to ADSelfService Plus from the list of applications provided.
Either download the Metadata in XML format, or get the required data by copying the Issuer URL/Entity ID, IdP Login URL, and the X509-certificate.
Step 1: Service Provider Configuration (ADSelfService Plus)
Steps to be followed:
Log in to ADSelfService Plus web-console with admin credentials.
Navigate to Configuration tab → Self-Service → Multi-factor Authentication.
Click SAML Authentication tab.
Check the Enable SAML Authentication check box.
Choose an Identity Provider (IdP) from the drop-down list.
There are two SAML Config Modes: Upload Metadata File and Manual Configuration.
Select Upload Metadata File to manually upload the IdP metadata file downloaded from the identity provider (Refer step 4 of Prerequisite).
Click Browse to upload the IdP metadata file.
Select Manual Configuration to manually configure the URLs and certificates.
Enter the Issuer URL/Entity ID URL obtained from the identity provider in the respective field. (Refer step 4 of Prerequisite).
In the IdP Login URL, enter the login URL obtained from the identity provider (Refer step 4 of Prerequisite).
In the space provided for X.509-Certificate, enter the public certificate key fetched from the identity provider (Refer step 4 of Prerequisite).
The X.509-Certificate begins with '-----BEGIN CERTIFICATE-----', and ends with '-----END CERTIFICATE-----'. If this pattern--though default in most cases--is absent, do ensure that you maintain it.
Important: By default, ADSelfService Plus utilizes the same SAML authentication configuration for multi-factor authentication during password self-service and SSO during login. Meaning, the SAML configurations which you complete for multi-factor authentication will automatically be reflected on the logon SSO settings, if the latter is enabled.
When you select the Create a new SAML SSO checkbox, you can maintain a separate SAML configuration for multi-factor authentication by generating a new ACS URL/Recipient URL and SP Metadata file. Use the newly generated ACS URL/Recipient URL or the SP Metadata file to create a new SAML configuration for ADSelfService Plus in your identity provider.
Step 2: Setting up a SAML application in the Identity Provider
A. Steps to set up a SAML application in Okta
Log in to Okta web-console with admin credentials. Make sure that you are logged into the admin portal.
Navigate to the Classic UI drop-down box.
Go to the Applications tab > Add applications shortcut > Create New App button.
In the dialog box that opens, select the SAML 2.0 option, then click Create.
In General Settings, enter the SAML application name (Example: SelfService MFA) in the App name field. Upload a logo for the application if needed, then click Next.
In Configure SAML, enter the ACS URL/Recipient URL into the Single sign on URL and Audience URI (SP Entity ID) fields.
In Feedback, select an appropriate response and then click Finish.
The Sign on tab of the newly created application appears. Download the metadata file by clicking the Identity Provider metadata link. You will need this file while configuring SAML authentication in ADSelfService Plus. So, save this file and keep it safe. Rename the downloaded metadata file as 'metadata_okta.xml'.
Click on the Assignments tab and navigate to Assign. Select Assign to People or Assign to Groups based on your requirement. After selecting an option, click the Save and Go Back button.
B. Steps to set up a SAML application in OneLogin
Log in to OneLogin web-console with admin credentials.
Click the Administration button.
Navigate to Apps tab → Add Apps.
Find SAML in the Find Applications section. Select SAML Test Connector (IdP) from the search result.
Update the Display Name and the application logo. Click SAVE.
Under the Configuration tab, enter the ACS URL/Recipient URL into the ACS (Consumer) URL Validator, ACS (Consumer) URL, Recipient, and Audience fields.
Click on the Users tab and assign the application to users or groups based on your requirement.
In the MORE ACTIONS button on the top panel, select SAML Metadata to download the metadata file. You will need this file while configuring SAML authentication in ADSelfService Plus. So, save this file and keep it safe.
C. Steps to set up a SAML application in ADFS
To configure ADFS for identity verification in ADSelfService Plus, you need the following components:
You need to install the ADFS server. The detailed steps for installing and configuring ADFS can be found in this Microsoft article.
An SSL certificate to sign your ADFS login page and the fingerprint for that certificate.
Only form-based authentication method is configured for users trying to access ADSelfService Plus through ADFS authentication - for both intranet and extranet based use. You can view this setting in Authentication Policies → Primary Authentication → Global Settings.
Claim Rules and Relying Party Trust
During configuration, you will need to add a Relying Party Trust and create claim rules.
A Relying Party Trust is created to establish the connection between two applications for authentication purposes by verifying claims. In this case, ADFS will trust the relying party (ADSelfService Plus) and authenticate users based on the claims generated.
Claims are generated from claim rules by applying certain conditions on them. A claim is an attribute that is used for identifying an entity, to establish access. For example, the Active Directory sAMAccountName.
Step 1: Adding a Relying Party Trust
From the Actions sidebar, select Add Relying Party Trust. The Add Relying Party Trust Wizard opens.
In the Select Data Source page, click on the Enter Data About the Party Manually option and click Next.
In the Specify Display Name page, enter a display name of your choice and also add additional notes if required. Click Next.
In the Choose Profile page, click on the ADFS FS profile button. Click Next.
On the Configure Certificate screen, the default settings have already been applied. Click Next.
On the Configure URL screen, check the box labelled Enable Support for the SAML 2.0 WebSSO protocol. The Relying party SAML 2.0 SSO service URL will be the ACS URL of your ADSSP server. Note that there is no trailing slash at the end of the URL. For example:
ACS URL/Recipient URL: Log into ADSelfService Plus web console with admin credentials. Navigate to Configuration tab → Multi-factor Authentication → SAML authentication → ACS URL/Recipient URL. Copy the ACS URL/Recipient URL.
In the next page, for the Relying party trust identifiers option, add https://selfservice.com
On the next page, you can choose to configure multi-factor authentication settings for the relying party trust. Click Next.
In the Choose Issuance Authorization Rules page, you can choose to either Permit all users to access this relying party or Deny all users to access this relying party. Click Next.
The next two pages will display an overview of the settings you have configured. In the Finish page, click Close to exit the wizard. If you have selected the Open the Edit Claim Rules dialog for this relying party trust when the wizard closes option, the Claim Rules editor will automatically open.
Step 2: Creating Claim Rules
Once you have configured the Relying Party Trust, you can create the claim rules using the Claim Rules Editor which opens by default when you finish creating the trust.
To create a new rule, click on Add Rule.
From the list of claim rule templates available, select Send LDAP Attributes as Claims. Click Next.
In the next page, provide a Claim rule name and select Active Directory as the attribute store.
From the LDAP Attribute column, select SAMAccountName.
From theOutgoing Claim Type column, select Name ID.
Click Finish to save the rule.
You can choose multiple LDAP attributes and map them to their corresponding outgoing claim types. For example, you can add LDAP attributes such as the Given Name, Surname, Phone Number, etc.
Once you click Finish, you can view the rule that has been created.
After completing the ADFS configuration, download the metadata file by clicking on the Identity Provider metadata link. For example:
You will need this file while configuring SAML authentication in ADSelfService Plus. So, save this file and keep it safe.
Step 3: Enabling SAML logout option
Navigate to the Relaying Party Trusts and find the rule you've created.
Right-click on the selected rule and click Properties.
In the window which opens, find the Endpoints tab and click Add SAML button.
In the Trusted URL, paste the SP Logout URL copied from step 1 of prerequisites.
In the Signature tab, upload the X.509-certificate in PEM format from the step 1 of prerequisites.
IdP-initiated SSO for ADSelfService Plus
These steps help you authenticate your ADSelfService Plus account through ADFS.
Enable RelayState in ADFS.
For Windows Server 2012:
Navigate to the
%systemroot%\ADFS\Microsoft.IdentityServer.Servicehost.exe.config file in your ADFS server.
In the <microsoft.identityServer.web> section, enter the following code: <useRelayStateForIdpInitiatedSignOn enabled="true" />
<useRelayStateForIdpInitiatedSignOn enabled="true" />
Restart the ADFS server.
For Windows Server 2016:
Open Powershell with administrative properties in your ADFS server.
Run the following command to enable IdP-initiated SSO:
Set-ADFSProperties -EnableIdPInitiatedSignonPage $true
Run the following code to enable RelayState:
Set-ADFSProperties -EnableRelayStateForIDPInitiatedSignon $true
Restart the ADFS server.
Steps to generate an IdP URL:
Log in to ADSelfService Plus web console with admin credentials.
Navigate to Admin tab → SSO Settings.
In the Service Provider Details section of SAML Authentication, copy the Relay State and the SP Issuer URL.
Open a word processor and enter the following command:
In the place of IdP URL String, enter https://<ADFSserver>/adfs/ls/idpinitiatedsignon.aspx, where ADFSserver is the server in which the ADFS is deployed.
Give it a name, and save it. Encode the saved URL.
Once the code is encoded, it will look like the URL below:
D. Steps to set up a SAML application in Line Works
Log in to Line Works Developer console. Go to the Apps section > SAML Apps click add to button.
In the window that opens, provide an appropriate Application Name, Description, and Logo in the respective fields.
In the ACS URL field and the Issuer URL/Entity ID, enter the ACS URL/Recipient URL of ADSelfService Plus.
In the popup window that opens, click OK.
Go to SAML Apps section and find the application you have just created. Click the Change button and change the status to 'Effectiveness'. Click Save.