This document describes how to set up multi-factor authentication (MFA) for VMware Horizon 7 with AuthPoint as an identity provider. VMware Horizon 7 must already be configured and deployed before you set up MFA with AuthPoint.
VMware Horizon 7 can be configured to support MFA in several modes. For this integration, we set up RADIUS with AuthPoint.
The hardware and software used in this guide include:
- VMware Horizon 7
- VMware View Connection Server 7.12.0
- VMware vCenter Servers 7.0.0
- VMware Horizon Agent 7.12.0
- VMware Horizon Client 5.4.3
- AD DS, AD CS and DNS on Windows Server 2016
- WatchGuard Cloud
- AuthPoint Gateway v126.96.36.199 or higher
VMware Horizon 7 Configuration for RADIUS Authentication
AuthPoint communicates with various cloud-based services and service providers with the RADIUS protocol. This diagram shows an overview of the configuration required for RADIUS authentication.
Before You Begin
Before you begin these procedures, make sure that:
- Horizon Connection Server is connected to vCenter Server
- vCenter Server manages a Virtual Machine that has Horizon Agent installed
- Horizon Connection Server has published one or more apps that exist on the Virtual Machine with Horizon Agent installed
- You can use Horizon Client to log in to Connection Server and invoke published app(s) with a user that exists in the Active Directory domain
- A token is assigned to a user in AuthPoint
- You have an AuthPoint identity provider (IdP) certificate (see Certificate Management)
Configure VMware Horizon 7
- Log in to the View Connection Server admin interface as an administrator. View Connection Server is also called VMware Horizon 7 Administrator.
- From the navigation menu, select Settings > Servers > Connection Servers.
- Select the existing connection server.
- Click Edit.
- Go to the Authentication page.
- In the Advanced Authentication section, from the 2-factor authentication drop-down list, select RADIUS.
- (Optional) Select the check boxes for the appropriate authentication options.
- Enforce 2-factor and Windows user name matching — Select this option to force RADIUS user names to match user names in Active Directory. If you select this option, users must use the same RADIUS user name for Active Directory authentication. If you do not select this option, the user names can be different.
- Use the same user name and password for RADIUS and Windows authentication — Select this option if the initial RADIUS authentication uses Windows authentication that triggers an out-of-band transmission of a token code that is used as part of a RADIUS challenge. If you select this check box, users are not prompted for Windows credentials after RADIUS authentication if the RADIUS authentication uses the Windows user name and password.
- From the Authenticator drop-down list, select Create New Authenticator.
- In the Authenticator Name text box, type a name for the authenticator. In our example, we name the authenticator AuthPoint.
- Click Next.
- In the Hostname/Address text box, type the IP address or host FQDN of the server where the AuthPoint Gateway is installed.
- In the Authentication Port text box, type 1812.
- In the Accounting Port text box, type 0.
- From the Authentication Type drop-down list, select PAP.
- In the Shared Secret text box, type a shared secret that VMware will use to communicate with the AuthPoint Gateway. You must specify this same shared secret when you configure a RADIUS client resource in AuthPoint.
- In the Server Timeout text box, type 60.
- In the Max Attempts text box, type 5.
- Leave the default settings for the other options.
- Click Next.
- Click Finish.
- Click OK.
Before AuthPoint can receive authentication requests from Horizon Connection Server, you must specify the Horizon Connection Server client as a RADIUS resource in AuthPoint. You must also assign the RADIUS client resource to the user group that will authenticate through Horizon Connection Server.
Add a RADIUS Client Resource in AuthPoint
From the AuthPoint management UI:
- From the navigation menu, select Resources.
- From the Choose a Resource Type drop-down list, select RADIUS Client. Click Add Resource.
- On the RADIUS page, in the Name text box, type a name for this resource. In our example, we name this resource Horizon Connection Server.
- In the RADIUS client trusted IP or FQDN text box, type the IP address that your RADIUS client uses to send RADIUS packets to the AuthPoint Gateway. This must be a private IP address.
- From the Value sent for RADIUS attribute 11 (Filter-Id) drop-down list, select User's AuthPoint group.
- In the Shared Secret text box, type the shared secret that you configured for Horizon Connection Server in the previous section. This is the password that the RADIUS server (AuthPoint Gateway) and the RADIUS client (Horizon Connection Server) use to communicate.
- Click Save.
Add an Access Policy to AuthPoint
You must have at least one user group in AuthPoint for authentication with VMware Horizon 7, and you must assign an access policy for the VMware Horizon 7 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, click the Name of your 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, select the Require Password Authentication toggle.
- Select the authentication options users in this group can choose from when they authenticate.
For RADIUS resources, you can only choose OTP or Push. RADIUS resources cannot use the QR code authentication option.
- Click Add.
The access policy for your resource is added to the list.
- Click Save.
Bind the RADIUS Resource to a Gateway
To use RADIUS authentication with AuthPoint, you must have the AuthPoint Gateway installed on your corporate network and you must assign your RADIUS resources to the Gateway in the AuthPoint management UI. The Gateway functions as a RADIUS server.
If you have not already configured and installed the AuthPoint Gateway, see About Gateways.
To assign your RADIUS resources to the Gateway:
- From the navigation menu, select Gateway.
- Select the Name of the Gateway.
- In the RADIUS section, in the Port text box, type the port number used to communicate with the Gateway. The default ports are 1812 and 1645.
- In the Select a RADIUS resource drop-down list, select your RADIUS client resource.
- 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 the integration of AuthPoint and the configuration of VMware Horizon 7, you can authenticate with a mobile token on your mobile device. For RADIUS resources, you can choose one-time password (OTP) or push.
In this example, we show the push authentication method (users receive a push notification in the mobile app that they must approve to authenticate).
- Open VMware Horizon Client.
- Connect to Connection Server external FQDN.
- Type your AuthPoint user name and password.
- Click Login.
- Approve the authentication request that is sent to your mobile device.
- Type your Active Directory domain user name and password.
- Click Login.
You are logged in to VMware Connection Server.
If you enable the Use the same user name and password for RADIUS and Windows authentication option in the Connection Server Settings when you configure VMware horizon 7 and users's AuthPoint and Active Directory user names and passwords match, users only need to type their user name and password once when they log in.