Saltar a contenido

Guía

Habilite fácilmente el inicio de sesión único (Single Sign-On) centralizado para su organización con la integración de SAML 2.0. Los miembros de su organización pueden iniciar sesión en Ostorlab con su correo electrónico del trabajo.

SAML Integration Overview

Para ver un ejemplo específico, consulte una de nuestras guías de integración:

Terminología

  • IdP significa proveedor de identidad (Identity Provider). Un IdP es un servicio que actúa como un directorio de usuarios.
  • SP significa proveedor de servicios (Service Provider). Un proveedor de servicios depende de un proveedor de identidad para la autenticación.
  • IdP Metadata XML es el documento de configuración XML proporcionado por su IdP. Contiene información pública sobre su directorio de usuarios, que el proveedor de servicios puede usar para realizar solicitudes de autenticación.

Propiedades de configuración

Las siguientes son las únicas propiedades que realmente configurará cuando establezca el SSO de SAML con su IdP.

Nombre Otros nombres Requerido
Single sign on URL AssertionConsumerService (ACS) URL
Entity ID Metadata o Audience URL
Default relay state Start o Application Start URL No
Name identifier format Name Identifier, Name, Name ID format

Entity ID

Requerido

El Entity ID (SP) es una URL donde un proveedor de servicios publica información pública sobre su configuración de SAML. El documento de metadatos publicado por el proveedor de servicios muestra su certificado público que se puede utilizar para verificar la firma de las solicitudes de autenticación iniciadas desde el propio servicio.

Nota: El IdP también tiene un Entity ID. Sin embargo, el Entity ID del IdP se utiliza para identificar de forma exclusiva al inquilino/organización específico dentro de ese IdP. Cuando configure el SSO de SAML, casi siempre se le pedirá que ingrese el Entity ID del SP, que será específico para su organización en Ostorlab.

URL de Assertion Consumer Service (ACS) / URL de Single Sign On

Requerido

Esta es la URL donde el IdP puede hacer POST de las aserciones SAML.

Enlace de Assertion Consumer Service

Requerido

Identifica la vinculación de protocolo compatible con el ACS. Las vinculaciones describen cómo el IdP (o el navegador en algunos casos) empaqueta la aserción y cualquier contenido adjunto para que el ACS los consuma.

Formato de Name ID

Requerido

El Name ID format es uno de los aspectos más importantes de su configuración de SSO de SAML. Define cómo un proveedor de identidad identifica a un usuario en el servicio descendente. El valor del formato define qué valor se utilizaría para el Asunto (Subject) del usuario.

Importante: Una vez que su Name ID format esté configurado y sus usuarios hayan comenzado a usar el SSO, NO cambie el identificador de nombre. Eso evitará que sus usuarios puedan iniciar sesión.

Relay State (Por defecto)

El Relay State es una URL, que en sí misma se pasa como un parámetro de consulta en las solicitudes de SSO iniciadas por el proveedor de identidad. Esta es una propiedad opcional. Esto también se conoce como enlace profundo (deep-linking). Esto permite a un usuario navegar directamente a un servicio descendente iniciando la aplicación desde el propio proveedor de identidad.

Uso:

Configure su integración SAML:

  1. Haga clic en el botón de la barra lateral Sidebar Button
  2. Haga clic en Integrations/API para expandir Integrations Navigation
  3. Haga clic en Integrations
  4. Haga clic en la integración de SAML SAML Integration Selection

Desde el menú de integraciones Saml, seleccione la pestaña de configuración y complete los siguientes valores: SAML Configuration Tab SAML Configuration Tab 1. Idp Identifier : URI - Identificador de la entidad IdP: ej. https://your_domain.com/saml/metadata/connector_id IdP Identifier 2. SAML 2.0 Endpoint : URL de destino del IdP donde se enviará el mensaje de solicitud de autenticación (Authentication Request Message); ej., https://your_domain.com/saml2/http-post/sso/connector_id SAML 2.0 Endpoint 3. X.509 Certificate : Certificado público X.509 del IdP. X.509 Certificate X.509 Certificate

En su configuración del identificador SAML, asegúrese de usar las siguientes configuraciones para el Proveedor de servicios de Ostorlab (Service provider of Ostorlab):

  • Entity Id: https://api.ostorlab.co/saml/metadata/
  • AssertionConsumerService URL: https://api.ostorlab.co/saml/acs/?org=<organisation_prefix>

    <organisation_prefix> en la URL es donde se debe ingresar el prefijo de su organización Ostorlab. Puede encontrar el prefijo de su organización en la página de configuración de su organización.

  • Assertion Consumer Service Binding: urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
  • NameIDFormat: urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

Para las cuentas existentes, los usuarios deben incluir en la lista blanca (whitelist) al proveedor de identidad para habilitar el inicio de sesión mediante el SSO. Para hacerlo:

  1. Vaya al menú de Seguridad de la cuenta (Account security). Account Security Menu Account Security Menu Account Security Menu
  2. En el submenú de Single Sign-On, seleccione la organización de la lista de proveedores de identidad admitidos. Single Sign-On Sub-menu Single Sign-On Sub-menu

Los nuevos accesos sin una cuenta existente aprovisionarán automáticamente una nueva cuenta con el acceso adecuado a la organización de SSO.

Solución de problemas

Error de validación al intentar guardar un XML de metadatos proporcionado por el IdP

El XML de metadatos proporcionado por el IdP contiene varios elementos XML, de los cuales <IDPSSODescriptor> es el elemento que concierne a Ostorlab. En el IDPSSODescriptor, esperamos ver un certificado de clave pública KeyDescriptor válido, un NameIDFormat, un Entity ID que identifique a su organización en el IdP y una vinculación de SSO (SSO binding).

La falla se debe típicamente a una de las siguientes razones:

  • XML malformado
  • El certificado de clave pública KeyDescriptor en el IDPSSODescriptor ha caducado
  • Falta el certificado de clave pública KeyDescriptor en el IDPSSODescriptor
  • NameIDFormat no tiene el valor esperado o falta por completo. Consulte el siguiente tema de solución de problemas para obtener ayuda al respecto.

    Consejo: OneLogin tiene un conjunto de herramientas gratuitas relacionadas con SAML.

El Name ID Format no es válido

Como se mencionó en la sección Name ID Format, Ostorlab espera valores específicos en el XML de metadatos de su IdP. Use el XML Pretty Print de One Login para dar formato a su XML y busque <NameIDFormat> debajo del elemento XML <IDPSSODescriptor>.

Si no puede encontrar un elemento llamado NameIDFormat, agregue la siguiente línea inmediatamente después de la etiqueta de cierre de KeyDescriptor:

<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat>

Aquí hay un XML de metadatos de muestra. Tenga en cuenta que se eliminaron algunos valores por brevedad.

<?xml version="1.0" encoding="UTF-8"?>
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" entityID="...">
  <md:IDPSSODescriptor WantAuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
    <md:KeyDescriptor use="signing">
      ....
    </md:KeyDescriptor>
    <!--
        En este ejemplo, todos los elementos tienen un espacio de nombres de `md`. Es por eso que NameIDFormat tiene un prefijo de `md:`.
        Si los elementos de su XML no tienen el prefijo, entonces puede omitirlo.
    -->
    <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat>
    <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="..."/>
    <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="..."/>
  </md:IDPSSODescriptor>
</md:EntityDescriptor>

No se encontró una vinculación de SSO en el XML. Comuníquese con su proveedor de SSO.

Este error ocurre cuando el XML de metadatos que está intentando guardar no tiene elementos <SingleSignOnService> debajo de <IDPSSODescriptor>. Ostorlab usa el <SingleSignOnService> para determinar el mecanismo de autenticación compatible con el IDP. Obtenga más información sobre las vinculaciones SAML 2.0 (SAML 2.0 Bindings) en Wikipedia. Debe comunicarse con el soporte de su IdP o con su administrador del sistema para corregir el XML de metadatos.

Aquí hay un ejemplo de una vinculación SSO para HTTP-POST:

<md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="..."/>

Nota: El atributo Location es exclusivo para cada inquilino (tenant) en su IDP.