StoreFront™ 2507 LTSR

Autenticación SAML

SAML (Security Assertion Markup Language) es un estándar abierto utilizado por los productos de identidad y autenticación. Con SAML, puedes configurar StoreFront para redirigir a los usuarios a un proveedor de identidades externo para la autenticación.

Nota

Configura StoreFront con autenticación SAML para acceso interno. Para acceso externo, configura Citrix Gateway con autenticación SAML y luego configura StoreFront con autenticación de paso de Gateway.

StoreFront requiere un proveedor de identidades (IdP) compatible con SAML 2.0, como:

  • Servicios de federación de AD de Microsoft que utilizan enlaces SAML (no enlaces WS-Federation). Para obtener más información, consulta CTX220638.
  • Citrix Gateway (configurado como un IdP).
  • Microsoft Entra ID. Para obtener más información, consulta CTX237490.

La aserción SAML debe contener un atributo saml:Subject que contenga el UPN del usuario. StoreFront busca este UPN en Active Directory.

Para habilitar o deshabilitar la autenticación SAML para un almacén al conectarte mediante la aplicación Citrix Workspace, en la ventana Métodos de autenticación selecciona Autenticación SAML. Al habilitar la autenticación SAML para un almacén, por defecto también se habilita para todos los sitios web de ese almacén. Puedes configurar SAML de forma independiente para un sitio web en particular en la ficha Métodos de autenticación.

Puntos de conexión SAML de StoreFront™

Para configurar SAML, tu proveedor de identidades puede requerir los siguientes puntos de conexión:

  • La URL del ID de entidad. Esta es la ruta al servicio de autenticación del almacén, normalmente https://[storefront host]/Citrix/[StoreName]Auth
  • La URL del Servicio de Consumidor de Aserciones, normalmente https://[storefront host]/Citrix/[StoreName]Auth/SamlForms/AssertionConsumerService
  • El servicio de metadatos, normalmente https://[storefront host]/Citrix/[StoreName]Auth/SamlForms/ServiceProvider/Metadata

Además, hay un punto de conexión de prueba, normalmente https://[storefront host]/Citrix/[StoreName]Auth/SamlTest

Puedes usar el siguiente script de PowerShell para listar los puntos de conexión de un almacén especificado.

# Cambia este valor para tu almacén.
$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-->

Ejemplo de la salida:

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-->

Configurar mediante el intercambio de metadatos

Para simplificar la configuración, puedes intercambiar metadatos (identificadores, certificados, puntos de conexión y otra configuración) entre el proveedor de identidades y el proveedor de servicios, que en este caso es StoreFront.

Si tu proveedor de identidades admite la importación de metadatos, puedes apuntarlo al punto de conexión de metadatos de StoreFront. Nota: Esto debe hacerse a través de HTTPS.

Para configurar StoreFront usando los metadatos de un proveedor de identidades, usa el cmdlet Update-STFSamlIdPFromMetadata, por ejemplo:

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

# Recuerda cambiar esto por la ruta virtual de tu almacén.
$StoreVirtualPath = "/Citrix/Store"

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

# Para leer los metadatos directamente del proveedor de identidades, usa lo siguiente:
# Ten en cuenta de nuevo que esto solo está permitido para puntos de conexión https.
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -Url https://example.com/FederationMetadata/2007-06/FederationMetadata.xml

# Si los metadatos ya se han descargado, usa lo siguiente:
# Nota: Asegúrate de que el archivo esté codificado como UTF-8.
Update-STFSamlIdPFromMetadata -AuthenticationService $auth -FilePath "C:\Users\exampleusername\Downloads\FederationMetadata.xml"
<!--NeedCopy-->

Configurar proveedor de identidades

  1. Haz clic en el menú desplegable de configuración en la fila Autenticación SAML y haz clic en Proveedor de identidades.

    Captura de pantalla del menú de configuración SAML

    Captura de pantalla de la ventana del proveedor de identidades

  2. Elige el Enlace SAML de Post o Redirect.

  3. Introduce la Dirección del proveedor de identidades.

  4. Importa el certificado usado para firmar los tokens SAML.

  5. Pulsa Aceptar para guardar los cambios.

Configurar proveedor de servicios

  1. Haz clic en el menú desplegable de configuración en la fila Autenticación SAML y haz clic en Proveedor de servicios.

    Captura de pantalla de la ventana del proveedor de servicios

  2. Opcionalmente, elige un Certificado de firma de exportación, usado para firmar mensajes al proveedor de identidades.

  3. Opcionalmente, elige un Certificado de cifrado de exportación, usado para descifrar mensajes recibidos del proveedor de identidades.

  4. El Identificador del proveedor de servicios se rellena previamente con el servicio de autenticación para el almacén.

  5. Pulsa Aceptar para guardar los cambios.

PowerShell

Usando PowerShell:

Pruebas

Para probar la integración SAML:

  1. Ve a la página de prueba SAML, consulta Puntos de conexión SAML de StoreFront.
  2. Esto te redirige al proveedor de identidades. Introduce tus credenciales.
  3. Se te redirige de nuevo a la página de prueba que muestra las aserciones y reclamaciones de identidad.

Configurar Delivery Controller™ para que confíe en StoreFront

Cuando usas la autenticación SAML, StoreFront no tiene acceso a las credenciales del usuario, por lo que no puede autenticarse en Citrix Virtual Apps and Desktops. Por lo tanto, debes configurar Delivery Controller para que confíe en las solicitudes de StoreFront, consulta Consideraciones de seguridad y mejores prácticas de Citrix Virtual Apps and Desktops.

Inicio de sesión único en VDA mediante Federated Authentication Service

Cuando usas la autenticación SAML, StoreFront no tiene acceso a las credenciales del usuario, por lo que el inicio de sesión único en VDA no está disponible por defecto. Puedes usar Federated Authentication Service para proporcionar inicio de sesión único.

Autenticación SAML