Note:

Configurar Single Sign-On y el aprovisionamiento de usuarios entre OCI IAM y JumpCloud

Introducción

Al configurar Single Sign-On (SSO) entre Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) y JumpCloud, los administradores de OCI pueden conectarse sin problemas a la consola de OCI mediante sus credenciales JumpCloud. Además, con el aprovisionamiento de usuarios a través de API RESTful, se puede lograr la sincronización de usuario en tiempo real de JumpCloud a OCI.

En este tutorial se muestra cómo se puede integrar OCI IAM con JumpCloud mediante la configuración de una federación de lenguaje de marcado de afirmación de seguridad (SAML) y un sistema para la gestión de identidad entre dominios (SCIM) 2.0.

Federación de OCI IAM con JumpCloud (arquitectura).

Además, una vez que se establece SSO y se sincronizan las identidades, se pueden definir políticas de OCI IAM para configurar controles de acceso a varios recursos de OCI. Para obtener más información, consulte Introducción a las políticas y Profundización en las políticas de Oracle Cloud Infrastructure Identity and Access Management basadas en etiquetas.

Nota: este tutorial es específico de OCI IAM con dominios de identidad.

Objetivos

Requisitos

Nota: Hemos notado inconsistencias en las acciones de creación/actualización de usuarios al utilizar la oferta de OCI en las integraciones JumpCloud. Por lo tanto, para el propósito de este tutorial, vamos a utilizar la aplicación personalizada en su lugar.

Sección 1: Configuración de SSO basado en SAML para Access Management

JumpCloud actúa como proveedor de identidad (IdP), autenticando usuarios y transfiriendo tokens de autenticación de forma segura a OCI IAM, que funciona como proveedor de servicios (SP). Para configurar la federación de SAML, los metadatos deben ser intercambiados por ambas partes.

Tarea 1.1: Obtención de metadatos del proveedor de servicios desde OCI IAM

Los metadatos del SP del dominio de identidad de OCI IAM se exportan primero.

  1. Abra un separador del explorador e introduzca la URL: https://cloud.oracle.com.

  2. Introduzca Nombre de cuenta de nube, también conocido como el nombre de arrendamiento, y haga clic en Siguiente.

  3. Seleccione el dominio de identidad al que desea conectarse. Este es el dominio de identidad que se utiliza para configurar la conexión única, por ejemplo Default.

  4. Introduzca las credenciales de administrador para conectarse a la consola de OCI.

  5. Vaya a Identidad y seguridad, vaya a Identidad y haga clic en Dominios.

    Navegación a dominios.

  6. Haga clic en el nombre del dominio de identidad. Si el dominio no está visible, cambie el compartimento para buscar el dominio adecuado.

    Selección del dominio.

  7. Haga clic en Seguridad, Proveedores de identidad y Exportar metadatos de SAML.

    Navegación a los metadatos del SP.

  8. Seleccione Archivo de metadatos. En Metadata with self-signed certificates, haga clic en Download XML y guarde este archivo XML localmente en la computadora, estos son los metadatos del SP.

    Descargando metadatos del SP.

Tarea 1.2: Creación de una aplicación SSO

La aplicación SSO se crea en el portal JumpCloud para representar la consola de OCI.

  1. En el explorador, conéctese al portal JumpCloud mediante la URL: https://console.jumpcloud.com/login

  2. En Autenticación de usuario, seleccione Aplicaciones SSO y haga clic en Introducción.

    Aplicaciones de la consola de administración JumpCloud.

  3. En Aplicación personalizada, haga clic en Seleccionar y, a continuación, en Siguiente.

    Buscando aplicación personalizada.

  4. Seleccione Gestionar conexión única (SSO) y, a continuación, Configurar SSO con SAML. Seleccione Exportar usuarios a esta aplicación (Identity Management) y haga clic en Siguiente.

    Selección de SSO y Identity Management.

  5. Introduzca un nombre en Etiqueta de visualización (por ejemplo, OCI Console) y haga clic en Guardar aplicación. A continuación, haga clic en Configurar aplicación.

    Actualización de detalles de solicitud.

Tarea 1.3: Configuración de la aplicación SSO

La configuración de SSO es necesaria en la aplicación personalizada recién creada.

  1. En el separador SSO, en Service Provider Metadata, haga clic en Upload Metadata (Cargar metadatos) y seleccione el archivo de metadatos del SP guardado en la tarea 1.1.8.

    Cargando metadatos del SP.

  2. Si el ID de entidad del SP y las URL de ACS se rellenan automáticamente, el archivo XML se analizó correctamente.

    En JumpCloud Metadata, haga clic en Export Metadata (Exportar metadatos) y guarde este archivo XML localmente en la computadora. Estos son los metadatos IdP. Una vez hecho esto, haga clic en Guardar.

    Exportando metadatos IdP.

Tarea 1.4: Activar JumpCloud como IdP para OCI IAM

Se crea un nuevo IdP que representa JumpCloud. Una vez hecho esto, la política IdP se configura para activar la autenticación SSO.

  1. En la consola de OCI, vaya al dominio, seleccione Seguridad y haga clic en Proveedores de identidad.

  2. Seleccione Agregar IdP y haga clic en Agregar SAML IdP.

    Agregando SAML IdP.

  3. Introduzca un nombre (por ejemplo, JumpCloud) para el IdP de SAML y haga clic en Siguiente.

    Introduzca el nombre IdP.

  4. Asegúrese de seleccionar Importar metadatos IdP. En Cargar metadatos de proveedor de identidad, cargue los metadatos IdP de la tarea 1.3.2 y haga clic en Siguiente.

    Importando metadatos de IDP.

  5. En Asignar identidad de usuario, introduzca la siguiente información y haga clic en Siguiente.

    • Formato NameID solicitado: seleccione Ninguno.
    • Atributo de usuario de proveedor de identidad: seleccione ID de nombre de afirmación de SAML.
    • Atributo de usuario de dominio de identidad: seleccione Nombre de usuario.

    Atributos de proveedor de identidad SAML.

  6. En Revisar y crear, verifique la configuración y haga clic en Crear IdP.

    Revisión de la configuración.

  7. Haga clic en Activar y, a continuación, en Agregar a política IdP.

    Activando IdP.

    Nota: Inicialmente, solo hay una política por defecto IdP presente en un dominio que no tiene ninguna aplicación asociada. Básicamente, esto significa que todas las aplicaciones están dentro del ámbito de esta política, incluida la consola de OCI. Si el dominio tiene políticas IdP personalizadas que se dirigen a aplicaciones específicas por separado, asegúrese de agregar las reglas según sea necesario para dirigirse a la consola de OCI. Tenga cuidado, ya que cualquier configuración incorrecta puede provocar un bloqueo.

  8. Haga clic en Crear política IdP.

    Creando política IdP.

  9. En Agregar política, introduzca Nombre (por ejemplo, OCI Console) y haga clic en Agregar política.

    introduciendo nombre.

  10. En Agregar reglas de proveedor de identidad, haga clic en Agregar regla IdP e introduzca Nombre de regla. Por ejemplo, OCI Console access rule.

    En Asignar proveedores de identidad, seleccione Nombre de usuario-Contraseña y JumpCloud. Una vez hecho esto, haga clic en Agregar regla IdP y, a continuación, en Siguiente.

    Definir regla.

    Nota: La opción Nombre de usuario-Contraseña se agrega para conservar la autenticación local. Esto evita un bloqueo en caso de que haya problemas en la configuración de federación.

  11. Haga clic en Agregar aplicación, busque y seleccione Consola de OCI en la lista. Haga clic en Agregar aplicación y, a continuación, en Cerrar.

    Selección de la aplicación OCI Console.

Sección 2: Configuración del aprovisionamiento de usuarios basado en SCIM 2.0

La gestión del ciclo de vida del usuario se configura entre JumpCloud y OCI IAM, donde JumpCloud actúa como almacén de identidades. Asegúrese de que todos los usuarios destinados al aprovisionamiento descendente tienen valores adecuados rellenados para los siguientes atributos:

Nota: La asignación del correo electrónico de la compañía al nombre de usuario garantiza la coherencia en el asunto/NameID de SAML y es necesaria para que funcione el inicio de sesión único. Por ejemplo:

<saml2:Subject><saml2:NameID Format="urn:oasis:names:tc:SAML:1.0:nameid-format:unspecified">XXX+test4@oracle.com</saml2:NameID> 

Tarea 2.1: Creación de una aplicación confidencial en OCI IAM y generación de un token secreto

Un cliente OAuth 2.0 está registrado en OCI IAM. Se activan los flujos adecuados y se otorgan privilegios. Se recopilan las credenciales para este cliente.

  1. Vaya a la consola de OCI, vaya a Dominios y seleccione el dominio que se utilizó en la sección 1.

  2. Vaya a Aplicaciones integradas, seleccione Agregar aplicación, Aplicación confidencial y haga clic en Iniciar flujo de trabajo.

    Flujo de trabajo de la aplicación confidencial.

  3. Introduzca Nombre (por ejemplo, SCIMclient) para la aplicación confidencial y haga clic en Siguiente.

  4. En la sección Configuración de cliente, seleccione Configurar esta aplicación como cliente ahora y, en Autorización, seleccione Credenciales de cliente.

    Configuración de cliente OAuth 2.0.

  5. Seleccione Agregar roles de aplicaciones y haga clic en Agregar roles. En la página Agregar roles de aplicación, seleccione Administrador de usuarios y haga clic en Agregar.

    Selección de rol de aplicación.

  6. Haga clic en Siguiente y, a continuación, en Terminar.

  7. Haga clic en Activar para activar la nueva aplicación.

    Active el cliente.

  8. En la sección Información general, anote el ID de cliente y el secreto de cliente y seleccione Mostrar secreto para mostrar el texto sin formato.

    Credenciales.

  9. El token secreto es la codificación en base64 de clientID y clientsecret.

    • Para Windows, abra PowerShell y ejecute el siguiente comando para generar la codificación base64.

      [Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes('client_id:secret')) 
    • Para MacOS, utilice Terminal para ejecutar el siguiente comando.

      echo -n <clientID>:<clientsecret> | base64 

      Se devolverá el token secreto. Por ejemplo:

      echo -n 392357752xxxx7523923457437:3454-9853-7843-3554 | base64 Nk0NzUyMzxxxxxxxxxxxxxxxMzMtNTQzNC05ODc4LTUzNQ== 

    Terminal.

  10. Anote el token secreto.

Tarea 2.2: Búsqueda del GUID de OCI IAM

El cliente necesita los detalles del punto final de SCIM para realizar llamadas de API.

  1. Vaya a la consola de OCI, vaya a Dominios y seleccione el dominio que se utilizó en la sección 1.

  2. Seleccione Copiar junto a la URL de dominio en Información de dominio y anote esto. Debería tener un aspecto similar al siguiente:

    https://<IdentityDomainID>.identity.oraclecloud.com:443 
  3. Agregue /admin/v1 al final de la URL. La URL final debe tener este aspecto:

    https://<IdentityDomainID>.identity.oraclecloud.com:443/admin/v1 
  4. Anote la URL.

Tarea 2.3: Configuración de Identity Management en la aplicación JumpCloud

Vaya a JumpCloud, se rellenan el punto final de SCIM y las credenciales OAuth 2.0.

  1. Abra la aplicación SSO creada en la tarea 1.1.2 y vaya a Identity Management.

  2. Introduzca la siguiente información y haga clic en Probar conexión.

    • Tipo de API: seleccione API de SCIM.
    • Versión de SCIM: seleccione SCIM 2.0.
    • URL base: introduzca la URL base de la tarea 2.2.4.
    • Clave de token: introduzca el token secreto generado a partir de la tarea 2.1.10.
    • Correo electrónico de usuario de prueba: introduzca un correo electrónico para un usuario en el directorio JumpCloud.

    Probando conexión.

    Nota: Si la conexión se realiza correctamente, estará disponible la personalización del atributo de usuario de SCIM. Los grupos se sincronizan con OCI por defecto, pero esto se puede cambiar activando OFF en Gestión de grupos.

  3. En Nombre de atributo de SCIM, haga clic en + Agregar atributo para crear las asignaciones de atributos basadas en la siguiente imagen. Una vez hecho esto, haga clic en Activar.

    Activando conexión.

  4. Debe haber una notificación sobre la conexión que se está verificando. Haga clic en Guardar.

    Guardando conexión.

Tarea 2.4: Asignación de grupos a la aplicación JumpCloud

Nota: Como requisito previo, cree los grupos para los administradores de OCI en JumpCloud antes de continuar.

Ahora, los grupos que necesitan acceso a los recursos de Oracle están alineados para el aprovisionamiento.

  1. Abra la aplicación SSO y vaya al separador Grupos de usuarios.

  2. Seleccione los grupos que se deben aprovisionar en OCI y haga clic en Guardar.

    Selección de grupo.

Sección 3: Prueba y validación

Nota: para que funcione SSO, la cuenta de usuario SSO debe estar presente tanto en OCI IAM como en JumpCloud.

Finalmente, se validan las identidades sincronizadas y se pone a prueba la autenticación federada.

  1. Abra uno de los usuarios de JumpCloud y de la consola de OCI para validar que los detalles coinciden.

    Consola de JumpCloud.

    La consola de OCI.

  2. Repita el mismo proceso para validar que los grupos están sincronizados.

    Consola de JumpCloud.

    La consola de OCI.

Nota: Ahora que las identidades están sincronizadas, validaremos la conexión SSO.

  1. En una nueva ventana del explorador, abra la consola de OCI. Introduzca Nombre de cuenta de nube, también conocido como el nombre de arrendamiento, y haga clic en Siguiente.

  2. Seleccione el dominio de identidad en el que se ha configurado la federación JumpCloud.

  3. En la página Conexión a cuenta de Oracle Cloud, seleccione JumpCloud. Debe haber una redirección a la página de conexión JumpCloud.

    Página de conexión de OCI IAM

  4. Introduzca las credenciales JumpCloud para el usuario federado. Tras la autenticación correcta, debe haber una redirección a la consola de OCI.

Conclusión

Esta integración elimina la necesidad de que los administradores gestionen credenciales de OCI independientes, mejorando la seguridad y simplificando la gestión de acceso. Esto también ayuda en la gestión de identidades, reduciendo la sobrecarga administrativa y eliminando la redundancia.

Agradecimientos

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.

Para obtener documentación sobre el producto, visite Oracle Help Center.