Tutorial: Configuración de BIG-IP Access Policy Manager de F5 para inicio de sesión único basado en encabezados

Aprenda a implementar el acceso híbrido seguro (SHA) con inicio de sesión único (SSO) en aplicaciones basadas en encabezados mediante la configuración avanzada de BIG-IP de F5. Aplicaciones publicadas de BIG-IP y ventajas de configuración de Microsoft Entra:

Más información:

Descripción del escenario

En este escenario, hay una aplicación heredada que usa encabezados de autorización HTTP para controlar el acceso a contenido protegido. Lo ideal es que Microsoft Entra ID administre el acceso a la aplicación. Sin embargo, la herencia carece de un protocolo de autenticación moderno. La modernización tarda tiempo y esfuerzo, e introduce costos y riesgos de tiempo de inactividad. En su lugar, implemente un dispositivo BIG-IP entre la aplicación pública de Internet y la interna para permitir el acceso entrante a la aplicación.

Un BIG-IP delante de la aplicación permite superponer el servicio con la autenticación previa y el inicio de sesión único basado en encabezados de Microsoft Entra. La configuración mejora la posición de seguridad de la aplicación.

Arquitectura del escenario

La solución de acceso híbrido seguro para este escenario está compuesta por:

  • Aplicación: servicio publicado de BIG-IP que se va a proteger mediante el acceso híbrido seguro de Microsoft Entra SHA
  • Microsoft Entra ID: el proveedor de identidades (IdP) de Lenguaje de Marcado para Confirmaciones de Seguridad (SAML) que verifica las credenciales de usuario, el acceso condicional y el inicio de sesión único en BIG-IP
    • Con SSO, Microsoft Entra ID proporciona los atributos de sesión necesarios de BIG-IP, incluidos los identificadores de usuario
  • BIG-IP: proxy inverso y proveedor de servicios SAML (SP) en la aplicación, que delega la autenticación al IdP de SAML antes del SSO basado en encabezados en la aplicación back-end

En el diagrama siguiente, se muestra el flujo de usuario con Microsoft Entra ID, BIG-IP, APM y una aplicación.

Diagrama del flujo de usuario con Microsoft Entra ID, BIG-IP, APM y una aplicación

  1. El usuario se conecta al punto de conexión del proveedor de servicios SAML de la aplicación (BIG-IP).
  2. La directiva de acceso de APM de BIG-IP redirige al usuario a Microsoft Entra ID (IdP de SAML).
  3. Microsoft Entra autentica previamente al usuario y aplica directivas de Acceso condicional.
  4. Se redirige al usuario a BIG-IP (SP de SAML) y el inicio de sesión único se realiza mediante el token SAML emitido.
  5. BIG-IP inserta los atributos de Microsoft Entra como encabezados en la solicitud a la aplicación.
  6. La aplicación autoriza la solicitud y devuelve la carga.

Requisitos previos

Para esto, necesita:

  • Una suscripción a Azure
  • Uno de los roles siguientes: Administrador global, Administrador de aplicaciones en la nube o Administrador de aplicaciones
  • Una BIG-IP o la implementación de una instancia de BIG-IP Virtual Edition (VE) en Azure
  • Cualquiera de las siguientes licencias de F5 BIG-IP:
    • F5 BIG-IP® Best bundle
    • Licencia independiente de F5 BIG-IP Access Policy Manager™ (APM).
    • Licencia del complemento F5 BIG-IP Access Policy Manager™ (APM) en una instalación de F5 BIG-IP® Local Traffic Manager™ (LTM)
    • Evaluación gratuita completa de 90 días de BIG-IP. Consulte Evaluaciones gratuitas.
  • Identidades de usuario sincronizadas desde un directorio local en Microsoft Entra ID
  • Un certificado SSL para publicar servicios a través de HTTPS, o use certificados predeterminados durante las pruebas
  • Una aplicación basada en encabezados o una aplicación de encabezados de IIS para pruebas

Método de configuración BIG-IP

Estas instrucciones son un método de configuración avanzado, una manera flexible de implementar SHA. Cree manualmente objetos de configuración BIG-IP. Use este método para escenarios que no se incluyen en las plantillas de configuración guiada.

Nota:

Reemplace las cadenas o valores de ejemplo por los de su entorno.

Sugerencia

Los pasos de este artículo pueden variar ligeramente en función del portal desde donde comienza.

Para implementar SHA, el primer paso es configurar una confianza de federación de SAML entre BIG-IP APM y Microsoft Entra ID. La confianza establece la integración para que BIG-IP traspase la autenticación previa y el Acceso condicional a Microsoft Entra ID antes de conceder acceso al servicio publicado.

Para más información, vea ¿Qué es el acceso condicional?.

  1. Inicie sesión en el Centro de administración de Microsoft Entra como Administrador de aplicaciones en la nube.

  2. Vaya a Identidad> Aplicaciones>aplicaciones para empresas> Todas las aplicaciones.

  3. En la cinta de opciones superior, seleccione Nueva aplicación.

  4. En la galería, busque F5.

  5. Seleccione Integración de Microsoft Entra ID con APM de F5 BIG-IP.

  6. Escriba un nombre para la aplicación.

  7. Seleccione Agregar o crear.

  8. El nombre refleja el servicio.

Configuración del inicio de sesión único de Microsoft Entra

  1. Aparecen las nuevas propiedades de la aplicación F5

  2. Seleccione Administrar>Inicio de sesión único

  3. En la página Seleccione un método de inicio de sesión único, elija SAML.

  4. Omita el aviso para guardar la configuración del inicio de sesión único.

  5. Seleccione No, lo guardaré más adelante.

  6. En Configurar el inicio de sesión único con SAML, para Configuración básica de SAML, seleccione el icono de lápiz.

  7. Reemplace la dirección URL predefinida del identificador por la dirección URL del servicio publicado de BIG-IP. Por ejemplo, https://mytravel.contoso.com.

  8. Repita para URL de respuesta e incluya la ruta de acceso del punto de conexión SAML de APM. Por ejemplo: https://mytravel.contoso.com/saml/sp/profile/post/acs

    Nota:

    En esta configuración, el flujo SAML opera en modo IdP: Microsoft Entra ID emite al usuario una aserción de SAML antes de redirigir al punto de conexión de servicio de BIG-IP para la aplicación. BIG-IP APM es compatible con los modos IdP y SP.

  9. Para el URI de cierre de sesión, ingrese el punto de conexión de cierre de sesión único (SLO) de BIG-IP APM precedido por el encabezado de host de servicios. El URI de SLO garantiza que las sesiones de BIG-IP APM de usuario finalicen después de cerrar la sesión de Microsoft Entra. Por ejemplo, https://mytravel.contoso.com/saml/sp/profile/redirect/slr

    Captura de pantalla de configuración básica de SAML (identificador, dirección URL de respuesta, dirección URL de inicio de sesión, etc).

    Nota:

    A partir del sistema operativo de administración de tráfico (TMOS) v16 en adelante, el punto de conexión de SLO de SAML ha cambiado a /saml/sp/profile/redirect/slo.

  10. Seleccione Guardar.

  11. Salga de la configuración de SAML.

  12. Omita el símbolo del sistema de prueba de SSO.

  13. Para editar Atributos y notificaciones del usuario> + Agregar nueva notificación, seleccione el icono de lápiz.

  14. En Nombre, seleccione Employeeid.

  15. En Atributo de origen, seleccione user.employeeid.

  16. Seleccione Guardar.

Captura de pantalla de la entrada para el atributo Nombre y Origen en el cuadro de diálogo de Administrar notificación.

  1. Seleccione Agregar una notificación de grupo
  2. Seleccione Grupos asignados a la aplicación>Atributo de origen>sAMAccountName.

Captura de pantalla de atributo Origen en el cuadro de diálogo Notificaciones de grupo.

  1. Seleccione Guardar la configuración.
  2. Cierre la vista.
  3. Observe las propiedades de la sección Atributos y notificaciones del usuario. Microsoft Entra ID emite propiedades de usuarios para la autenticación de BIG-IP APM y el SSO para la aplicación back-end.

Captura de pantalla de la información de Atributos de usuario y Notificaciones, como el apellido, dirección de correo electrónico, identidad, etc.

Nota:

Agregue otras notificaciones que la aplicación publicada BIG-IP espera como encabezados. Las notificaciones más definidas se emiten si están en Microsoft Entra ID. Defina pertenencias a directorios y objetos de usuario en Microsoft Entra ID antes de que se puedan emitir notificaciones. Consulte Configuración de notificaciones de grupo para aplicaciones mediante Microsoft Entra ID.

  1. En la sección Certificado de firma de SAML, seleccione Descargar.
  2. El archivo XML de metadatos de federación se guarda en el equipo.

Captura de pantalla del vínculo Descargar para el archivo XML de metadatos de federación en el cuadro de diálogo Certificado de firma de SAML.

Los certificados de firma de SAML creados por Microsoft Entra ID tienen una duración de tres años.

Autorización de Microsoft Entra

De manera predeterminada, Microsoft Entra ID emite tokens a los usuarios en los que se concede acceso a una aplicación.

  1. En la vista de configuración de la aplicación, seleccione Usuarios y grupos.
  2. Seleccione Agregar usuario y, en Agregar asignación, seleccione Usuarios y grupos.
  3. En el cuadro de diálogo Usuarios y grupos, agregue los grupos de usuarios autorizados para acceder a la aplicación basada en encabezados.
  4. Elija Seleccionar.
  5. Seleccione Asignar.

La confianza de federación de SAML de Microsoft Entra está completa. A continuación, configure BIG-IP APM para publicar la aplicación web, configurada con propiedades para completar la confianza de autenticación previa de SAML.

Configuración avanzada

Use las secciones siguientes para configurar SAML, el inicio de sesión único de encabezado, el perfil de acceso, etc.

Configuración de SAML

Cree el proveedor de servicios de SAML de BIG-IP y los objetos de IdP de SAML correspondientes para federar la aplicación publicada con Microsoft Entra ID.

  1. Seleccione Access>Federation>SAML Service Provider>Local SP Services>Create (Acceso > Federación > Proveedor de servicios de SAML > Servicios del SP local > Crear).

    Captura de pantalla de la opción Crear en la pestaña Proveedor de servicio de SAML.

  2. Escriba un nombre.

  3. Escriba un identificador de entidad definido en Microsoft Entra ID.

    Captura de pantalla de la entrada Nombre e Id. de entidad en el cuadro de diálogo Crear nuevo servicio SP de SAML.

  4. En Configuración de nombre de SP, realice selecciones si el identificador de entidad no coincide con el nombre de host de la dirección URL publicada o realiza selecciones si no está en formato de dirección URL normal basada en nombre de host. Proporcione el esquema externo y el nombre de host de la aplicación si el identificador de entidad es urn:mytravel:contosoonline.

  5. Desplácese hacia abajo para seleccionar el nuevo objeto SP de SAML.

  6. Seleccione Bind/UnBind IDP Connectors.

    Captura de pantalla de la opción Bind Unbind IdP Connectors en la pestaña Proveedor de servicios de SAML.

  7. Seleccione Crear nuevo conector de IdP.

  8. En el menú desplegable, seleccione A partir de los metadatos.

    Captura de pantalla de la opción A partir de los metadatos en el menú desplegable Crear nueva conexión de IdP.

  9. Vaya al archivo XML de metadatos de federación que descargó.

  10. Escriba un Nombre de proveedor de identidades para el objeto APM para el IdP de SAML externo. Por ejemplo: MyTravel_EntraID

Captura de pantalla de las entradas Seleccionar archivo y Nombre de proveedor de identidades en Crear nuevo conector de IdP de SAML.

  1. Seleccione Agregar nueva fila.
  2. Seleccione el nuevo conector de IdP de SAML.
  3. Seleccione Actualizar.

Captura de pantalla de la opción Actualizar en Conectores de IdP de SAML.

  1. Selecciona Aceptar.

Captura de pantalla de configuración guardada

Configuración de SSO de encabezado

Cree un objeto SSO de APM.

  1. Seleccione Acceso>Perfiles/Directivas>Directivas por solicitud>Crear.

  2. Escriba un nombre.

  3. Agregue al menos un idioma aceptado.

  4. Seleccione Finalizado.

    Captura de pantalla de la entrada Nombre e Idioma aceptado.

  5. Para la nueva directiva por solicitud, seleccione Editar.

    Captura de pantalla de la opción Editar en la columna Directiva por solicitud.

  6. Se inicia el editor visual de directivas.

  7. En Reserva, seleccione el símbolo +.

    Captura de pantalla de la opción más en reserva.

  8. En la pestaña De uso general, seleccione Encabezados HTTP>Agregar elemento.

    Captura de pantalla de la opción Encabezados HTTP.

  9. Seleccione Agregar nueva entrada.

  10. Cree tres entradas HTTP y de modificación de encabezados.

  11. En Nombre de encabezado, escriba upn.

  12. Para Valor de encabezado, escriba %{session.saml.last.identity}.

  13. En Nombre de encabezado, escriba employeeid.

  14. En Valor de encabezado, escriba %{session.saml.last.attr.name.employeeid}.

  15. En Nombre de encabezado, escriba group_authz.

  16. En Valor de encabezado, escriba%{session.saml.last.attr.name.http://schemas.microsoft.com/ws/2008/06/identity/claims/groups}.

Nota:

Las variables de sesión de APM entre llaves distinguen entre mayúsculas y minúsculas. Se recomienda definir atributos en minúsculas.

Captura de pantalla de la entrada de encabezado, en modificación del encabezado HTTP, en la pestaña Propiedades.

  1. Seleccione Guardar.
  2. Cierre el editor de directivas visuales.

Captura de pantalla del editor de directivas visuales.

Configuración del perfil de acceso

Un perfil de acceso enlaza numerosos elementos de APM que administran el acceso a los servidores virtuales de BIG-IP, incluidas las directivas de acceso, la configuración de inicio de sesión único y la configuración de la interfaz de usuario.

  1. Seleccione Acceso>Perfiles/Directivas>Perfiles de acceso (Directivas por sesión).>Crear.

  2. En Nombre, escriba MyTravel.

  3. En Tipo de perfil, seleccione Todos.

  4. En Idioma aceptado, seleccione al menos un idioma.

  5. seleccione Finalizado.

    Captura de pantalla de las entradas Nombre, Tipo de perfil e Idioma aceptado.

  6. Seleccione Edit (Editar) en el perfil por sesión que creó.

    Captura de pantalla de la opción Editar en la columna Directiva por sesión.

  7. Se inicia el editor visual de directivas.

  8. En reserva, seleccione el símbolo +.

    Captura de pantalla de la opción más.

  9. Seleccione Autenticación>Autenticación SAML>Agregar elemento.

    Captura de pantalla de la opción SAML Auth (Autenticación de SAML) en la pestaña Authentication (Autenticación).

  10. En la configuración del proveedor de servicios de la autenticación SAML, seleccione la opción Servidor AAA para usar el objeto SP de SAML que ha creado.

  11. Seleccione Guardar.

Captura de la selección Servidor AAA.

Asignación de atributos

Las instrucciones siguientes son opcionales. Con una configuración de LogonID_Mapping, la lista de sesiones activas de BIG-IP tiene el nombre principal de usuario (UPN) del usuario que ha iniciado sesión, no un número de sesión. Use estos datos al analizar registros o solucionar problemas.

  1. Para la rama Correcto de la autenticación de SAML, seleccione el símbolo +.

    Captura de pantalla del símbolo más en la rama Correcto de la autenticación de SAML.

  2. En el menú emergente, seleccione Asignación>Asignación de variables>Agregar elemento.

    Captura de pantalla de la opción Asignación de variables en la pestaña Asignación.

  3. Escriba un nombre.

  4. En la sección Asignación de variables, seleccione Agregar nueva entrada>cambiar. Por ejemplo, LogonID_Mapping.

    Captura de pantalla de las opciones Agregar nueva entrada y Cambiar.

  5. En Variable personalizada, establezca session.saml.last.identity.

  6. En Variable de sesión, establezca session.logon.last.username.

  7. Seleccione Finished (Finalizado).

  8. Seleccione Guardar.

  9. En la rama Correcto de la directiva de acceso, seleccione el terminal Denegar.

  10. seleccione Permitir.

  11. Seleccione Guardar.

  12. Seleccione Aplicar directiva de acceso.

  13. Cierre el editor de directivas visuales.

Configuración del grupo de back-end

Para habilitar BIG-IP para reenviar el tráfico del cliente correctamente, cree un objeto de nodo de APM que representa el servidor back-end que hospeda la aplicación. Coloque el nodo en un grupo de APM.

  1. Seleccione Tráfico local > Grupos > Lista de grupos > Crear.

  2. Para un objeto de grupo de servidores, escriba un Nombre. Por ejemplo, MyApps_VMs.

    Captura de pantalla de la opción Aplicar directiva de acceso.

  3. Agregue un objeto miembro del grupo.

  4. En Nombre del nodo, escriba un nombre para el servidor que hospeda la aplicación web back-end.

  5. En Dirección, escriba la dirección IP del servidor que hospeda la aplicación.

  6. En Puerto de servicio, escriba el puerto HTTP/S en el que escucha la aplicación.

  7. Seleccione Agregar.

    Captura de pantalla de las entradas Nombre del nodo, Dirección y Puerto de servicio y la opción Agregar.

Configuración del servidor virtual

Un servidor virtual es un objeto del plano de datos de BIG-IP representado por una dirección IP virtual que escucha las solicitudes de los clientes a la aplicación. Cualquier tráfico recibido se procesa y evalúa con el perfil de acceso del APM asociado al servidor virtual. El tráfico se dirige según la directiva.

  1. Seleccione Local Traffic (Tráfico local) >Virtual Servers (Servidores virtuales) >Virtual Server List (Lista de servidores virtuales) >Crear.

  2. Escriba un Nombre de servidor virtual.

  3. En Dirección o máscara de destino, seleccione Host

  4. Escriba una dirección IP IPv4 o IPv6 sin usar que se asignará a BIG-IP para recibir tráfico de cliente.

  5. En Puerto de servicio, seleccione Puerto, 443 y HTTPS.

    Captura de pantalla de las entradas Nombre, Dirección o máscara de destino y Puerto de servicio.

  6. En Perfil HTTP (cliente), seleccione http.

  7. En Perfil SSL (cliente),, seleccione el perfil SSL de cliente que ha creado o deje el valor predeterminado para las pruebas.

    Captura de pantalla de las entradas Cliente de perfil HTTP y Cliente de perfil SSL.

  8. En Traducción de direcciones de origen, seleccione Asignación automática.

    Captura de pantalla de la opción Traducción de direcciones de origen.

  9. En Directiva de acceso, seleccione el Perfil de acceso creado anteriormente. Esta acción enlaza el perfil de autenticación previa de SAML de Microsoft Entra ID y la directiva de inicio de sesión único con autenticación basada en encabezados al servidor virtual.

  10. En Directiva por solicitud, seleccione SSO_Headers.

Captura de pantalla de entradas de Perfil de acceso y Directiva de solicitud previa.

  1. En Grupo predeterminado, seleccione los objetos de grupo de back-end que ha creado.
  2. Seleccione Finished (Finalizado).

Captura de pantalla de la opción Grupo predeterminado en Recursos.

Administración de sesiones

Use la configuración de administración de sesiones de BIG-IP para definir las condiciones para la finalización o continuación de la sesión del usuario. Cree una directiva con Directiva de acceso>Perfiles de acceso. Seleccione una aplicación de la lista.

Con respecto a la funcionalidad de SLO, un URI de SLO en Microsoft Entra ID garantiza que un cierre de sesión iniciado por IdP desde el portal MyApps finaliza la sesión entre el cliente y el APM de BIG-IP. El metadata.xml importado de federación de la aplicación proporciona a APM el punto de conexión de cierre de sesión SAML de Microsoft Entra para el cierre de sesión iniciado por SP. Por tanto, habilite APM para saber cuándo un usuario cierra la sesión.

Si no hay ningún portal web de BIG-IP, el usuario no puede indicar al APM que cierre la sesión. Si el usuario cierra la sesión de la aplicación, BIG-IP omite a la acción. La sesión de aplicación se puede restablecer a través del inicio de sesión único. Por tanto, el cierre de sesión iniciado por SP necesita atención especial.

Para asegurarse de que las sesiones finalicen de forma segura, agregue una función SLO al botón Cerrar sesión de la aplicación. Habilite esta opción para redirigir el cliente al punto de conexión de cierre de sesión de SAML de Microsoft Entra. Para el punto de conexión de cierre de sesión de SAML para el inquilino, vaya a Registros de aplicaciones>Puntos de conexión.

Si no puede cambiar la aplicación, habilite BIG-IP para escuchar la llamada de cierre de sesión de la aplicación y desencadenar el SLO. Para obtener más información:

Implementar

  1. Seleccione Implementar para confirmar la configuración.
  2. Compruebe que la aplicación aparece en el inquilino.
  3. La aplicación se publica y es accesible a través de SHA, con su dirección URL o portales de Microsoft.

Prueba

Realice la siguiente prueba como usuario.

  1. Como usuario, seleccione la dirección URL externa de la aplicación o, en el portal MyApps, seleccione el icono de la aplicación.

  2. Autentíquese en Microsoft Entra ID.

  3. Se le redirigirá al servidor virtual BIG-IP para la aplicación y se inicia sesión con el SSO.

  4. La salida del encabezado insertado aparece cerca de la aplicación basada en encabezados.

    Captura de pantalla de las variables de servidor, como UPN, identificador de empleado y Autorización de grupo.

Para aumentar la seguridad, bloquee el acceso directo a la aplicación, forzando una ruta a través de BIG-IP.

Solución de problemas

Use estas instrucciones para solucionar problemas.

Nivel de detalle del registro

Los registros de BIG-IP tienen información para ayudar a aislar los problemas de autenticación y SSO. Aumentar el nivel de detalle del registro:

  1. Vaya a Directiva de acceso>Información general>Registros de eventos.
  2. Haga clic en Configuración.
  3. Seleccione la fila de la aplicación publicada.
  4. Seleccione Editar> Acceder a los registros del sistema.
  5. Seleccione Depurar en la lista de inicio de sesión único.
  6. Selecciona Aceptar.
  7. Reproduzca el problema.
  8. Revise los registros.
  9. Cuando termine, revierta la configuración.

Mensaje de error de BIG-IP

Si aparece un error de BIG-IP después del redireccionamiento, el problema podría estar relacionado con el inicio de sesión único de Microsoft Entra ID a BIG-IP.

  1. Vaya aDirectiva de acceso>Información general.
  2. Seleccione Informes de acceso.
  3. Ejecute el informe durante la última hora.
  4. Revise los registros para encontrar pistas.
  5. En la sesión, seleccione el vínculo Ver variables de sesión.
  6. Compruebe que APM reciba las notificaciones esperadas de Microsoft Entra ID.

No hay ningún mensaje de error de BIG-IP

Si no aparece un mensaje de error de BIG-IP, el problema probablemente esté más relacionado con el inicio de sesión único desde BIG-IP a la aplicación de back-end.

  1. Vaya aDirectiva de acceso>Información general.
  2. Seleccionar Sesiones activas.
  3. Seleccione el vínculo de la sesión activa.
  4. Seleccione el vínculo Ver variables para determinar los problemas de SSO.
  5. Confirme que BIG-IP APM produce un error o se realiza correctamente para obtener los identificadores de usuario y dominio correctos.

Más información:

Recursos