SAML Authentifizierung mit Azure-AD als IdP und Citrix als SP

Seit Citrix XenApp / XenDesktop 7.9 ist der Federated Authentication Service (FAS) verfügbar. Über Citrix FAS ist es möglich einen Benutzer über SAML zu authentifizieren und somit Citrix als Service Provider, an bestehende Identity Provider, wie zum Beispiel Azure-AD, anzubinden.

Ablauf der SAML Authentifizierung

  1. Der Benutzer ruft die FQDN (z.B. citrix.deyda.net) des Citrix Gateway vServer (Service Provider) auf, um seine VA/VD Ressourcen starten zu können
  2. Der Citrix Gateway vServer leitet den nicht authentifizierten Benutzer direkt weiter an den Identity Provider (Azure AD) um sich dort zu authentifizieren (saml:authnRequest)
  3. Der Identity Provider verweist auf seine SingleSignOnService URL (z.B. login.microsoftonline.com) und der User muss sich authentifizieren.
  4. Der Benutzer gibt seine AD Zugangsdaten ein und diese werden vom Identity Provider gegenüber der User Database geprüft
  5. Bei erfolgreicher Überprüfung in der User Database wird der IdP informiert
  6. Der IdP stellt einen Token (SAML Assertion) aus und übermittelt diesen an das Citrix Gateway (saml:response)
  7. Citrix Gateway prüft den Token (Assertion Signature) und extrahiert den UPN aus dem Assertion Token. Dies erlaubt den Zugriff per SSO auf die VA/VD Farm über FAS (Der SP hat keinen Zugriff auf die Zugangsdaten des Benutzers)
SAML Auth Azure AD & Citrix Gateway with FAS

Einrichtung SAML Authentifizierung

Ich gehe in meiner Anleitung von einer SAML Authentifizierung zwischen Azure AD und dem Citrix ADC (ehemals NetScaler) Version > 12 aus. Die SAML Authentifizierung würde natürlich auch mit einer ADFS Umgebung funktionieren.

Voraussetzungen

Ich setze die folgenden Dinge voraus und gehe nicht im Detail auf diese ein:

  • Voll funktionsfähige Citrix Virtual Apps and Desktop Umgebung (Minimum Version 7.9)
  • Citrix ADC mit erfolgreicher Basis Konfiguration und eingespielter Enterprise oder Platinum Lizenz
  • Interne und externe DNS Einträge für Unified Gateway-vServer (z.B. citrix.deyda.net)
  • Zertifikate für die DNS Einträge (Wildcard Zertifikate sind am einfachsten)
  • Konfigurierter Unified Gateway-vServer
  • Vorhandener Azure Tenant mit Azure AD Basis Konfiguration (Domäne, AAD Sync) & aktivierter Azure AD Premium Lizenz

Active Directory

Wenn man nicht den gleichen UPN in Azure-AD und in der lokalen Active Directory verwendet, muss man diesen noch anpassen.

Hierfür öffnet man das Tool Active Directory Domänen und Vertrauensstellungen.

Active Directory Domains and Trusts

Klickt im Fenster auf den obersten Punkt (Active Directory Domänen und Vertrauensstellungen) mit der rechten Maustaste und wählt dort Eigenschaften aus.

Active Directory Domains and Trusts Properties

Im folgenden Fenster trägt man unter Alternative UPN Suffixe die gewünschte Domäne (z.B. deyda.net) ein und Bestätigt die Eingabe über Add.

Add Alternative UPN Suffixes

Prüft das der Domänen Name richtig eingefügt wurde und Bestätigt dies per OK.

UPN Suffixes

Nun kann man per Bulk Edit oder manuell den UPN der benötigten Benutzer an die Azure-AD Domäne anpassen.

Edit UPN

Certificate Authority

Als nächstes muss eine PKI Umgebung, falls keine in der Domäne vorhanden ist, erstellt werden. Begebt euch hierfür auf die Maschine die diese Rolle erhalten soll. In meinem Beispiel ist es der Domänen Controller selber.

Hierfür gehen wir auf den Server Manager und klicken dort auf Add Roles and Features hinzufügen.

Server Manager

Klickt euch durch den Wizard bis zum Punkt Server Roles und wählt dort den Punkt Active Directory Certificate Services aus. Bestätigt die Auswahl durch Add Features.

Add Roles and Features Wizard

Klickt danach Next im Server Roles, Features und AD CS Reiter.

Active Directory Certificate Services

Unter dem Punkt Role Services wählt ihr die folgenden Punkte aus:

  • Certification Authority
  • Certification Authority Web Enrollment
AD CS Role Services

Wenn Pop Up Fenster mit zusätzlichen Features erscheinen, bestätigt ihr diese ebenfalls mit Add Features.

Certification Authority Web Enrollment Add Features

Schließt die Installation mit Install ab.

Confirm installation selections

Wählt nun im Server Manager den Notifications Punkt aus und klickt auf Configure Active Directory Certificate Services.

Notifications Configure ADCS

In der folgenden Konfiguration können die Standard Einstellungen mit Next bestätigt werden.

AD CS Configurations Credentials

Von mir verwendete Konfiguration:

  • Setup Type (Enterprise CA)
  • CA Type (Root CA)
  • Private Key (Create a new private key)
  • CA Name (Deyda-CA)
  • Validity Period (5 Jahre)

Bestätigt die Konfiguration mit Configure.

Configuration AD CS Confirmation

Jetzt muss dem Domänen Controller ein Zertifikat der lokalen CA ausgestellt werden.

Hierfür öffnet ihr auf dem Domänen Controller die MMC.

start run mmc

Hier klickt auf File und Add/Remove Snap-in…

Add Remove Snap-in

Klickt nun auf Certificates und auf Add.

Certificates

Im folgenden Fenster wählt Computer account aus und bestätigt dies mit Next.

Certificates snap-in Computer account

Abschließend noch mit OK das Fenster schließen.

Certificates Local Computer

Mit der rechten Maustaste auf Personal klicken und dann auf All Tasks > Request New Certificate klicken.

Request New Certificate

Im Certificate Enrollment Fenster wählt ihr Active Directory Enrollment Policy aus und klickt auf Next.

Certificate Enrollment Before you begin
Certificate Enrollment Active Directory Enrollment Policy

Wählt Domain Controller Authentication aus und bestätigt dies mit Enroll.

Domain Controller Authentication Enroll

Citrix Federated Authentication Service

Nun können wir den FAS Server installieren und konfigurieren. In meinem Beispiel installiere ich den FAS Part mit auf den StoreFront Server.

Hierfür mountet das ISO eurer Virtual Apps & Desktops Version und startet autoselect.exe.

Startet daraufhin die Installation, indem ihr im folgenden Fenster auf Federated Authentication Service klickt.

Citrix Virtual Apps and Desktops  Federated Authentication Service

Klickt auf „I have read, understand, and … “ und bestätigt dies mit Next.

Citrix Virtual Apps and Desktops 7 Licensing Agreement

Bestätigt nun die folgenden Standard Einstellungen mit Next.

Citrix Virtual Apps and Desktops 7  Core Components

Und klickt wieder Next.

Citrix Virtual Apps and Desktops 7  Firewall

Startet die Installation mit Finish.

Citrix Virtual Apps and Desktops 7  Summary

Gegebenenfalls müsst ihr euren Server neu starten.

Citrix Virtual Apps and Desktops 7  Finish

Um die Basiskonfiguration des FAS über die GPO durchführen zu können, kopiert die ADMX/ADML Dateien vom angegebenen Pfad eures FAS Servers.

C:\Program Files\Citrix\Federated Authentication Service\PolicyDefinitions

Federated Authentication Service GPO Policy Definitions

Fügt diese in den PolicyDefinitions Store eurer Active Directory ein.

Federated Authentication Service GPO Policy Definitions Active Directory

Erstellt eine neue oder editiert eine vorhandene GPO, die von den folgenden Systemen abgegriffen wird:

  • FAS Server
  • StoreFront Server
  • VDA Worker
GPO Group Policy FAS

In der GPO geht auf den Pfad.

Computer Configuration \ Policies \ Administrative Templates \ Citrix Components \ Authentication

Tragt in Federated Authentication Service euren FAS Server ein.

Aktualisiert euren lokalen GPOs auf dem FAS Server durch ausführen von gpupdate /force in der CMD.

cmd gpupdate /force FAS

Danach kontrolliert die Registry, das der benötigte Eintrag auf dem System geschrieben wurde.

HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Citrix \ Authentication \ UserCredentialService \ Addresses

Oder / Und

HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432Node \ Policies \ Citrix \ Authentication \ UserCredentialService \ Addresses

Registry Editor HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Citrix \ Authentication \ UserCredentialService \ Addresses

Starte nun das Citrix Federated Authentication Service Tool mit dem “run as administrator” Parameter.

Citrix Federated Authentication Service Tool

Hier seht ihr nun die Liste der FAS Server, die über GPO konfiguriert worden sind. Klickt auf OK.

Connect to the Federated Authentication Service

Im folgenden Fenster wird der FAS konfiguriert.

Klickt im Rahmen 1 Deploy certificate templates auf Start.

Citrix Federated Authentication Service Configuration

Klickt auf OK , damit die Konfiguration im Hintergrund automatisch durchgeführt wird.

Deploy certificate templates FAS

Nach erfolgreicher Einrichtung erscheint der Rahmen 1 in Grün.

Klickt danach im Rahmen 2 Setup Certificate Authority auf Start.

Setup Certificate Authority FAS

Wählt unter Certificate Authority eure für FAS konfigurierte / erstellte CA aus (z.B. DC01.deyda.local\CA-DEYDA ) und klickt auf OK.

Setup certificate authority FAS Server

Bei erfolgreicher Einrichtung erscheint der Rahmen 2 auch in Grün.

Klickt nun auf Start bei 3 Authorize this Service.

Setup certificate authority FAS Server

Wählt hier die in Punkt 2 ausgewählte CA aus und klickt OK.

FAS Server Authorize service Certificate Authority

Punkt 3 erscheint nun in Gelb, weil nun der Certificate Request genehmigt werden muss.

Waiting for Approval Pending Certificate

Verbindet euch wieder auf den Server mit der FAS CA und öffnet den Server Manager. Im Server Manager klickt auf Tools > Certification Authority.

Server Manager CA Certification Authority

In der Certification Authority Konsole klickt auf Pending Requests.

certsrv Certification Authority Local FAS

Dort klickt ihr mit der rechten Maustaste auf den gerade erstellten Request eures FAS Servers (z.B. DEYDA\CTX01) und klickt dort auf All Tasks > Issue.

Pending Requests Issue All Tasks

Danach erscheint das Zertifikat unter Issued Certificates.

Certification Authority Issued Certificates FAS Server

Das nun genehmigte Zertifikat läuft im Normalfall in 2 Jahren aus.

Daher ist es zu empfehlen dieses Zertifikat ins Monitoring aufzunehmen, damit man das Zertifikat erneuert, bevor es abläuft.

Hier die PowerShell Befehle um das Datum zu erfahren (Ersetzt CTX01.deyda.local mit eurem FAS Server).

Add-PsSnapin Citrix.Authentication.FederatedAuthenticationService.V1
Get-FasAuthorizationCertificate -FullCertInfo -address CTX01.deyda.local

Nach dem Genehmigen erscheinen alle Punkte in der FAS Configuration Konsole in Grün.

Deauthorize this Service Citrix Federated Authentication Service

In den neusten Versionen des Virtual Apps & Desktops Image wird bei der Installation des FAS Servers, auch die Citrix FAS Administration BETA Konsole installiert. Alle Tätigkeiten bezüglich Konfiguration, können auch hiermit durchgeführt werden. Ich habe dies auch schon geprüft und konnte keine Fehler feststellen.

Citrix FAS Administration BETA FAS SERVER

Klickt nun auf den User Rules Tab in der FAS Configuration Konsole und wählt folgendes im oberen Bereich aus:

  • Rule name (default)
  • Certificate Authority (Eure FAS CA, z.B. DC01.deyda.local\CA-DEYDA)
  • Certificate Template (Citrix_SmartcardLogon)
Citrix Federated Authentication Service Configuration User Rules

Im unteren Bereich unter Security Access Control Lists klickt auf Edit neben dem Punkt List of Storefront servers that can use this rule.

Citrix Federated Authentication Service Configuration Security Access Control Lists

Im folgenden Fenster löscht ihr die Gruppe Domain Computers.

Citrix Federated Authentication Service Configuration Security Access Control Lists Permission for Storefront Servers

Fügt daraufhin eure StoreFront Server hinzu und gibt ihm das Recht Assert Identity (Allow). Bestätigt dies mit OK.

Citrix Federated Authentication Service Configuration Security Access Control Lists Permission for Storefront Servers FAS

Unter dem Punkt List of VDA desktops and servers that can be logged into by this rule könnt ihr die Liste der Citrix Worker eingrenzen, auf die man sich per SAML einloggen kann. Im Standard steht dies auf Domain Computers, was auch so bleiben kann.

Citrix Federated Authentication Service Configuration Security Access Control Lists Permission for VDAs FAS

Im letzten Punkt List of users that StoreFront can log in using this rule könnt ihr die Benutzer einschränken die sich über SAML in Citrix einloggen können. Im Standard ist hier die Gruppe Domain Users hinterlegt, die auch so bleiben kann.

Citrix Federated Authentication Service Configuration Security Access Control Lists Permission for Allowed Users FAS

Nachdem alles definiert ist klickt auf Apply und schliesst die FAS Konsole.

Citrix Federated Authentication Service Configuration Rule updated successfully

StoreFront

Jetzt konfigurieren wir den StoreFront Server, so dass er mit dem FAS Server sprechen kann.

Geht auf eure Citrix StoreFront Konsole und notiert euch eure Stores die ihr für FAS konfigurieren wollt (z.B. Store).

StoreFront Stores FAS PowerShell

Startet die PowerShell als Administrator auf einem StoreFront Server.

Windows PowerShell Run as administrator StoreFront FAS

Führt die folgenden Befehle im PowerShell aus (Ändert hierfür den Store Pfad in Zeile 2 in euren Store Namen um).

Get-Module "Citrix.StoreFront.*" -ListAvailable | Import-Module
$StoreVirtualPath = "/Citrix/Store"
$store = Get-STFStoreService -VirtualPath $StoreVirtualPath
$auth = Get-STFAuthenticationService -StoreService $store
Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "FASClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider "FASLogonDataProvider"

Windows Power Shell FAS Get-STFAuthenticationService Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "FASClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider "FASLogonDataProvider

Wenn ihr dies wieder deaktivieren wollt, z.B. fürs Troubleshooting, könnt ihr dies mit dem folgenden Befehl durchführen.

Get-Module "Citrix.StoreFront.*" -ListAvailable | Import-Module
$StoreVirtualPath = "/Citrix/Store"
$store = Get-STFStoreService -VirtualPath $StoreVirtualPath
$auth = Get-STFAuthenticationService -StoreService $store
Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "standardClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider ""

Öffnet nun wieder die Citrix StoreFront Konsole und klickt dort auf Manage Authentication Methods im Panel auf der rechten Seite.

Manage Authentication Methods StoreFront Citrix

Aktivier Pass-through from Citrix Gateway, wenn es nicht aktiviert ist.

Citrix StoreFront Manage Authentication Methods Pass-through from Citrix Gateway

Klickt dann auf das Zahnrad bei Pass-through from Citrix Gateway und auf Configure Delegated Authentication.

Citrix StoreFront Manage Authentication Methods Pass-through from Citrix Gateway Configure Delegated Authentication

Im folgenden Fenster aktiviert das Kästchen neben Fully delegate credential validation to Citrix Gateway und klickt zwei mal auf OK um die Fenster zu schließen.

Citrix StoreFront Manage Authentication Methods Pass-through from Citrix Gateway Configure Delegated Authentication Fully delegate credential validation to Citrix Gateway

Klickt, zurück im Hauptfenster der StoreFront Konsole, auf Manage Citrix Gateways.

Manage Authentication Methods StoreFront Citrix Manage Citrix Gateways

In Manage Citrix Gateways fügt ihr ein neues Gateway hinzu oder editiert ein bestehendes, für die Verbindung zu eurem Citrix Gateway das später als SP genutzt werden soll.

Manage Citrix Gateways ADD EDIT FAS

In meinem Fall habe ich ein vorhandenes über Edit editiert und folgendes unter Authentication Settings konfiguriert:

  • Version (10.0 (Build69.4) or later)
  • VServer IP address (IP Adresse der Gateway VIP, z.B. 10.0.0.8)
  • Logon type (Domain)
  • Callback URL (Adresse des Callback, z.B. https://citrix.deyda.net)

Bestätigt die Einstellungen mit Finish.

StoreFront Authentication Settings Callback URL

Wichtig hierbei ist, dass auch im internen DNS die Callback Adresse citrix.deyda.net hinterlegt ist.

DNS Lookup Fallback URL

Klickt im Hauptmenü der StoreFront Konsole auf Configure Remote Access Settings und kontrolliert das der Punkt …(No VPN tunnel) aktiviert ist.

Configure Remote Access Settings - Store Service Enable Remote Access

Delivery Controller

Auf dem Delivery Controller muss noch der XML Trust aktiviert werden, wenn dies nicht schon aktiviert ist.

Hierfür startet ihr eine PowerShell als Administrator auf einem Delivery Controller.

Deliver Controller Citrix PowerShell Run as administrator

Setzt hier nun folgenden Befehl ab:

asnp citrix.*
Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true

Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true FAS Delivery Controller

In den neueren Version von CVAD (>1906) folgt nach dem ausführen der PowerShell Befehle noch ein Citrix Cloud Fenster, in dem man seine Credentials hinterlegen muss.

Citrix Cloud Abfrage

Azure-AD

Um unseren kommenden Service Provider anzubinden, müssen wir nun im Azure AD eine Custom Application erstellen.

Um die Azure-AD zu konfigurieren, melden wir uns bei portal.azure.com an.

portal.azure.com logon Microsoft Azure

Im Azure Navigation Panel klicken wir auf Azure Active Directory.

Microsoft Azure Navigation Panel Azure Active Directory

Im Azure Active Directory Fenster klickt auf Unternehmensanwendungen.

Azure Active Directory Enterprise Application

Klickt nun auf Neue Anwendung.

Enterprise Application New Application Azure

Und dann auf Nicht-Kataloganwendung

Non-Gallery Application Enterprise Application Azure

Im Fenster Eigene Anwendung hinzufügen konfiguriert den Namen der Anwendung für den Endbenutzer, z.B. Citrix FAS und klickt auf Hinzufügen.

Non-Gallery Application Enterprise Application Azure Name SAML based

Wartet bis die Anwendung erstellt ist. Informationen erhält man über den Punkt Benachrichtigungen am oberen Rand.

Notifications New Application

Wenn die Anwendung erstellt wurde, klickt auf Azure Active Directory > Unternehmensanwendungen > Alle Anwendungen und dort auf die gerade erstellte Anwendung (z.B. Citrix FAS).

Enterprise Application All Application Citrix FAS

In der Unternehmensanwendung klickt auf Einmaliges Anmelden.

Add Application Configure Single Signon

Unter SSO-Methode klickt auf SAML.

SSO_Methode SAML Single-Signon Citrix FAS

Im nun folgenden Fenster wird die Kommunikation zwischen Identity Provider und Service Provider konfiguriert.

Single-Signon SSO SAML Application

Klickt im oberen Bereich mit der Nummer 1 auf das Stift Symbol um die Grundlegende SAML-Konfiguration zu bearbeiten.

Basic SAML Configuration Application Single-Signon

Tragt hier nun folgendes ein:

  • Bezeichner (Adresse Citrix Gateway, z.B. https://citrix.deyda.net)
  • Antwort-URL (Adresse Citrix Gateway mit /cgi/samlauth, z.B. https://citrix.deyda.net/cgi/samlauth)

Bestätigt eure Eingabe mit Save.

Basic SAML Configuration Entity ID Assertion URL

Die Einstellungen unter Punkt 2 Benutzerattribute und Ansprüche, können im vorhanden Standard bestehen bleiben.

User Atribute Unique User ID

Unter SAML-Signaturzertifikat (Punkt 3), ladet das Zertifikat (Base 64) für den Service Provider (Citrix ADC) herunter.

SAML Signing Certificate Certificate (Base64) Download
Certificate Base64 Signature Identity Provider

Aus Bereich 4 (Citrix FAS einrichten) die angezeigten URLs (URL für Anmeldung, Azure AD-Bezeichner & Abmelde-URL), in eine lokale Datei kopieren.

SAML SSO Login URL Azure AD Identifier Logout URL

Klickt auf die Bestätigung Checkbox am unteren Rand und klickt auf Next.

Um nun Benutzern die SAML Authentifizierung für Citrix zu erlauben, müssen diese die Anwendung zugeordnet bekommen.

Klickt auf Benutzer und Gruppen.

Azure AD Application Users and Groups

Klickt nun auf Benutzer hinzufügen.

Add Users to Application

Markiert nun aus der Liste die Benutzer die Zugriff erhalten sollen (oder wählt alle Benutzer aus) und bestätigt dies mit Zuweisen.

Assign User or Group to Application

Ich habe nur einen Test Benutzer (user01) hierfür berechtigt.

Assign User or Group to Application

Citrix ADC

Als letztes muss der Citrix ADC, für die Kommunikation mit dem Identity Provider (Azure-AD), konfiguriert werden.

Citrix ADC Logon Mask

Hierfür melden wir uns an die Admin Weboberfläche des Citrix ADC an und navigieren nach Traffic Management > SSL > Certificates > Server Certificates.

Traffic Management SSL Certificates Server Certificats SAML

Dort klickt auf Install, um das vorher aus dem Azure Portal heruntergeladene Zertifikat, einzuspielen.

Server Certificates Install Azure Portal Signature Certificate

Gebt folgendes ein und bestätigt die Eingabe mit Install:

  • Certificate-Key Pair Name (Eindeutiger Name für das SAML Signatur Zertifikat, z.B. SAML-Azure-AD)
  • Certificate File Name (Heruntergeladene Signatur Zertifikat, z.B. Citrix FAS.cer)
Install Server Certificate NetScaler ADC

Das installierte Zertifikat ist danach nicht unter Server oder Client Certificates zu finden, sondern unter Unknown Certificates.

Traffic Management SSL SSL Certificates Unknown Certificates SAML FAS

Danach navigieren wir nach Security > AAA – Application Traffic > Virtual Servers um die SAML Authentication Policy und den Authentication vServer zu erstellen.

NetScaler ADC SAML Security AAA - Application Traffic Virtual Servers

Klickt unter Authentication Virtual Servers auf Add um einen neuen vServer zu erstellen.

Authentication Virtual Servers AAA - Application Traffic FAS SAML

Gebt nun folgendes ein:

  • Name (Name des vServers, z.B. Azure-AD_auth_VS
  • IP Address Type (Non Addressable)

Klickt im Anschluss auf OK.

Authentication Virtual Server Basic Settings Non Addressable

Im folgenden Wizard klickt auf No Server Certificate um euer Server Zertifikat anzubinden (Nicht das IdP Zertifikat).

No Server Certificate SAML Authentication Virtual Server

Klickt in den Bereich Click to select.

Server Certificate Binding Wildcard

Wählt euer Citrix ADC Server Zertifikat aus (z.B. bei mir mein Wildcard Zertifikat) und klickt auf Select.

Server Certificate Binding Server Certificates Wildcard

Klickt nun auf Bind.

Server Certificate Binding Server Certificates Wildcard Bind

Wenn das Zertifikat angebunden ist (1 Server Certificate) klickt auf Continue.

Server Certificate SAML Authentication Virtual Server

Unter dem Menüpunkt Advanced Authentication Policies klickt auf No Authentication Policy.

Server Certificate SAML Authentication Virtual Server Advanced Authentication Policies Authentication Policy

Klickt unter Select Policy auf das + Symbol.

Policy Binding SAML Authentication Virtual Server Advanced Authentication Policies Authentication Policy

Gebt folgendes ein:

  • Name (Name der Authentication Policy, z.B. saml_auth_pol)
  • Action Type (SAML)
  • Expression (HTTP.REQ.IS_VALID)

Klickt auf das + Symbol neben Action.

SAML Authentication Virtual Server Advanced Authentication Policies Authentication Policy Create

Konfiguriert nun den Authentication SAML Server mit folgenden Parametern:

  • Name (Name des SAML Authentication Server, z.B. saml_auth_server)
  • IDP Certificate Name (Zertifikat aus der Azure-AD Anwendung, z.B. SAML-Azure-AD)
  • Redirect URL (URL für Anmeldung aus der Azure-AD Anwendung, z.B. https://login.microsoftonline.com/…/saml2)
  • Single Logout URL (URL für Anmeldung aus der Azure-AD Anwendung, z.B. https://login.microsoftonline.com/…/saml2)
  • Signing Certificate Name (Server Zertifikat des Citrix Gateway, z.B. Wildcard201904)
  • Issuer Name (FQDN des Citrix Gateway vServer, z.B. https://citrix.deyda.net)

Bestätigt die Eingabe mit Create.

SAML Authentication SAML Server Advanced Authentication Policies Authentication Action IDP Certificate Redirect URL Single Logout URL Signing Certificate

Überprüft die Eingaben nochmals und klickt auf Create.

SAML Authentication SAML Server Advanced Authentication Policies Authentication Action

Unter Policy Binding kontrolliert die Eingaben und ändert folgendes:

  • Goto Expression (END)

Bestätigt dies mit Bind.

SAML Authentication SAML Server Advanced Authentication Policies Authentication Action END

Wenn die Authentication Policy angebunden ist klickt auf Continue und Done.

SAML Authentication SAML Server Advanced Authentication Policies
SAML Authentication SAML Server

Um die Konfiguration auf dem Citrix ADC abzuschliessen müssen wir nur noch die gerade erstellte SAML Authentication Policy an unseren Gateway Virtual Server binden.

Hierfür navigieren wir nach NetScaler Gateway > Virtual Servers.

Citrix ADC Gateway NetScaler Gateway Virtual Servers

Wählt den Gateway vServer aus, der im StoreFront vorher für FAS konfiguriert wurde (z.B. https://citrix.deyda.net = UG_VPN_ug_10.0.0.8_443) und klickt auf Edit.

NetScaler Gateway Virtual Servers Edit

Löst alle angebundenen LDAP oder RADIUS Authentication policy vom vServer. Klickt hierfür auf die Policies (1 LDAP Policy).

NetScaler Gateway Virtual Servers LDAP Policy

Wählt die Policies aus und klickt Unbind.

Unbind LDAP Policy VPN Virtual Server Authentication

Bestätigt das Fenster mit Yes.

Confirm Pop Up Do you want to unbind the selected entitiy

Prüft das weder in Basic Authentication, noch in Advanced Authentication eine Policy angebunden ist.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML IDP Policy

Klickt auf der rechten Seite auf Authentication Profile unter Advanced Settings.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML IDP Policy Authentication Profile

Klickt auf das + Symbol unter Authentication Profile.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication Profile

Tragt unter Create Authentication Profile einen Namen (z.B. saml_auth_profile) ein und klickt auf Click to select unter Authentication Virtual Server.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML Authentication Profile

Wählt den vorher erstellten Authentication Virtual Server (Azure-AD_auth_VS) aus und klickt auf Select.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML Authentication Profile Authentication Virtual Servers

Bestätigt die Eingabe durch klick auf Create.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML Authentication Profile Authentication Virtual Servers

Klickt auf OK und auf Done.

NetScaler Gateway Virtual Servers Basic Authentication Advanced Authentication SAML Authentication Profile Authentication Virtual Servers

Navigiert nach NetScaler Gateway > Global Settings um die Single Sign-on Domain zu löschen.

NetScaler Gateway Global Settings

Klickt auf Change Global Settings.

NetScaler Gateway Global Settings Change Global Settings

Löscht den eventuellen Eintrag unter Single Sign-on Domain.

NetScaler Gateway Global Settings Change Global Settings Single Sign-on Domain

Gegebenenfalls müssen auch die Policies des Gateway vServers bezüglich Single Sign-on Domain bereinigt werden.

NetScaler Gateway Polices Session Cache
NetScaler Gateway Polices Session Cache

Ergebnis

Wenn wir nun die FQDN des Gateways (https://citrix.deyda.net) per Browser öffnen.

NetScaler with Unified Gateway

Werden wir direkt an Azure-AD weitergeleitet und können uns dort authentifizieren.

Microsoft Login

Wir bekommen unsere Citrix Ressourcen aufgezeigt und können diese starten.

Citrix StoreFront
Successfull Logon

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

* I consent to having this website store my submitted information so they can respond to my inquiry.