- Aviatrix SAML Authentication on Okta IdP
- Aviatrix SAML Authentication on OneLogin IdP
- Aviatrix SAML Authentication on Microsoft Entra ID IdP
- Aviatrix LDAP-Based Authentication
Pre-Deployment Checklist
Before configuring the SAML integration between Aviatrix and your IdP, make sure the following is completed:- Aviatrix CoPilot is deployed.
- You have an IdP account with admin access.
- You have downloaded and installed the Aviatrix VPN client.
IdP Account
An identity provider (IdP) is any provider that supports a SAML endpoint like Okta, OneLogin, or Azure AD. Administrator access is required to create IdP endpoints for SAML. See UserVPN Authentication for instructions for setting up your Aviatrix CoPilot to authenticate against an IdP.Aviatrix VPN Client
Download the client for your OS here.Configuration
The configuration consists of eight steps:- Create a temporary Aviatrix SAML Endpoint for Aviatrix.
- Create a SAML IdP App with a specific IdP.
- Retrieve IdP Metadata from IdP.
- Update Aviatrix SAML Endpoint with IdP metadata.
- Test SAML Integration.
- Launch Aviatrix Gateway.
- Create Aviatrix VPN user(s).
- Test VPN Connectivity.
Creating a Temporary Aviatrix SAML Endpoint
This step is usually completed by the Aviatrix admin. This endpoint will be updated later on in the guide; at this step, use placeholder values. Choose an endpoint name for your Aviatrix SAML endpoint which will be used throughout the guide. This guide will use
aviatrix_saml_controller as an example for the endpoint name.This SAML endpoint is selected when you create a VPN user from UserVPN > Users.- Go to Aviatrix CoPilot > CloudFabric > UserVPN > select the Settings tab.
- Under SAML, click + SAML Endpoint.
| Field | Value |
|---|---|
| Name | Enter a unique identifier for the service provider. |
| Identity Provider Metadata Type | URL or Text. This is copied from the SAML provider configuration. For now, put in a placeholder URL, such as “https://www.google.com”. If you select the Text option, you must enter the text and then any related xml code. |
| Entity ID | Select Hostname for now. |
| Sign Auth Requests | Sign the certificate when requesting to IdP from the client. Turn this setting on to have Auth Requests sent from the Aviatrix Controller to the IdP signed by the Aviatrix Controller. The same Aviatrix Controller webserver certificate will be used to sign the request. The certificate is exported as part of the SP metadata. Turn this setting off if you do not need this setup for security or compliance. |
| Custom SAML Request Template | or now leave blank. Depending on your specific IdP, you may have to check this option. If so, replace the sample template with your own template. |
- Click Save. Depending on your IdP provider, you may need to upload SP metadata.
-
After a temporary SAML endpoint is created:
a. Right-click on the vertical ellipsis icon
next to the SAML endpoint and click Download SP Metadata. Save the file to your local machine.
b. Click SP Metadata and copy the SP metadata as text.
Creating a SAML App for Aviatrix with the IdP
This step is usually done by the IdP administrator. This section shows only a generalized process for creating a SAML application. See UserVPN Authentication for links to detailed steps with each particular IdP.
- Assertion Consumer Service URL — This value is available in Aviatrix CoPilot > CloudFabric > UserVPN > select the Settings tab. Find the SAML endpoint and click the vertical ellipsis icon
on the right. - Audience URI (Entity ID) - For custom Entity IDs, see Aviatrix CoPilot > CloudFabric > UserVPN > select the Settings tab. Find the SAML endpoint and click the Edit icon. The custom Entity ID is in the Custom Entity ID field.
- SP Metadata URL - Aviatrix CoPilot > CloudFabric > UserVPN > select the Settings tab.
- SP Login URL — This value is provided by your IdP.
- Default RelayState - Leave this value blank. RelayState is currently not used by the Aviatrix SP.
- Application username — This is your IdP username.
- FirstName
- LastName
- Email (unique identifier for SAML)
These values are case-sensitive.
IdP-specific SAML App Integration
You will require administrator access to create IdP endpoints for SAML. See UserVPN Authentication for instructions for each IdP.Retrieving IdP Metadata
After creating the IdP, you need to retrieve IdP Metadata either in URL or text from the IdP application created in the previous step.- Azure AD - provides IdP metadata URL and needs a custom SAML request template.
- Okta - provides IdP metadata text.
- OneLogin - provides IdP metadata URL.
Updating the Aviatrix SAML Endpoint
This step is usually completed by the Aviatrix admin. Take note of the IdP Metadata type along with Text/URL your IdP provides, and if you need a custom SAML request template in the previous section.
- Go to Aviatrix CoPilot > CloudFabric > UserVPN > select the Settings tab.
- Under SAML, click the Edit icon
next to the SAML endpoint you created earlier. - Paste the IdP Metadata URL from the SAML provider into the Identity Provider Metadata URL field.
- Click Save.
Testing the Integration
Have an instance of the VPN client running. If you do not, it might throw a warning.
- Log into Aviatrix CoPilot > Cloud Fabric > UserVPN > select the Settings tab.
- Under SAML, find the SAML endpoint. In the Test column, select the link provided.
- You should be redirected to the IdP. Now, you can log in and should be redirected back to CoPilot.
Launching Aviatrix Gateway
Launch a VPN gateway [link]. See UserVPN Gateway Guide.Creating VPN User(s)
Create UserVPN users.Testing VPN Connectivity
- Download and install the Aviatrix VPN client for your platform from here.
- Launch the Aviatrix client and load the certificate (“Load config”)that you downloaded/received from email on the Testing the Integration” section above.
- Click Connect. This should launch the browser instance and prompt you for authentication, if not already logged in.
- If the connection is successful, the client icon should turn green.
- You can ensure VPN connectivity by trying to ping the private IP of the gateway you launched or any other instance in the same cloud network.