StoreFront

SAML-Authentifizierung

SAML (Security Assertion Markup Language) ist ein offener Standard, der von Identitäts- und Authentifizierungsprodukten verwendet wird. Über SAML können Sie StoreFront so konfigurieren, dass Benutzer zur Authentifizierung an einen externen Identitätsanbieter umgeleitet werden.

Hinweis:

Konfigurieren Sie StoreFront mit der SAML-Authentifizierung für den internen Zugriff. Für externen Zugriff konfigurieren Sie Citrix Gateway mit der SAML-Authentifizierung und dann StoreFront mit der Gateway-Passthrough-Authentifizierung.

StoreFront erfordert einen SAML 2.0-kompatiblen Identitätsanbieter (IdP). Dazu gehören:

  • Microsoft AD Verbunddienste unter Nutzung von SAML-Bindungen (keine WS-Verbundbindungen) Weitere Informationen finden Sie unter AD FS Deployment und AD FS Operations.
  • Citrix Gateway (als IdP konfiguriert)
  • Microsoft Entra ID Weitere Informationen finden Sie unter CTX237490.

Die SAML-Assertion muss das Attribut saml:Subject enthalten, das den UPN des Benutzers enthält.

Um die SAML-Authentifizierung für einen Store zu aktivieren oder zu deaktivieren, wenn Sie eine Verbindung über die Workspace-App herstellen, aktivieren Sie im Fenster Authentifizierungsmethoden die Option SAML-Authentifizierung. Wenn Sie die SAML-Authentifizierung für einen Store standardmäßig aktivieren, wird sie auch für alle Websites für diesen Store aktiviert. Sie können SAML auf der Registerkarte Authentifizierungsmethoden für einzelne Websites separat konfigurieren.

SAML-Endpunkte für StoreFront

Für die Konfiguration von SAML benötigt Ihr Identitätsanbieter möglicherweise die folgenden Endpunkte:

  • URL der Entitäts-ID. Das ist der Pfad zum Authentifizierungsdienst des Stores, normalerweise https://[StoreFront-Host]/Citrix/[Storename] Auth
  • URL des Assertion Consumer Service, normalerweise https://[StoreFront-Host]/Citrix/[Storename]auth/SamlForms/AssertionConsumerService
  • Metadatendienst, normalerweise https://[StoreFront-Host]/Citrix/[Storename]auth/SamlForms/ServiceProvider/Metadata

Zusätzlich gibt es einen Testendpunkt, normalerweise https://[StoreFront-Host]/Citrix/[Storename]auth/SamlTest

Sie können das folgende PowerShell-Skript verwenden, um die Endpunkte für einen Store aufzulisten.

# Change this value for your Store
$storeVirtualPath = "/Citrix/Store"

$auth = Get-STFAuthenticationService -Store (Get-STFStoreService -VirtualPath $storeVirtualPath)
$spId = $auth.AuthenticationSettings["samlForms"].SamlSettings.ServiceProvider.Uri.AbsoluteUri
$acs = New-Object System.Uri $auth.Routing.HostbaseUrl, ($auth.VirtualPath + "/SamlForms/AssertionConsumerService")
$md = New-Object System.Uri $auth.Routing.HostbaseUrl, ($auth.VirtualPath + "/SamlForms/ServiceProvider/Metadata")
$samlTest = New-Object System.Uri $auth.Routing.HostbaseUrl, ($auth.VirtualPath + "/SamlTest")
Write-Host "SAML Service Provider information:
Entity ID: $spId
Assertion Consumer Service: $acs
Metadata: $md
Test Page: $samlTest
<!--NeedCopy-->

Beispiel für die Ausgabe:

SAML Service Provider information:
Entity ID: https://storefront.example.com/Citrix/StoreAuth
Assertion Consumer Service: https://storefront.example.com/Citrix/StoreAuth/SamlForms/AssertionConsumerService
Metadata: https://storefront.example.com/Citrix/StoreAuth/SamlForms/ServiceProvider/Metadata
Test Page: https://storefront.example.com/Citrix/StoreAuth/SamlTest
<!--NeedCopy-->

Konfiguration per Metadatenaustausch

Zur Vereinfachung der Konfiguration können Sie Metadaten (IDs, Zertifikate, Endpunkte und andere Konfigurationselemente) zwischen Identitäts- und Dienstanbieter, in diesem Fall StoreFront, austauschen.

Wenn Ihr Identitätsanbieter den Metadatenimport unterstützt, können Sie ihn an den StoreFront-Metadaten-Endpunkt verweisen. Hinweis: Dies muss über HTTPS erfolgen.

Um StoreFront mithilfe der Metadaten eines Identitätsanbieters zu konfigurieren, verwenden Sie das Cmdlet Update-STFSamlIdPFromMetadata. Beispiel:

Get-Module "Citrix.StoreFront*" -ListAvailable | Import-Module

# Remember to change this with the virtual path of your Store.
$StoreVirtualPath = "/Citrix/Store"

$store = Get-STFStoreService -VirtualPath $StoreVirtualPath
$auth = Get-STFAuthenticationService -StoreService $store

# To read the metadata directly from the Identity Provider, use the following:
# Note again this is only allowed for https endpoints
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -Url https://example.com/FederationMetadata/2007-06/FederationMetadata.xml

# If the metadata has already been download, use the following:
# Note: Ensure that the file is encoded as UTF-8
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -FilePath "C:\Users\exampleusername\Downloads\FederationMetadata.xml"
<!--NeedCopy-->

Identitätsanbieter konfigurieren

  1. Klicken Sie in der Zeile SAML-Authentifizierung auf das Dropdownmenü “Einstellungen” und dann auf Identitätsanbieter.

    Screenshot des SAML-Einstellungsmenüs

    Screenshot des Fensters "Identitätsanbieter"

  2. Wählen Sie für SAML-Bindung die Option Posten oder Umleiten.

  3. Geben Sie die Adresse des Identitätsanbieters ein.

  4. Importieren Sie das zum Signieren der SAML-Token verwendete Zertifikat.

  5. Klicken Sie auf OK, um die Änderungen zu speichern.

Dienstanbieter konfigurieren

  1. Klicken Sie in der Zeile SAML-Authentifizierung auf das Dropdownmenü “Einstellungen” und dann auf Dienstanbieter.

    Screenshot des Fensters "Identitätsanbieter"

  2. Wählen Sie optional ein Zertifikat unter Signaturzertifikat exportieren, das zum Signieren von Meldungen an den Identitätsanbieter verwendet wird.

  3. Wählen Sie optional ein Zertifikat unter Verschlüsselungszertifikat exportieren, das zum Entschlüsseln von Meldungen vom Identitätsanbieter verwendet wird.

  4. Für die Dienstanbieter-ID wird automatisch der Authentifizierungsdienst für den Store eingetragen.

  5. Klicken Sie auf OK, um die Änderungen zu speichern.

PowerShell SDK

Verwenden des PowerShell-SDKs:

Testen

SAML-Integration testen:

  1. Gehen Sie zur SAML-Testseite (siehe SAML-Endpunkte für StoreFront).
  2. Dadurch werden Sie zum Identitätsanbieter weitergeleitet. Geben Sie Ihre Anmeldeinformationen ein.
  3. Sie werden zurück zur Testseite zurückgeleitet, auf der die Identitätsansprüche und Assertions angezeigt werden.

Single Sign-On mit dem Verbundauthentifizierungsdienst

Bei Verwendung der SAML-Authentifizierung hat StoreFront keinen Zugriff auf die Anmeldeinformationen des Benutzers, sodass Single Sign-On nicht standardmäßig verfügbar ist. Sie können den Verbundauthentifizierungsdienst verwenden, um Single Sign-On bereitzustellen.

SAML-Authentifizierung