Actualizar información del usuario utilizando REST

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Automatización de Procesos con poco código > Studio Cloud -ambiente de autoría > Bizagi Studio > Definición de Seguridad > Seguridad del Portal de Trabajo > Sincronización de usuarios > Sincronizar usuarios con métodos REST de SCIM > Iniciando a sincronizar usuarios con métodos REST >

Actualizar información del usuario utilizando REST

Para actualizar la información de un usuario utilizando Bizagi SCIM, debe utilizar el servicio descrito en este artículo. El siguiente ejemplo utiliza POSTMAN como cliente, pero puede invocar este servicio desde cualquier cliente compatible con servicios RESTful con autenticación OAUth 2.0.

 

Antes de continuar, revise la sección Iniciando con el procedimiento de sincronización.

 

URL del recurso

[Project_URL]/scim/v2/Users/{username}

 

Método HTTP

POST

 

Autorización

OAuth 2.0

 

Entradas

El username o el ID  (guidUser de la tabla WFUser) enviado en la URL.

 

Ejemplo de URL

[Project_URL]/scim/v2/Users/MarkW

 

Usando esta URL puede actualizar la información del usuario MarkW. Si usted tiene múltiples dominios puede enviar el parámetro usando el siguiente formato:

 

userName@domain

 

Usando el método PATCH HTTP puede realizar cualquiera de las siguientes operaciones:

 

Reemplazar: cambia el valor en el atributo XPath.

Agregar: Agrega un nuevo parámetro en el esquema. En Bizagi, agregar nuevos parámetros no está disponible. Invocar este método reemplaza el valor en el atributo XPath si el atributo existe en el esquema.

Eliminar: Esto borra el valor del paramétro en el esquema.

 

Para esta operación, debe enviar la siguiente estructura en la estructura JSON:

 

{

  "schemas":[

     "urn:ietf:params:scim:api:messages:2.0:PatchOp"

  ],

  "Operations":[

     {

        "op":"[OperationType]",

        "path":"[Xpath]",

        "value":"[Value]"

     }

  ]

}

 

Donde:

 

Variable

Descripción

OperationType

Establezca el tipo de operación: reemplazar (replace), agregar (add) o eliminar(remove).

Xpath

La XPath del atributo donde va a modificar el valor. XPath se basa en la estructura del esquema, por ejemplo, nombre.middleName.

Value

Valor del atributo que se está modificando. Este elemento no es necesario si va a eliminar un atributo.

 

Los XPaths dependen del atributo que quiere actualizar. Estos tienen la misma estructura que los usados en la creación de usuarios.  Vea Crear usuarios.

 

También puede cambiar más de un parámetro en la misma invocación. Por ejemplo, si desea actualizar el FamilyName y la propiedad habilitado para la asignación. Para el nombre, el nombre de pila y el segundo nombre deben permanecer iguales, y solo debe enviar el nuevo valor del apellido. La ejecución final en POSTMAN se ve así:

 

{

  "schemas":[

     "urn:ietf:params:scim:api:messages:2.0:PatchOp"

  ],

  "Operations":[

     {

        "op":"replace",

        "path":"name.givenName",

        "value":"oldGivenName"

     },

     {

        "op":"replace",

        "path":"name.middleName",

        "value":"oldMiddleName"

     },

     {

        "op":"replace",

        "path":"name.FamilyName",

        "value":"NewFamilyName"

     },

     {

        "op":"replace",

        "path":"enabledForAssignation",

        "value":false

     }

  ]

}

 

La respuesta es un JSON con el esquema SCIM y la información guardada en Bizagi.

 

En caso de cualquier error, la solicitud se considera como una acción atómica. Lo que significa que el registro vuelve a su estado inicial y no se aplican los cambios de la solicitud.

 

note_pin

Sincronización de Propiedades de Usuarios no está disponible en Entra ID.

 

Actualizando el email o teléfono

El estándar SCIM permite múltiples tipos de correos electrónicos o números de teléfono, por ejemplo, correo electrónico del trabajo o correo electrónico doméstico. Sin embargo, en Bizagi solo puede registrar un correo electrónico o un teléfono. Consulte las consideraciones con los correos electrónicos y los teléfonos. Por lo tanto, para actualizar el correo electrónico o el número de teléfono de un usuario, utilice la siguiente estructura:

 

{

  "schemas":[

     "urn:ietf:params:scim:api:messages:2.0:PatchOp"

  ],

  "Operations":[

 {

         "op": "replace",

         "path": "emails[type eq \"work\" or primary eq \"true\"]",

         "value": {

                 "value": "bjensen28@example.com",

                 "type": "work",

                 "primary": true

         }

 }

 ]

}

 

note_pin

En la propiedad Path, solo puede usar un operador lógico (OR o AND).

 

Removiendo valores

Usted puede remover valores de los parámetros del esquema usando la operación remover (remove). Aquí hay un ejemplo para remover el valor del parámetro número de teléfono:

 

{

  "schemas":[

     "urn:ietf:params:scim:api:messages:2.0:PatchOp"

  ],

  "Operations":[

     {

        "op":"remove",

        "path":"phoneNumbers"

     }

  ]

}

 

Remover el valor implica que se deja como nulo. Si el path contiene un parámetro no existente, la acción es ignorada. Si trata de remover valores de parámetros obligatorios Bizagi retorna un error, por ejemplo:

 

SCIM_14

 

La ejecución final en postman se ve así:

 

SCIM_15

 

Usando Filtros

Puede utilizar los mismos filtros que se utilizan para consultar la información de los usuarios. Consulte Obtener información de los usuarios utilizando filtros. Sin embargo, considere lo siguiente:

 

Los operadores admitidos son "eq" y "gt".

Puede utilizar los operadores lógicos "or" o "and", pero sólo puede utilizar un operador lógico.


Last Updated 9/11/2024 10:34:19 AM