Esquema de autenticación de WS-Federation: perfil de SAML

La página contiene los siguientes campos:
casso1283
HID_wsfed-auth-scheme-saml-profiles
El cuadro de diálogo Perfil de SAML permite definir cómo el partner de recursos trata la comunicación del inicio de sesión único y el cierre de sesión.
La página contiene los siguientes campos:
  • Modo de redirección
    Indica el método por el cual el partner de recursos redirige el usuario al recurso de destino. Si se selecciona 302 No hay datos o 302 Cookie Data (Datos de la cookie), no es obligatorio realizar otra configuración. Si selecciona Redirección del servidor o Atributos persistentes, es obligatorio realizar una configuración adicional.
    • 302 No hay datos.
      Valor predeterminado. Indica que una redirección HTTP 302 envía el usuario al destino con una cookie de sesión, pero no otros datos.
    • 302 Datos de la cookie
      Indica que una redirección HTTP 302 envía el usuario al destino con una cookie de sesión y datos adicionales de la cookie para el partner de recursos.
    • casso1283
      Redirección del servidor
      Habilita la información de atributos de encabezado y cookies recibida en la aserción para transferirla a la aplicación de destino personalizada. El Servicio consumidor de aserciones de SAML 2.0 o Servicio consumidor de tókenes de seguridad de WS-Federation recopila las credenciales de usuario y, a continuación, transfiere el usuario a la dirección URL de la aplicación de destino mediante la redirección del servidor. Las redirecciones del servidor forman parte de la especificación de Java Servlet. Todos los contenedores de servlet que cumplen los estándares admiten redirecciones del servidor.
      Para utilizar este modo, siga estos requisitos:
      • La dirección URL que especifique para este modo debe estar relacionada con el contexto del servlet que consume la aserción, que es normalmente /affwebservices/public/. La raíz del contexto es la raíz de la aplicación de los servicios web de la federación, normalmente /affwebservices/.
        Todos los archivos de la aplicación de destino deben estar en el directorio raíz de la aplicación. Este directorio puede ser:
        —Agente web:
        directorio_principal_agente_web
        \webagent\affwebservices
        Access Gateway
        :
        directorio_principal_sps
        \secure-proxy\Tomcat\webapps\affwebservices
      • Defina los territorios, reglas y políticas para proteger los recursos de destino. Defina los territorios con el valor /affwebservices/ como mínimo en el filtro de recursos.
      • Instale una aplicación personalizada de Java o JSP en el servidor que está ejecutando la aplicación de los servicios web de la federación. Los servicios web de la federación se instalan con el Pack de opciones del Agente web o con
        Access Gateway
        .
        La tecnología de servlet de Java admite que las aplicaciones transfieran información entre dos solicitudes de recurso mediante el método setAttribute de la interfaz ServletRequest.
        El servicio que consume las aserciones envía el atributo de usuario a la aplicación de destino antes de redirigir el usuario al destino. El servicio envía los atributos al crear un objeto java.util.HashMap. El atributo que contiene el HashMap de los atributos de SAML es “Netegrity.AttributeInfo”.
        El servicio que consume aserciones transfiere los otros dos atributos de Java.lang.String a la aplicación personalizada:
        —El atributo Netegrity.smSessionID representa el ID de sesión de
        SiteMinder
        .
        —El atributo Netegrity.userDN representa el nombre distintivo del usuario de
        SiteMinder
        .
        La aplicación de destino personalizada lee estos objetos de la solicitud HTTP y utiliza los datos encontrados en los objetos hashmap.
    • Atributos persistentes
      Indica que una redirección HTTP 302 envía el usuario al destino con una cookie de sesión, pero no otros datos. Además, este modo indica al Servidor de políticas que almacene atributos extraídos de una aserción en el almacén de sesiones, así se pueden proporcionar como variables de encabezado HTTP. Para obtener información sobre la configuración adicional, consulte las instrucciones sobre cómo utilizar atributos de SAML como encabezados HTTP.
      casso1283
      Si selecciona Atributos persistentes y la aserción contiene atributos en blanco, un valor de NULO se escribe al almacén de sesiones. Este valor sirve de marcador de posición para el atributo vacío. El valor se transfiere a cualquier aplicación que utilice el atributo.
  • Destino
    Especifica el URI del recurso de destino en el sitio de destino del Proveedor de servicios.
  • Exigir política de un solo uso
    Impone un solo uso de una política. Si se selecciona esta opción se impide que las aserciones se reutilicen en un partner de recursos para establecer una segunda sesión.
La sección Cerrar sesión le permite configurar cómo el partner de recursos responde a una solicitud de cierre de sesión.
Los valores de configuración de esta sección son los siguientes:
  • Enable SignoutJava.lang.String attributes (Habilitar atributos SignoutJava.lang.String)
    Enables WS-Federation signout (Habilitar el cierre de sesión de WS-Federation)
  • URL de cierre de sesión
    Especifica la dirección URL del servlet de cierre de sesión en el partner de la cuenta. El valor predeterminado para la dirección URL es la entrada recomendada:
    https://<ap_service:port>/affwebservices/public/wsfeddispatcher
    El servicio WSFedDispatcher recibe todos los mensajes entrantes de WS-Federation y reenvía el procesamiento de la solicitud al servicio adecuado en función de los datos del parámetro de la consulta. Aunque hay un servicio wsfedsignout, utilice el la dirección URL de wsfeddispatcher como la URL de cierre de sesión.
En la sección Desambiguación del usuario se define cómo se obtiene la información de usuario de una aserción en un mensaje entrante <RequestSecurityTokenResponse>.
La ficha incluye los campos y los controles siguientes:
Desambiguación del usuario
  • Consulta XPath
    Especifica una consulta XPath. La consulta XPath le dice el esquema de autenticación en qué lugar de la aserción se puede ubicar una entrada específica, que sirve a continuación como el ID de inicio de sesión del usuario. El valor que la consulta obtiene pase a formar parte de la especificación de búsqueda para buscar una entrada del almacén de usuarios.
    La consulta XPath predeterminada que se utiliza cuando no se ha configurado ninguna es la siguiente:
    /Assertion/Subject/NameID/text()
    Xpath queries must not contain namespace prefixes. The following is an invalid Xpath query:
    /saml:Response/saml:Assertion/saml:AuthenticationStatement/
    saml:Subject/saml:NameIdentifier/text()
    The valid Xpath query is:
    //Response/Assertion/AuthenticationStatement/Subject/
    NameIdentifier/text()
    Ejemplo
    Para obtener el atributo “FirstName” de la aserción para la autenticación, la consulta XPath es:
    /Assertion/AttributeStatement/Attribute[@Name=”FirstName”]/AttributeValue/text()
  • Búsqueda de usuario
    Muestra los tipos de espacio de nombres donde se puede introducir una especificación de búsqueda para encontrar un registro de usuarios en un directorio de usuarios. Utilice el campo Personalizado para un espacio de nombres que no se enumere.
    Introduzca una especificación de búsqueda para el tipo de almacén de usuarios que está utilizando. La especificación de búsqueda combina un atributo de almacén de usuarios y el valor que la consulta Xpath identifica. El esquema de autenticación usa la especificación de búsqueda para encontrar un registro de usuarios en el almacén de usuarios.
    Utilice %s para representar el valor del ID de inicio de sesión.
    Por ejemplo, el ID de inicio de sesión es user1. Si se especifica Username=%s en el campo de especificación de la búsqueda, la cadena que resulta es Username=user1. Esta cadena se compara contra un registro en el directorio de usuarios para encontrar el registro correcto para la autenticación.
    Se pueden especificar también filtros con distintas variables %s. Por ejemplo:
    |(uid=%s)(email=%[email protected])
    |(abcAliasName=%s)(cn=%s)
    Los resultados son:
    |(uid=user1)([email protected])
    |(abcAliasName=user1)(cn=user1)