Software token (OATH)
Last updated
Last updated
The Enrollment application is used to enroll/activate a software token. Since Enrollment act as a SAML Service Provider (SP) you will decide on the SAML IdP how users should authenticate themselves. In this use case we will use Fortified ID Integrity WEB as the SAML IdP (Identity Provider). The IdP selector will provide three authenticators in this use case:
UID and Password (Enroll) This login method/authenticator is used to login using an LDAP account to enroll for an OATH token. For username we use mail attribute on an Active Directory user. Note. Username/Password is not a secure authentication, focus here is to make it simple to get the use case to work. It is recommended to protect the Enrollment application with a strong authentication method. Feel free to add for example OTP to the use case.
UID and OATH (Test OATH token) This authenticator is used to test your enrolled OATH token with the LDAP account. For username we use mail attribute on an Active Directory user.
UID/PWD and OATH (Test token) This authenticator is used to test your enrolled OATH token with the LDAP account. For username we use mail attribute on an Active Directory user.
We will use Microsoft Active Directory as user store.
Server platform. Docker, Windows or Linux. In this use case we have used a Windows server with an Active Directory.
FortifiedID Integrity Web current version
Fortified Enrollment current version
Microsoft SQL Server
Microsoft SQL Server Express
Microsoft SQL Server Management Studio (SSMS)
Create manually a database called Enrollment. If Enrollment database exist the Enrollment service will create all the tables when service start.
For this use case we use the sa account. Make sure the sa account has administrative rights to the database.
LDAP directory. Location are the users to authenticate. The example code is configured to use an Active Directory. We are using mail attribute of the Active Directory user.
Bobby Clarke
Bobby Clarke (displayName)
bobbyc (sAMAccountName)
bobby.clarke@fortifiedid.se (mail)
Set a password
OATH token app. Use Microsoft or Google Authenticator as example app.
Remember that this use case does not describe installation of the products. Products are expected to be installed in advanced.
Download ZIP containing configuration for Web and Enrollment
Click USE_CASE_LINK to download customer folders for Web and Enrollment.
Add Integrity WEB configuration to your environment.
Add the customer_WEB folder to you \..\fortifiedid\web\ folder. Rename the existing customer folder to customer_ORG and rename the added one to \customer.
Add Enrollment configuration to your environment.
Add the customer_ENROLL folder to you \..\fortifiedid\enrollment\ folder. Rename the existing customer folder to customer_ORG and rename the added one to \customer.
The downloaded folders contains all information needed. For example, a test certificate and metadata files are included and configured to work with the example applications. However, some data needs to be changed to map your environment. You need to update the LDAP information to match your environment. Since this example was done on a Windows server you might need to update file paths if you run something else. Also the http ports might need to be changed if they are not available in your environment.
To make it easy both application folders have a file called globals.json that contains the information you need to change. Config.json uses the variables in globals.json.
Open globals.json for \..\fortifiedid\enrollment\customer\config and \..\fortifiedid\web\customer\config folder and update:
LDAP data to match your environment
SQL data to match your environment
File paths
HTTP if needed
When updated, start Integrity WEB and Portal in order described below.
Start SQL server. Wait until SQL server is started before moving on to start enrollment service. Verify that you have created a database called enrollment.
Start Integrity WEB service. Wait until service is started before moving on. Verify server.log file that service running without errors.
Start Enrollment service. If this is the first time you start the database the tables will be created in the enrollment database. Verify that you after startup is finished have a number of tables called dbo.*. Verify server.log file that service running without errors. When the service is starting, it will connect to the database and either update the tables if needed or create the tables if the do not exist. Note that you must manually have created the database.
There are three authenticators in this use case. See screenshot and explanation below for the three authenticators.
This will use bobby.clarke@fortifiedid.se to log in against Active Directory to create an OATH token on a token device for Bobby.
Open a browser
Browse to https://localhost:8448/enrollment/oathsw/app You should now be redirected to https://localhost:8443/saml/authn/auth01
On Integrity WEB SAML IdP, click Enroll for a software token
In UserID, type bobby.clarke@fortifiedid.se and whatever password you used then click Sign in.
Click Start
On your mobile device
Open your OATH app. For example Microsoft or Google Authenticator.
Add a name for your token and a one-time password, click Activate
Click Close to finish the enrollment process
You have now successfully enrolled for an OATH token for Bobby Clarke
This step is to test that the OATH token works when authenticating. Use bobby.clarke@fortifiedid.se to log in against Active Directory and your OATH token.
Open a browser
Browse to https://localhost:8448/enrollment/oathsw/app You should now be redirected to https://localhost:8443/saml/authn/auth01
On Integrity WEB SAML IdP, click Test your token (UID/Token)
In Username, type bobby.clarke@fortifiedid.se
On your token device, open the OATH token app.
Generate an OATH token
Add it to the OATH token field and click Sign in.
You should now be logged in to the Enrollment app again. This means it works.
This step is to test that the OATH token works when authenticating. Use bobby.clarke@fortifiedid.se to log in against Active Directory and your OATH token.
Open a browser
Browse to https://localhost:8448/enrollment/oathsw/app You should now be redirected to https://localhost:8443/saml/authn/auth01
On Integrity WEB SAML IdP, click Test your token (UID/PWD + Token)
On the verify Username and Password page
In Username, type bobby.clarke@fortifiedid.se
In Password, type password for Bobby
Click Sign in
On the Verify OATH token page
On your token device, open the OATH token app.
Generate an OATH token
Add it to the OATH token field and click Sign in.
You should now be logged in to the Enrollment app again. This means it works.
The enrollment page consist of an image and for OATH SW a link to authenticator to download. By default Google Authenticator. Add configuration below for different behaviour to the overlay file ui_config_overrides.json. Below will link to Microsoft Authenticator and not show and images.
The config.json of Web can be found in the associated zip-file in this use case.
For Bobby the result should look like:
You should see the following page:
In the app, scan the QR code. Finish adding the token.