In highly secure environments where usage of LDAP credentials outside of an organization in public or insecure networks is considered a prime security threat for the organization, two-factor authentication using a client certificate and a security token is an option.
You can configure NetScaler so that Secure Hub authenticates with a certificate plus a security token that serves as a one-time password. This configuration provides a strong security option that doesn't leave an Active Directory footprint on devices. End users can access all of their MDX and HDX apps from Secure Hub, without ever entering their LDAP password on their mobile devices.
This configuration depends on the RADIUS server returning the user’s LDAP password to NetScaler Gateway. Once NetScaler receives the returned password, it uses the password to connect to any back-end service on demand. If the user session times out, the user must re-authenticate using their token passcode.
This article guides you in configuring two-factor certificate and security token authentication.
Component Name | Minimum Version |
XenMobile Server | 10 |
NetScaler | 10 |
Certificate Authority | Windows 2008 R2 |
Imprivata OneSign | 4.0 SP3 |
Storefront | 2 |
Note: The following configuration is applicable if you use Imprivata OneSign. For other RADIUS servers, check with the respective vendor for configuration.
Imprivata includes a built-in Remote Authentication Dial-In User Service (RADIUS) server to provide centralized authentication for dial-up and VPN network access. The internal RADIUS server lets OneSign act as a single administration point for user remote authentication.
OneSign Authentication Management contains a built-in RADIUS host for handling remote access authentication using VASCO Digipass tokens, SecurID or Secure Computing tokens, or domain passwords.
In the Imprivata Admin, verify the User Policy settings to make sure that Remote Access Authentication has Vasco Digipass or ID Token selected. Password is optional, but if not selected, it will allow you to enforce the use of token authentication for remote access.
Note: After you enable the policy, you can test it by logging in remotely with a password. You should get a login failure because the policy requires token authentication.
This example uses a load balancing virtual IP to load balance RADIUS Server, thus NetScaler SNIP is used to add NetScaler as RADIUS Client.
Log on to the NetScaler appliance and go to NetScaler > NetScaler Gateway > Policies > Authentication > RADIUS.
Create the RADIUS server.
Click More and fill in following information from your RADIUS configuration:
Password Attribute Type. For Imprivata RADIUS, use 5.
Create a RADIUS policy and bind the RADIUS server just created to it.
In NetScaler, navigate to Configuration > AppExpert > Rewrite > Actions.
Click Add.
The Create Rewrite Action screen appears.
Fill in each field as shown in the following figure and then click Create.
The following result appears on the main Rewrite Actions screen.
You then need to bind the rewrite action to the virtual server as a rewrite policy. Go to Configuration > NetScaler Gateway > Virtual Servers and then select your virtual server.
Click Edit.
On the Virtual Servers configuration screen, scroll down to Policies and then click + to add a new policy.
In the Choose Policy field, enter Rewrite.
In the Choose Type field, enter Response.
Click Continue.
The Policy Binding section expands.
Click Select Policy.
A screen with available policies appears.
Click the row of the policy you just created and then click Select. The Policy Binding screen appears again, with your selected policy filled in.
Click Bind.
If the bind is successful, the main configuration screen appears with the completed rewrite policy shown.
To view the policy details, click Rewrite Policy.
Go to NetScaler Gateway, and edit the XenMobile Gateway (_XM_XenMobileGateway) Virtual Server.
Bind the RADIUS Authentication Policy to the vServer. The vServer should have RADIUS & CERT Policies added as Primary Authentication
Select Client Authentication and, for Client Certificate, choose Mandatory.
Click + to add a new policy.
From Choose Policy, select Rewrite.
From Choose Type, select Response. Click Continue.
Select the Rewrite Policy. The Policy Binding section expands.
Click Select Policy.
Click the row of the policy you just created and then click Select. The Policy Binding screen appears again, with your selected policy filled in. Click Bind.
If the bind is successful, the main configuration screen appears with the completed rewrite policy shown.
Configure the SSL Parameters as shown in the following screen shot.
Add all STA servers, Session Policies & Clientless Access Policies which are part of _XM_XenMobileGateway vServer.
In General Settings, add the NetScaler Gateway URL. This will be the public FQDN of your NetScaler Gateway, with a custom port used to configure _XM_StoreFrontGateway.
You will use the same FQDN as a callback URL under Authentication Settings.
Set the Logon type to Domain.
Log on to XenMobile Server console and go to Settings > Enrollment. Select User name + PIN as default Enrollment Mode.
Go to Settings > NetScaler Gateway. For Logon Type, choose Certificate and security token and then click Save.
In Settings > NetScaler Gateway, make sure that Authentication is ON, Deliver user certificate for authentication is ON, and the correct Credential provider is shown.
Before users can enroll, you must create a one-time PIN for the users. You can create a one-time PIN per user or groups of users using AD groups.
Log on to the XenMobile Server console and go to Manage > Enrollment.
Click Add and then click Add Invitation.
Complete the Enrollment Invitation settings.
Enter Username and then click Save.
The one-time PIN that's created is valid only for enrollment and once used, it cannot be used again.
For more information about certificate-based authentication, see Certificates in the XenMobile documentation.