Nota:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse para obtener una cuenta gratuita, consulte Introducción al nivel gratuito de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para las credenciales, el arrendamiento y los compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por otros específicos de su entorno en la nube.
Configuración del aprovisionamiento justo a tiempo para el IDP basado en SAML en IDCS/dominios de identidad
Introducción
El aprovisionamiento Just-In-Time (JIT) basado en SAML ayuda a automatizar la creación de identidades por parte del usuario en Identity Cloud Service para nuevos usuarios. Las cuentas de usuario se crean cuando el usuario intenta acceder a la aplicación de destino mediante SSO. Además de la creación de usuarios, JIT también puede otorgar y revocar afiliaciones a grupos como parte del aprovisionamiento. JIT también se puede utilizar para actualizar los usuarios aprovisionados mediante la asignación de los atributos de origen (Proveedor de servicios - SP) a Proveedor de identidad - IDP.
Al activar el aprovisionamiento de JIT para el proveedor de identidad con IDCS, podrá gestionar los usuarios de forma más eficaz y le ayudará a reducir el costo de administración de la sincronización manual de los usuarios.
Ventajas del Uso del Aprovisionamiento de JIT
-
Para usuarios consumidores en los que no desea cargar todos los usuarios en Identity Management Cloud Service (IDCS) inicialmente, pero desea crearlos sobre la marcha cuando los usuarios intenten conectarse.
-
Reducir el costo de administración ya que los usuarios no necesitan crearse manualmente en IDP.
Objetivo
Configure el aprovisionamiento justo a tiempo para el IDP basado en SAML en IDCS/dominios de identidad mediante las API de REST.
Nota: Si su arrendamiento ya se ha migrado a dominios de identidad y desea realizar esta configuración mediante la consola, consulte el siguiente enlace: Adición de un SAML justo a tiempo IdP.
Requisitos
-
IDCS debe tener un nivel de licencia estándar para utilizar la función de aprovisionamiento de JIT. JIT está disponible en todos los tipos de dominio cuando se utilizan dominios de identidad sujetos a límites de objetos para cada nivel. Para obtener más información, consulte Descripción de tipos de dominios de identidad.
-
La función de aprovisionamiento de JIT de IDCS está desactivada por defecto y se debe activar mediante la solicitud de servicio de Oracle.
-
IDP se debe configurar con IDCS/dominio de identidad para inicio de sesión único mediante SAML. Para obtener más información, consulte Adición de un proveedor de identidad.
-
Cuenta de usuario de dominio de identidad/IDCS con privilegios de administrador de seguridad.
-
Configure Postman para utilizar puntos finales de REST de Oracle Identity Cloud Service/dominios de identidad. Para obtener más información, consulte Uso de las API de REST de Oracle Identity Cloud Service con Postman.
Tarea 1: Recuperar la lista de proveedores de identidad configurados en el arrendamiento de dominios de identidad/IDCS
-
Utilice el siguiente punto final de REST: https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders (Operación GET) y busque el ID del IDP para el que desea activar el aprovisionamiento de JIT.
Salida de ejemplo:
Tarea 2: Recuperar los detalles del IDP de SAML configurado
Recupere los detalles del IDP de SAML configurado en el que desea activar el aprovisionamiento de JIT mediante el ID de proveedor ubicado de la tarea 1.
-
Utilice el siguiente punto final de REST: https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders/{IDP Provider ID} (operación GET).
Salida de ejemplo:
Tarea 3: Actualizar la configuración del proveedor de IDP para activar el aprovisionamiento de JIT
Actualice la configuración del proveedor de IDP para activar el aprovisionamiento de JIT para su IDP de SAML mediante una operación PATCH.
- Utilice el siguiente punto final de REST: https://idcs-xxxx.identity.oraclecloud.com/admin/v1/IdentityProviders/{IDP Provider ID} (operación PATCH).
Nota:
- El siguiente fragmento de código de ejemplo es solo de referencia y se recomienda consultar la documentación de Oracle para obtener más información sobre cada atributo antes de activarlos.
- Los grupos se deben crear previamente en IDCS si desea agregar afiliaciones a grupos.
Cuerpo de la muestra:
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "replace",
"path": "jitUserProvEnabled",
"value": true
},{
"op": "replace",
"path": "jitUserProvCreateUserEnabled",
"value": true
},
{
"op": "replace",
"path": "jitUserProvAttributeUpdateEnabled",
"value": true
},
{
"op": "replace",
"path": "jitUserProvGroupAssertionAttributeEnabled",
"value": false
},
{
"op": "replace",
"path": "jitUserProvGroupSAMLAttributeName",
"value": "groups"
},
{
"op": "replace",
"path": "jitUserProvGroupAssignmentMethod",
"value": "Overwrite"
}
]
}
La siguiente tabla describe las propiedades de IDP mencionadas anteriormente.
Propiedad de proveedor de identidad | Descripción |
---|---|
jitUserProvEnabled | Propiedad booleana para activar/desactivar la función de aprovisionamiento de JIT de SAML para el IDP configurado. |
jitUserProvCreateUserEnabled | Propiedad booleana para la creación de usuarios, basada en la afirmación entrante, si el usuario aún no existe. |
jitUserProvAttributeUpdateEnabled | Propiedad booleana para la actualización de usuario basada en la afirmación entrante si el usuario ya existe. |
jitUserProvGroupAssertionAttributeEnabled | Propiedad booleana que indica si se deben asignar afiliaciones a grupos al usuario según una lista de nombres de grupo recibidos del IDP en un atributo SAML. |
jitUserProvGroupSAMLAttributeName | Nombre del atributo de afirmación de SAML que contendrá los grupos que se asignarán al usuario, si la propiedad jitUserProvGroupAssertionAttributeEnabled es true. |
jitUserProvGroupAssignmentMethod | Propiedad de cadena que controla cómo se asignarán las afiliaciones a grupos al usuario de Identity Cloud Service: sobrescribir/ fusionar. |
Después de esta operación, el aprovisionamiento de JIT debe estar activado para el IDP de SAML y puede confirmarlo ejecutando la operación GET mencionada en la tarea 2. En la siguiente imagen se muestra la salida de ejemplo.
Esto le proporcionará ahora el ID de atributo asignado que se utilizará en el siguiente punto final para asignar los atributos de SP con atributos de IDP.
Tarea 4: Definir la asignación jitUserProvAttributes
para el proveedor de identidad de SAML para el aprovisionamiento de usuarios
Después de activar el aprovisionamiento de JIT para el IDP de SAML, el siguiente paso es asignar los atributos de proveedor de servicios a los atributos de proveedor de identidad. Utilice el ID de atributo asignado de la tarea 3 con el punto final de REST descrito en esta sección.
Nota:
- Antes de aplicar parches a los atributos de este punto final, se recomienda comprobar la afirmación de SAML para buscar
managedObjectAttributeName
(detalles de afirmación del SP). En la comprobación de afirmación de<saml:AttributeStatement>
, que contendrá la información sobre los atributos de SAML. Utilice el valor desaml:Attribute Name
y asígnelo al atributo de IDCS correspondiente.- Utilice este punto final ahora como una operación PATCH con el siguiente código de cuerpo de ejemplo para actualizar la asignación de atributos. Puede confirmarlo ejecutando una operación GET en el mismo punto final y comprobar los valores actualizados de los atributos asignados.
-
Utilice el siguiente punto final de REST: https://idcs-xxxx.identity.oraclecloud.com/admin/v1/MappedAttributes/{Mapped Attribute ID} (Operación GET)
Nota: Este es el fragmento de código de ejemplo (solo para referencia) para la asignación de atributos. Actualícelo según la afirmación del IDP de SAML configurado y guárdelo.
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ], "Operations": [ { "op": "replace", "path": "attributeMappings", "value": [ { "managedObjectAttributeName": "$(assertion.mail)", "idcsAttributeName": "userName" }, { "managedObjectAttributeName": "$(assertion.firstname)", "idcsAttributeName": "name.givenName" }, { "managedObjectAttributeName": "$(assertion.lastname)", "idcsAttributeName": "name.familyName" }, { "managedObjectAttributeName": "$(assertion.mail)", "idcsAttributeName": "emails[primary eq true and type eq \"work\"].value" } ] } ] }
Tarea 5: Configurar el atributo Actualización de asignación jitUserProvAttributes
Configure el atributo Actualización de asignación jitUserProvAttributes
del proveedor de servicios - SP al proveedor de identidad - IDP.
-
Utilice el siguiente punto final de REST: https://idcs-xxxx.identity.oraclecloud.com/admin/v1/MappedAttributes/{Mapped Attribute ID} (Operación PATCH) y PATCH el punto final de REST con el código de la tarea 4 en el cuerpo.
-
Confirme que los cambios se han actualizado ejecutando la operación GET.
Tarea 6: Prueba del Provisionamiento de JIT
- En una nueva sesión del explorador, intente conectarse a mi consola de IDCS.
- IDCS mostrará la pantalla de conexión.
- Seleccione el IDP configurado que ahora está activado con el aprovisionamiento de JIT.
- IDCS le dirigirá a la página de conexión de IDP para conectarse.
- Introduzca las credenciales válidas del usuario que no existe en IDCS.
- Después de iniciar sesión correctamente, debe ir a la pantalla de mi consola de IDCS.
- Valide mediante una cuenta de administrador que el usuario se ha creado correctamente en IDCS.
Enlaces relacionados
- Trabajar con proveedores de identidad
- Uso de las API de REST de Oracle Identity Cloud Service con Postman
Acuses de recibo
Autor: Chetan Soni (ingeniero de soluciones en la nube)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito 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 los productos, visite Oracle Help Center.
Configure Just-In-Time Provisioning for SAML based IDP in IDCS/Identity Domains
F76244-01
January 2023
Copyright © 2023, Oracle and/or its affiliates.