Compartir a través de


Tutorial: Validar un punto de conexión de SCIM

En este tutorial se describe cómo usar el validador SCIM de Microsoft Entra para validar que el servidor de aprovisionamiento es compatible con el cliente SCIM de Azure. El tutorial está pensado para desarrolladores que desean crear un servidor compatible con SCIM para administrar sus identidades con el servicio de aprovisionamiento de Microsoft Entra.

En este tutorial, aprenderá a:

  • Seleccionar un método de prueba
  • Configurar el método de prueba
  • Validar el punto de conexión de SCIM

Requisitos previos

Seleccionar un método de prueba

El primer paso consiste en seleccionar un método de prueba para validar el punto de conexión SCIM.

  1. Abra el explorador web y vaya al validador SCIMr: https://scimvalidator.microsoft.com/.

  2. Seleccione una de las tres opciones de prueba. Puede usar atributos predeterminados, detectar automáticamente el esquema o cargar un esquema.

    Captura de pantalla de la página principal del validador de SCIM.

Usar atributos predeterminados :el sistema proporciona los atributos predeterminados y los modifica para satisfacer sus necesidades.

Detectar esquema: Si el punto de conexión admite /Schemas, esta opción permite que la herramienta detecte los atributos admitidos. Se recomienda esta opción, ya que reduce la sobrecarga de actualizar la aplicación a medida que se compila.

Carga del esquema de Microsoft Entra: cargue el esquema que descargó de la aplicación de ejemplo en Microsoft Entra ID.

Configurar el método de prueba

Ahora que ha seleccionado un método de prueba, el paso siguiente es configurarlo.

Captura de pantalla de la página de atributos del validador de SCIM.

  1. Si usa la opción de atributos predeterminados, rellene todos los campos indicados.
  2. Si usa la opción detectar esquema, escriba la dirección URL y el token del punto de conexión SCIM.
  3. Si va a cargar un esquema, seleccione el archivo .json que desea cargar. La opción acepta un archivo .json exportado desde la aplicación de ejemplo en el centro de administración de Microsoft Entra. Para aprender a explorar un esquema, consulte Instrucciones: exportar configuración de aprovisionamiento y revertir a un estado correcto conocido.

Nota

Para probar los atributos de grupo, asegúrese de seleccionar Habilitar pruebas de grupo.

  1. Edite los atributos de lista según sea necesario para los tipos de usuario y grupo mediante la opción "Agregar atributo" al final de la lista de atributos y el inicio de sesión menos (-) en el lado derecho de la página.
  2. Seleccione la propiedad de combinación en la lista de atributos de usuario y grupo.

Nota

La propiedad de combinación, también conocida como atributo coincidente, es un atributo en el que los recursos de usuario y grupo se pueden consultar de forma única en el origen y coincidentes en el sistema de destino.

Validar el punto de conexión de SCIM

Por último, debe probar y validar el punto de conexión.

  1. SeleccioneProbar esquema para comenzar la prueba.

  2. Revise los resultados con un resumen de las pruebas superadas y con errores.

  3. Seleccione la pestaña Mostrar detalles y revise y corrija los problemas.

  4. Siga probando el esquema hasta que se superen todas las pruebas.

    Captura de pantalla de la página de resultados del validador de SCIM.

Nota de validaciones realizadas por SCIM Validator

Crear nuevo usuario

  • POST /Users: crea un nuevo usuario con una carga JSON completa.
    • El punto de conexión devuelve HTTP 201
    • La respuesta POST contiene el identificador de usuario creado.
  • GET /Users?filter={joiningProperty} eq "value": comprueba la creación filtrando por la propiedad de combinación.
    • GET devuelve un usuario creado
    • Los valores devueltos de GET coinciden con los valores pasados de la solicitud POST (varía en función del punto de conexión).
  • DELETE /Users: limpia el usuario de prueba. -Solo se llama si se admite el borrado definitivo

Creación de un usuario duplicado

  • POST /Users: intenta crear un usuario con una carga idéntica (con el mismo atributo único o de unión) a un usuario existente.
    • Devolver HTTP 201 en la primera solicitud de creación
    • Devolver HTTP 409 en la segunda solicitud de creación

Agregar atributos

  • POST /Users: crea el recurso de usuario
    • HTTP 2xx éxito
  • PATCH /Users/{id}: usa un documento de revisión JSON (con la operación de adición) para insertar atributos adicionales no obligatorios.
  • GET /Users?filter={joiningProperty} eq "value": recupera al usuario para comprobar los atributos agregados.
    • Se devuelve el usuario
    • Los atributos insertados ahora están presentes en el usuario

Reemplazar atributos de usuario

  • POST /Users: crea el recurso de usuario
    • HTTP 2xx éxito
  • PATCH /Users/{id}: envía un documento de revisión JSON (mediante la operación de reemplazo) para actualizar uno o varios atributos.
  • GET /Users?filter={joiningProperty} eq "value": comprueba que los atributos actualizados se aplican correctamente.
    • Se devuelve el usuario
    • Los atributos actualizados están presentes en el usuario

Actualizar Propiedad de Unión

  • POST /Users: crea el recurso de usuario
    • HTTP 2xx éxito
  • PATCH /Users/{id} - Actualiza la propiedad de combinación (por ejemplo, userName) a través de un documento JSON Patch.
  • GET /Users?filter={joiningProperty} eq "newValue" – Confirma que se ha actualizado la propiedad de unión.
    • La propiedad de vinculación se actualiza para el usuario.

Actualizar atributo activo a False

  • POST /Users/: crea un recurso basado en el esquema.
    • HTTP 2xx éxito
    • Se debe devolver el usuario deshabilitado en la solicitud GET.
  • PATCH /Users/{id} – emite un documento JSON Patch que establece el atributo "activo" en false.
    • HTTP 2xx éxito
  • GET /Users?filter={joiningProperty} eq "value": recupera al usuario para confirmar que el atributo activo es ahora false.
    • El registro de usuario devuelto debe tener ACTIVE=FALSE"

Crear nuevo grupo

  • POST /Groups: crea un nuevo grupo con una carga JSON completa.
    • El punto de conexión devuelve HTTP 201
    • La respuesta POST contiene el identificador de grupo creado
  • GET /Group?filter={joiningProperty} eq "value": verifica la creación filtrando por la propiedad de unión.
    • GET devuelve un grupo creado
    • Los valores devueltos de GET coinciden con los valores pasados de la solicitud POST (varía en función del punto de conexión).
  • DELETE /Groups: limpia el usuario de prueba.
    • Solo se llama si se admite la eliminación permanente

Crear grupo duplicado

  • POST /Groups: intenta crear un grupo mediante una carga idéntica (con el mismo atributo único o de combinación) a un grupo existente.
    • Devolver HTTP 201 en la primera solicitud de creación
    • Devolver HTTP 409 en la segunda solicitud de creación

Actualizar atributos de grupo

  • POST /Groups: crea un nuevo recurso de grupo para actualizar los atributos en
    • POST devuelve HTTP 2xx
  • PATCH /Groups/{id}: envía un documento de revisión JSON mediante la operación de reemplazo para actualizar uno o varios atributos de un grupo existente (excepto los miembros).
    • PATCH devuelve éxito (HTTP 2xx)
  • GET /Groups?filter={joiningProperty} eq "value": confirma que los atributos del grupo se han actualizado correctamente.
    • GET devuelve un grupo revisado
    • Los atributos del grupo devuelto coinciden con los atributos modificados en la solicitud PATCH

Creación de un nuevo recurso de grupo

  • POST /Groups: crea un nuevo recurso de grupo al que agregar miembro
    • POST devuelve HTTP 2xx
  • POST /Users: crea un nuevo recurso de usuario que se usará como miembro del grupo.
    • POST devuelve HTTP 2xx
  • PATCH /Groups/{id}: agrega el identificador del usuario recién creado al grupo mediante un documento de revisión JSON.
    • PATCH devuelve el éxito

Uso de expresiones en el validador SCIM

El validador SCIM admite el uso de expresiones para generar valores deseados para los atributos.

Uso de las expresiones

  1. Vaya a la página Atributos.
  2. Escriba la expresión deseada en la columna de valor del atributo que desea personalizar.
  3. Ejecución de la prueba

Nota

Estas expresiones funcionan para los atributos User y Group.

Expresiones disponibles

En la tabla siguiente se enumeran las expresiones disponibles.

Expression Significado Los Resultado
generateRandomString {Recuento de caracteres de cadena} Generación de una cadena aleatoria con el recuento especificado de caracteres alfabéticos {%generateRandomString 6%}@contoso.com CXJHYP@contoso.com
generateRandomNumber {Recuento de números} Generación de un número aleatorio con el recuento especificado de dígitos {%generateRandomNumber 4%} 8821
generateAlphaNumeric {Recuento de caracteres} Generación de una cadena aleatoria con una combinación de letras y números con el recuento especificado de caracteres {%generateAlphaNumeric 7%} 59Q2M9W
generateAlphaNumericWithSpecialCharacters {Recuento de caracteres} Generación de una cadena aleatoria con una combinación de letras, números y un carácter especial, en función del recuento especificado de caracteres {%generateAlphaNumericWithSpecialCharacters 8%}PRUEBA D385N05’TEST

Puede añadir valores antes o después de las expresiones para lograr el resultado deseado, por ejemplo, al añadir {% generateRandomString 6 %}@contoso.com en un campo de valor del atributo userName, generará un nuevo valor userName con cada prueba mientras conserva el dominio de contoso.com.

Limpieza de recursos

Si ha creado recursos de Azure en las pruebas que ya no son necesarias, no olvide eliminarlos.

Problemas conocidos con el validador de SCIM de Microsoft Entra

  • Todavía no se admiten las eliminaciones temporal (deshabilitadas).
  • El formato de zona horaria se genera aleatoriamente y produce un error en los sistemas que intenten validarlo.
  • Los atributos de eliminación del usuario de revisión pueden intentar quitar atributos obligatorios para determinados sistemas. Estos errores deben omitirse.

Pasos siguientes