| [ Web Proxy ] |
| Viewing: https://developers.cloudflare.com/cloudflare-one/integrations/identity-providers/citrixadc-saml/ | [Back] [Original] |
Cloudflare One can integrate with Citrix ADC (formerly Citrix NetScaler ADC) as a SAML IdP. Documentation from Citrix shows you how to configure Citrix ADC as a SAML IdP . These steps are specific to Cloudflare One.
To set up Citrix ADC (SAML) as your identity provider:
First, you'll need to configure 2 SAML certificates:
If you do not already have a certificate for signing SAML assertions, you can use a self-signed certificate generated on Citrix ADC by following these steps:
Select Configuration and enter a Certificate File Name, Fully Qualified Domain Name, and a select a Country.
[Citrix AD Create and Install Test Certificate interface with file name, domain name, and country]Create a publicly accessible authentication vServer and configure the user identity source (like, local users, LDAP) by following this Citrix documentation .
For the rest of this example, the user refers to the IdP address idp.yourdomain.com.
Go to Security > AAA - Application Traffic > Policies > Authentication > Advanced Policies > SAML IDP to add a new profile.
Include the following required configuration details:
| Field | Description |
|---|---|
| Name | The certificate name you defined while configuring SAML |
| Assertion Consumer Service URL | https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback |
| IdP Certificate Name | The IdP certificate name you defined while configuring SAML |
| Issuer Name | https://idp.<yourdomain>.com/saml/login |
| Service Provider ID | https://idp.<yourdomain>.com/saml/login |
| Name ID Format | EmailAddress |
| Attribute 1 | email = AAA.USER.ATTRIBUTE("email") |
Cloudflare Access currently sends the IdP address in place of the Service Provider ID for the AuthN request.
Create an Authentication Policy that refers to the Profile just created, and bind it to the authentication vServer mentioned above.
[Citrix AD Configure Authentication SAML IDP Policy]
To configure all of the above using just the CLI, run the following:
add authentication samlIdPProfile samlProf_CloudflareAccess \
-samlIdPCertName SAML_Signing \
-assertionConsumerServiceURL "https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback" \
-samlIssuerName "https://idp.yourdomain.com/saml/login" \
-rejectUnsignedRequests OFF \
-NameIDFormat emailAddress \
-Attribute1 email \
-Attribute1Expr "AAA.USER.ATTRIBUTE(\"email\")" \
-Attribute1Format Basic \
-serviceProviderID "https://idp.yourdomain.com/saml/login"
add authentication samlIdPPolicy samlPol_CloudflareAccess -rule true -action samlProf_CloudflareAccess
bind authentication vserver nsidp -policy samlPol_CloudflareAccess
In the Cloudflare dashboard , go to Zero Trust > Integrations > Identity providers.
Under Your identity providers, select Add new identity provider.
Configure the fields as follows:
| Field | Description |
|---|---|
| Name | Your chosen name |
| Single Sign On URL | The FQDN of the IdP, with the path /saml/login |
| IdP Entity ID/Issuer URL | As above |
| Signing Certificate | The public certificate from the NetScaler |
| Email attribute name | This is listed under Optional configurations |
Select Save.
To test that your connection is working, go to Integrations > Identity providers and select Test next to the identity provider you want to test.
| Web Proxy Viewer | New URL | Original Page |