Citrix ADC (formerly Citrix Netscaler) is an application delivery and load balancing solution (see https://www.citrix.com/products/citrix-adc/). This integration provides instructions to integrate Citrix ADC with Identity as a Service. Once integrated, users can use single sign-on to log in to their Citrix ADC account using Identity as a Service
Note: This guide was tested using previous versions of Identity as a Service and Citrix ADC. Other versions of Citrix ADC may require integration and configuration steps that differ from those documented in this procedure. For newer versions of Citrix ADC, this integration guide may be used as an initial approach for integrating Citrix ADC. In the event of other issues, contact support@entrust.com for assistance.
Add Citrix ADC to Identity as a Service
1. Log into your Identity as a Service administrator account.
2. Click
> Security > Applications. The Applications
Lists page appears.
3. Click Add. The Select an Application Template page appears.
4. Under SAML Cloud Integrations, click Generic SAML application. The Add Citrix page appears.
5. In the Application Name field enter Citrix ADC.
6. Enter an Application Description.
7. Optional. Add a custom application logo.
a. Click next to Application Logo. The
Upload Logo dialog box appears.
b. Click to
select an image file to upload.
c. Browse to select your file and click Open. The Upload Logo dialog box reappears showing your selected image.
d. If required, resize your image.
e. Click OK.
8. Select the Authentication Flow that appears to users during login.
9. Click Next. The General page appears.
10. If available, use the Upload Metadata XML file option to auto-populate the following fields, if available in the file:
● Default Assertion Consumer Service URL
● Alternative Assertion Consumer URLs
● Service Provider Entity ID (Issuer)
● Single Logout Service URL
● SAML Signing Certificate
● SAML NameID Encoding Format
● SAML Signature Algorithm
11. To import the Metadata file:
a. Click and browse
to select the file. The Metadata
Configuration dialog box appears.
b. If required, click Merge with existing values to merge new values with existing values for Alternative Assertion Consumer Services URLs and SAML attribute names.
c. Click Save.
12. Enter the SAML Session Timeout to the time when the SAML Assertion times out. The maximum is 720 minutes.
13. Enter the Max Authentication Age (seconds) to set the maximum amount of time that can elapse before a user is required to reauthenticate during a new login attempt. This applies for both SP-initiated and IDP-initiated login. Set this field to -1 to disable this feature.
14. If you do not have a metadata file, use the information provided in the next steps to populate the fields.
a. Enter the Default Assertion Consumer Service URL for the application.
Example: https://<server.domain.com>/cgi/samlauth
b. Enter the Service Provider Entity ID (Issuer) that is used by Identity as a Service to identify your application.
Example: <server.domain.com>
15. Optional. Enter the SAML Username Parameter Name used to identity the user ID being requested for authentication. The user ID can then be passed as a parameter, for example, Username=jdoe.
16. From the SAML Name ID Attribute drop-down list, select the User ID.
17. Select the SAML Signing Certificate from the drop-down list.
18. From the SAML NameID Encoding Format from the drop-down list, select UNSPECIFIED.
19. From the SAML Response Signature Algorithm drop-down list, select SHA256.
Note: Citrix ADC cannot accept signed responses using a SHA512 signature algorithm.
20. Optional: Select Sign complete SAML response to ensure the message integrity of the SAML response sent to the application during authentication.
21. Optional: Select Respond Immediately for Unsuccessful Responses to return to the application immediately after a login failure, rather than allow user to try again with a different userID.
22. Deselect Enable Go Back Button if you do not want users to be able to go back to the Citrix ADP login page to log in.
23. Select Show Default Assertion Consumer URL Service in the My Profile. When selected, the Default Assertion Consumer URL appears in a user's My Profile page in addition to relay states and Alternative Assertion Consumer URLs.
24. Optional: Select Encrypt SAML Assertion. When selected the SAML Assertion is also encrypted. If you select this option, do the following:
a. From the Encryption Method for Key drop-down list, select either RSA Version 1.5 or RSA-OAEP. RSA Version 1.5 is the default.
b. From the Encryption Method for Data drop-down list, select the encryption method used to encrypt data. The options are:
– AES-256 (default)
– AES-128
– AES-192
– Triple DES
25. In the Encryption Certificate field, upload the encryption certificate file.
Note: The Subject Domain Name and Certificate Expiry Date values are populated with values from the certificate once the Encryption Certificate is uploaded.
26. Optional. Add Alternative Assertion Consumer Service URLs, as follows:
a. Click Add.
b. Enter a Name.
c. Enter a URL Value.
d. Select Show in My Profile to display the Alternative Consumer Service URL in a user's My profile page.
e. Optional. Add an Application Logo.
f. Click Add.
g. Repeat these steps to add more Alternative Assertion Consumer Service URLs.
27. Optional. Add a Relay State as follows:
a. Under Relay State, click Add. The Add Relay State dialog box appears.
b. Enter a Name for the relay state.
c. Enter the Value for the relay state. This setting specifies the application or URL that is a user is redirected to after successful authentication.
d. Select Show in My Profile to display the relay state on the user's My Profile page.
Note: After
you add relay states, you can also enable or disable them on the Add/Edit
application page. Click
next to the relay state to disable it or click
to re-enable it.
Relay states apply to the Default Assertion Consumer Service URLs and
not the Alternative Assertion Consumers URLs.
e. Optional.
Add a Relay State custom logo.
Click next
to Relay State Logo. The Upload
Logo dialog box appears.
Click
to select an image file to upload.
Browse to select your file and click Open. The Upload Logo dialog box reappears showing your selected image.
If required, resize your image.
Click OK.
f. Click Add.
g. Repeat these steps to add more Relay States.
28. Click Submit.
Create a resource rule to protect access to a SAML application
1. Log in to your Identity as a Service administrator account.
2. Click
> Security
> Resource Rules. The Resource Rules List
page appears.
3. Click + next to the application you want to protect with a resource rule. The Add Resource Rules page appears.
4. Enter a Rule Name and Rule Description for the resource rule.
5. In the Groups list, select the group or groups of users restricted by the resource rule.
These are the groups to which the resource rule applies. If you do not select any groups, by default the resource rule applies to all groups.
6. Click Next. The Authentication Conditions Settings page appears.
7. Optional: Select Disable Single Sign-On for Application to force a user to re-authenticate whenever they attempt a new login.
8. If you do not Enable Advanced Risk Factors, do the following:
a. Select the Authentication Flow from the drop-down list. The Authentication Flow flowchart updates based on the selection.
b. Click Submit to save the Resource Rule.
9. If you want to Enable Advanced Risk Factors, complete the remaining steps in this procedure.
10. Select Enable Advanced Risk Factors to add additional risk factors to the resource rule.
11. Select Enable Strict Access for Application to set the resource rule to deny access regardless of the outcome from other resource rules. If this option is disabled for any resource rule that denies access, the user is allowed access if at least one resource rule allows access.
12. For each Advanced Risk Factor, click the Deny option to deny access to the application if the risk factor fails regardless of the results of the other risk factors.
13. Click Date/Time to set the conditions as follows:
a. Select one of the following:
– Allow Date/Time to set when a user can access the application.
– Deny Date/Time to set when the user cannot access the application.
The Date/Time Context Condition Settings appear.
b. Select the Condition Type:
– Specific Date Range Condition—Allows or denies access to the application during a select period of days.
– Time-of-day and/or Day of Week Recurring Conditions—Allows or denies access to the application on a specific time of day, day of the week, or both. Recurring times selected only apply to days not denied.
– Clear Selection—Clears existing Date and Time conditions.
c. Set the Condition Type settings, as follows:
i) Select Use local time zone to use the local time zone or deselect Use local time zone to use the local time zone and begin typing the time zone in the Begin Typing Timezone name field and select the time zone from the drop-down list.
ii) If you selected Specific Date Range Condition, click Start Date to select a start date from the pop-up calendar. Optionally, select the End Date.
iii) If you selected Time-of-Day and/or Day-of-Week, click Start Time and select the start time from the pop-up clock. Optionally set the End Time. You must also select the days of the week for the condition.
d. Click Save to return to the Authentication Conditions Settings page.
14. Click Geolocation to set the Location Condition Settings, as follows:
a. Select Allow or Deny to create an allowed or denied country list.
b. From the Selected Countries drop-down list, select the countries to add or deny access to the application. Repeat until you have added all the desired countries to the list.
c. Select Allow Anonymous IP Address to increase the risk of users authenticating from an anonymous IP.
d. Click Save to save to return to the Authentication Conditions Settings page.
15. Click Source IP Address. The IP Address Risk Setting dialog box appears. Do one of the following:
a. Select Custom and add the required IP Allowed Addresses and IP Denied Addresses.
b. Select IP List Address and select the IP List to allow or deny.
c. Select None to not restrict any IP addresses.
d. Click OK to return to the Authentication Conditions Settings.
16. Click Machine Authentication to set the Machine Authentication Condition Settings, as follows:
a. Set the Machine Authentication Risk is less than or equal to the value that the machine authenticator's total risk score must be less than during authentication to pass this condition.
The risk score is based on the attribute differences
between a user's Machine Authentication information and that recorded
on Identity as a Service before the condition fails. If an attribute does
not match, the attribute incurs the number of risk points shown in Non-Matching Risk Points for that attribute. The
Non-Matching Risk Points values of each non-matching
attribute are added together, resulting in a total risk score. This score
is normalized to be out of 100 as follows:
Total Risk Score = (Total Risk Points
of Failing Attributes / Maximum Risk Points of All Enabled Attributes)
* 100
The resource rule condition fails when the number of non-matching risk
points exceeds the Machine Authentication Risk value defined in this step.
A value of 0 means that a single attribute
difference causes the Device Fingerprint
condition to fail. The default value is 3.
The value between 0-50 can be entered.
The default value is defined by the Machine Risk Limit.
See Modify machine authenticator settings.
b. Click Save.
17. Define the Location History / Known Locations and Travel Velocity conditions. The Risk-Based Authentication (RBA) settings of your Identity as a Service account define the location history and travel velocity conditions. See Manage risk-based authentication settings for more information.
18. Set the Device Certificates risk factor to require the client to perform client-authenticated SSL with a certificate issued from a trusted CA to pass.
19. Set the risk score for application conditions to set the risk percentage a user receives if they fail to meet the condition, as follows:
● Click the dot next to the condition setting and slide the risk scale to the risk percentage
-or-
● Click the 0% and enter the risk points and then click OK.
The default setting is 0%. The Risk percentage determines the authentication requirements as set by the Authentication Decision. When a user attempts to authenticate to an application, the final risk percentage is the sum of all failed conditions.
20. Set the Authentication Decision risk level for Medium Risk and High Risk as follows:
a. Click the risk threshold percentage to the right of Medium Risk or High Risk. The Risk Threshold dialog box appears.
b. Enter the risk percentage.
c. Click OK.
21. Select the Authentication Flows for Low Risk, Medium Risk, and High Risk from the drop-down lists. The Authentication Flows flowchart updates based on your selections.
22. Click Submit to create the resource rule.
Download the Metadata file from Identity as a Service
1. In Identity as a Service, click
> Security > Applications.
The Applications List page appears.
2. Do one of the following:
● Click
next to the application you are integrating
with Identity as a Service.
–or–
● Click
next to the application you are integrating
with Identity as a Service and select SAML IDP Metadata.
The SAML Application Metadata dialog box appears.
3. Select the certificate to include in the SAML IDP Metadata file from the drop-down list.
4. If applicable, Select the domain to include in the SAML IDP Metadata file from the drop-down list.
5. Enter the Lifetime, in days, for the SAML IDP Metadata file. The value must be between 2 and 730.
6. Do one of the following, as required:
a. Copy the Public Endpoint to paste into your SAML application being used Identity Provider authentication.
b. Click Download.
Note: If you are using multiple domains, you must download each domain's metadata file separately because the values in the metadata file vary for each domain.
Export a SAML signing certificate
1. Log in to your Identity as a Service administrator account.
1. Click
> Security > Applications.
The Applications List page appears.
2. Under SAML Cloud Integrations, click SAML Signing Certificates. The SAML Signing Certificates page appears.
3. Click
next to the certificate to export the certificate
you want to import into your SAML service provider application. The Export Certificate dialog box appears.
a. If the certificate has been issued by a CA, do one of the following:
– Click Certificate to export the self-signed certificate.
– Click Root CA Certificate to export a certificate issued from a CA.
– Click Certificate Chain to export the SAML signing certificate and its CA certificates.
b. Click Export.
1. In the Citrix ADC Configuration menu, expand Traffic Management > SSL > Certificates > CA Certificates.
Note: Even though the SAML IDP signing certificate is not a CA certificate, for NetScaler version 11.1+, you must import it under CA Certificates.
2. On the CA Certificates page, click Install.
3. On the Install Certificates section, under Certificate-Key Pair Name, enter a descriptive name for the SAML IDP signing certificate, for example <domain>.us.trustedauth.com.
4. Under Certificate File Name click Browse and select the certificate file you downloaded in Step 4: Download the SAML signing certificate.
5. Leave the Key File Name field empty.
6. Click Install.
1. In the Citrix ADC Configuration menu, expand NetScaler Gateways > Policies > Authentication> SAML. The SAML server page appears.
2. On the SAML page, click the Servers tab.
3. On the Servers tab, click Add.
4. On the Create Authentication SAML Server page, enter the following information:
Field |
Description |
Value Example |
Name |
Descriptive name for the IDP |
Identity as a Service |
IDP Certificate Name |
The SAML signing certificate from the Identity as a Service IDP. |
The SAML signing certificate you downloaded in Step 4: Download the signing certificate. |
Redirect URL |
The location of the SAML servlet in Identity as a Service, extracted from the IDP metadata file. |
https://<domain>.us.trustedauth.com/api/saml/SAML2/SSO |
Single Logout URL |
The single logout URL. |
https://<domainFQDN>/cgi/saml/tmlogout |
User Field |
The user identifier from the IDP metadata file. It should be Name ID in most cases. |
Name ID |
Signing Certificate Name |
The SP SAML signing certificate. |
This should already exist in Identity as a Service. |
Issuer Name |
The entityID of the SAML SP. |
This value should match the Service Provider ID (Issuer) you entered in Step 1: Add Citrix NetScaler to Identity as a Service. |
Reject Unsigned Assertion |
ON = Reject the Identity as a Service Assertion if it is not signed. OFF = Accept the Identity as a Service assertion if is not signed. |
ON |
SAML Binding |
The binding method for SAML assertion. This must be POST. |
POST |
5. Click Create.
1. In Citrix ADC Configuration menu, expand NetScaler Gateways> Policies> Authentication> SAML. The SAML server page appears.
2. On the SAML page, click the Policies tab.
3. On the Policies tab, click Add.
4. On the Create Authentication SAML Policy page, under Name enter a descriptive name for the SAML Policy, for example Identity as a Service Policy.
5. From the Server drop-down list, select the SAML Authentication Server that you created in Step 6: Add a SAML authentication server to Citrix NetScaler.
6. Under Expression, click the empty text box under the Operators button and enter ns_true.
Note: A setting of ns_true means that the policy is always active when assigned to a VIP. This is an example of a very basic policy settings. The policy may be further fine-tuned in accordance with the Ctirix product documentation and the Ctirix Customer Support team if required.
7. Click Create.
8. In the Citrix NetScaler Configuration menu, expand NetScaler Gateways > Virtual Servers. The NetScaler Gateway Virtual Servers page appears.
9. Under the Name column, click the name of the virtual server that requires the Identity as a Service Policy to be added.
10. On the VPN Virtual Server page, under Basic Authentication, click the + icon.
11. On the Choose Type pane, under Choose Policy select SAML.
12. Under Choose Type, select Primary.
13. Click Continue.
14. In the Policy Binding section under Select Policy, click the > button to access the SAML Policies page.
15. On the SAML Policies page, click the radio button to select the policy you created in Step 6: Add a SAML authentication server to Citrix NetScaler, for example Identity as a Service Policy, and then click Select.
16. Under Binding Details, enter 100 for the Priority.
17. Click Bind.
Note: If additional Primary Authentication policies exist, they may need to be unbound if it is to be enforced that only the SAML IDP should be used for authentication.