StoreFront

Authentification SAML

SAML (Security Assertion Markup Language) est une norme ouverte utilisée par les produits d’identité et d’authentification. Grâce à SAML, vous pouvez configurer StoreFront pour rediriger les utilisateurs vers un fournisseur d’identité externe pour l’authentification.

Remarque

Configurez StoreFront avec l’authentification SAML pour l’accès interne. Pour l’accès externe, configurez Citrix Gateway avec l’authentification SAML, puis configurez StoreFront avec l’authentification pass-through Gateway.

StoreFront nécessite un fournisseur d’identité (IdP) compatible SAML 2.0, tel que :

  • Microsoft AD Federation Services utilisant les liaisons SAML (pas les liaisons WS-Federation). Pour plus d’informations, consultez CTX220638.
  • Citrix Gateway (configuré en tant qu’IdP).
  • Microsoft Entra ID. Pour plus d’informations, consultez CTX237490.

L’assertion SAML doit contenir un attribut saml:Subject contenant l’UPN de l’utilisateur. StoreFront recherche cet UPN dans Active Directory.

Pour activer ou désactiver l’authentification SAML pour un magasin lors de la connexion à l’aide de l’application Citrix Workspace, dans la fenêtre Méthodes d’authentification, sélectionnez Authentification SAML. L’activation de l’authentification SAML pour un magasin l’active par défaut pour tous les sites web de ce magasin. Vous pouvez configurer SAML indépendamment pour un site web particulier dans l’onglet Méthodes d’authentification.

Points de terminaison SAML StoreFront™

Pour configurer SAML, votre fournisseur d’identité peut nécessiter les points de terminaison suivants :

  • L’URL de l’ID d’entité. Il s’agit du chemin d’accès au service d’authentification du magasin, normalement https://[hôte storefront]/Citrix/[NomMagasin]Auth
  • L’URL du service consommateur d’assertions, normalement https://[hôte storefront]/Citrix/[NomMagasin]Auth/SamlForms/AssertionConsumerService
  • Le service de métadonnées, normalement https://[hôte storefront]/Citrix/[NomMagasin]Auth/SamlForms/ServiceProvider/Metadata

De plus, il existe un point de terminaison de test, normalement https://[hôte storefront]/Citrix/[NomMagasin]Auth/SamlTest

Vous pouvez utiliser le script PowerShell suivant pour lister les points de terminaison d’un magasin spécifié.

# Changez cette valeur pour votre magasin
$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 "Informations sur le fournisseur de services SAML :
ID d'entité : $spId
Service consommateur d'assertions : $acs
Métadonnées : $md
Page de test : $samlTest"
<!--NeedCopy-->

Exemple de sortie :

Informations sur le fournisseur de services SAML :
ID d'entité : https://storefront.example.com/Citrix/StoreAuth
Service consommateur d'assertions : https://storefront.example.com/Citrix/StoreAuth/SamlForms/AssertionConsumerService
Métadonnées : https://storefront.example.com/Citrix/StoreAuth/SamlForms/ServiceProvider/Metadata
Page de test : https://storefront.example.com/Citrix/StoreAuth/SamlTest
<!--NeedCopy-->

Configuration à l’aide de l’échange de métadonnées

Pour simplifier la configuration, vous pouvez échanger des métadonnées (identifiants, certificats, points de terminaison et autres configurations) entre le fournisseur d’identité et le fournisseur de services, qui est StoreFront dans ce cas.

Si votre fournisseur d’identité prend en charge l’importation de métadonnées, vous pouvez le diriger vers le point de terminaison de métadonnées StoreFront. Remarque : Cela doit être fait via HTTPS.

Pour configurer StoreFront à l’aide des métadonnées d’un fournisseur d’identité, utilisez l’applet de commande Update-STFSamlIdPFromMetadata, par exemple :

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

# N'oubliez pas de modifier ceci avec le chemin virtuel de votre magasin.
$StoreVirtualPath = "/Citrix/Store"

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

# Pour lire les métadonnées directement depuis le fournisseur d'identité, utilisez ce qui suit :
# Notez à nouveau que cela n'est autorisé que pour les points de terminaison https
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -Url https://example.com/FederationMetadata/2007-06/FederationMetadata.xml

# Si les métadonnées ont déjà été téléchargées, utilisez ce qui suit :
# Remarque : Assurez-vous que le fichier est encodé en UTF-8
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -FilePath "C:\Users\exampleusername\Downloads\FederationMetadata.xml"
<!--NeedCopy-->

Configurer le fournisseur d’identité

  1. Cliquez sur la liste déroulante des paramètres dans la ligne Authentification SAML, puis cliquez sur Fournisseur d’identité.

    Capture d'écran du menu des paramètres SAML

    Capture d'écran de la fenêtre du fournisseur d'identité

  2. Choisissez la liaison SAML de type Post ou Redirect.

  3. Saisissez l’adresse du fournisseur d’identité.

  4. Importez le certificat utilisé pour signer les jetons SAML.

  5. Appuyez sur OK pour enregistrer les modifications.

Configurer le fournisseur de services

  1. Cliquez sur la liste déroulante des paramètres dans la ligne Authentification SAML, puis cliquez sur Fournisseur de services.

    Capture d'écran de la fenêtre du fournisseur d'identité

  2. Si vous le souhaitez, choisissez un certificat de signature d’exportation, utilisé pour signer les messages destinés au fournisseur d’identité.

  3. Si vous le souhaitez, choisissez un certificat de chiffrement d’exportation, utilisé pour déchiffrer les messages reçus du fournisseur d’identité.

  4. L’identifiant du fournisseur de services est pré-rempli avec le service d’authentification du magasin.

  5. Appuyez sur OK pour enregistrer les modifications.

SDK PowerShell

À l’aide du SDK PowerShell :

Test

Pour tester l’intégration SAML :

  1. Accédez à la page de test SAML, consultez Points de terminaison SAML StoreFront.
  2. Cela vous redirige vers le fournisseur d’identité. Saisissez vos informations d’identification.
  3. Vous êtes redirigé vers la page de test qui affiche les revendications d’identité et les assertions.

Configurer Delivery Controller™ pour faire confiance à StoreFront

Lorsque l’authentification SAML est utilisée, StoreFront n’a pas accès aux informations d’identification de l’utilisateur et ne peut donc pas s’authentifier auprès de Citrix Virtual Apps and Desktops. Vous devez donc configurer le Delivery Controller pour qu’il fasse confiance aux requêtes de StoreFront, consultez Considérations de sécurité et meilleures pratiques de Citrix Virtual Apps and Desktops.

Authentification unique aux VDA à l’aide du service d’authentification fédérée

Lorsque l’authentification SAML est utilisée, StoreFront n’a pas accès aux informations d’identification de l’utilisateur, de sorte que l’authentification unique aux VDA n’est pas disponible par défaut. Vous pouvez utiliser le service d’authentification fédérée pour fournir l’authentification unique.