Desarrollador de OneSpan: Método de actualización de usuarios por parches

En cualquier institución, los perfiles de los usuarios podrían requerir alteraciones por una o varias razones. Puede tratarse de la dirección postal del usuario, su número de teléfono o simplemente sus preferencias. La función de actualización es una de las operaciones CRUD, y es esencial para las aplicaciones centradas en el usuario. OneSpan Intelligent Adaptive Authentication (IAA) proporciona el punto final de actualización del usuario para alterar las propiedades de la cuenta del usuario a través de la API interactiva del Sandbox. Hoy explicaremos cómo actualizar uno o varios campos de un perfil de usuario mediante una única llamada RESTful.
Antes de empezar
Antes de explorar cómo actualizar un perfil de usuario, primero debe ser miembro de la Comunidad OneSpan y registrarse para obtener una cuenta gratuita del sandbox de Autenticación Adaptativa Inteligente. Aquí tienes las instrucciones paso a paso para hacerlo.
También debes asegurarte de tener al menos un usuario registrado antes de intentar esta llamada. Para saber cómo registrar un usuario, consulte este blog detallado sobre el registro de usuarios.
URL del punto final
La URL de solicitud para esta llamada a la API se parecerá al ejemplo siguiente:
https://{su_inquilino_ID}.sdb.tid.onespan.cloud/v1/users/{[email protected]}
No necesitarás proporcionar esta URL durante el tutorial. Lo hemos incluido aquí como mero ejemplo de la estructura de la URL. Su URL de solicitud real se asignará automáticamente en la API interactiva al llamar al servicio web.
Pruébalo
Para experimentar con la API de Validación de Eventos, navegue al documento de la API Interactiva IAA Sandbox en su cuenta de la Comunidad OneSpan. En el editor de Open API Swagger, expanda el recurso "Usuarios". A continuación, encontrará una entrada para el método Users update HTTP Patch como se muestra en la imagen siguiente:
Parámetros de la ruta URL:
Para el propósito de la llamada de actualización de este usuario, hay un parámetro de ruta requerido para el identificador único de usuario. El parámetro de la ruta se formatea como [email protected], que incluye el userID que se ha activado en el dispositivo de confianza, así como el dominio del usuario que sigue al signo "@". Sustituya el dominio del usuario por la cadena "Sandbox User" que se muestra a continuación. Puedes encontrar esta cadena en la sección de detalles de tu Sandbox, en la pestaña "Autenticación Adaptativa Inteligente" de la página de inicio de tu Sandbox.
Cuerpo de la solicitud de actualización de usuarios
El cuerpo de la solicitud se parecerá al ejemplo siguiente. Tenga en cuenta que podría ser sólo una de las líneas de abajo para actualizar el campo especificado para la cuenta de usuario especificada por el ID en el parámetro de ruta.
{"emailAddress": "[email protected]", "enabled": true, "mdcProfile": "EUROPE", "mobilePhoneNumber": "+1 (508) 366 3437", "phoneNumber": "+1 (508) 366 3437", "staticPassword": "TestABCD", "vdpDeliveryMethod": "Email" }
Solicitud de carga útil
Nota: No hay campos obligatorios en la carga útil JSON, ya que el propósito del punto final es actualizar uno o más campos según lo requiera la aplicación que llama.
A continuación se muestra una lista de los campos que pueden actualizarse mediante el punto final:
Campos de datos obligatorios JSON | Descripción | Campo Tipo de datos |
---|---|---|
emailAddress | La dirección de correo electrónico que se debe actualizar para el usuario final. |
Tipo: cadena |
habilitado | Este campo sirve para determinar si la cuenta del usuario final será habilitada o deshabilitada. Si se asigna True se habilitará la cuenta y si se asigna False se deshabilitará. | Tipo: booleano Ejemplo: Verdadero |
mdcProfile | El perfil específico del componente de entrega de mensajes para los mensajes virtuales de Digipass para un usuario específico. Esto tiene prioridad sobre el perfil MDC especificado en la política de usuario. | Tipo: cadena maxLength: 100 ejemplo: EUROPA |
mobilePhoneNumber | El número de teléfono móvil del usuario final. | Tipo: cadena Patrón: ^[\+\-(\)0-9 ]{0,20}$ maxLength: 64 Ejemplo: "+1 (508) 366 3437" |
phoneNumber | El número de teléfono del usuario final. | Tipo: cadena Patrón: ^[\+\-(\)0-9 ]{0,20}$ maxLength: 64 Ejemplo: "+1 (508) 366 3437" |
staticPassword | La contraseña estática del usuario. | Tipo: Cadena Longitud mínima: 8 Longitud máxima: 255 Ejemplo: TestABCD |
vdpDeliveryMethod | El método de entrega para enviar el Digipass virtual. Esto puede ser a través de correo electrónico, SMS o voz. |
Tipo: Cadena Ejemplo: Correo electrónico |
Llamada al punto final
Ahora estamos listos para hacer una llamada RESTful para actualizar el perfil del usuario utilizando la API interactiva de IAA Sandbox. Para realizar la llamada, haga clic en el botón "Probar" que se muestra en la siguiente captura de pantalla y que se encuentra a la derecha de la sección del método HTTP PATCH. Una vez solicitado, recibirá el cuerpo de la respuesta en formato JSON. Será similar a la carga útil de respuesta descrita en la siguiente sección.
Carga útil de la respuesta
A continuación se muestra un ejemplo del cuerpo de la respuesta devuelta con un código de respuesta 200 que indica una solicitud exitosa.
{ "created": "2021-02-11T02:02:54Z", "domain": "osiaa4-mailinator", "enabled": true, "isPasswordSet": true, "lastModified": "2021-02-11T03:17:16Z", "lastPasswordUpdate": "2021-02-11T02:02:54Z", "locked": false, "mdcProfile": "EUROPE", "userID": "iaaend1", "vdpDeliveryMethod": "SMS", "authenticators": [ "VDS0058266", "VDS0058266-2", "VDS0058266-1" ], "emailAddress": "[email protected]", "mobilePhoneNumber": "+1 (508) 366 3437", "phoneNumber": "+1 (508) 366 3437" }
Descripción de los campos de la carga útil de la respuesta
La siguiente tabla ofrece información más detallada sobre cada una de las propiedades de la carga útil de la respuesta anterior.
Objeto de respuesta | Descripción | Tipo de datos |
---|---|---|
creado * | La fecha de creación de la cuenta de usuario. |
Tipo: Cadena |
dominio * | El dominio en el que reside la cuenta de usuario que se va a actualizar. | Tipo: cadena minLength: 1 maxLength: 255 ejemplo: ospanuser-mail |
habilitado * | El campo que especifica si la cuenta de usuario está habilitada o no. | Tipo: booleano ejemplo: true |
isPasswordSet * | El campo que especifica si la cuenta de usuario tiene una contraseña estática establecida o no. | Tipo: booleano ejemplo: true |
lastModified* | La marca de tiempo de la última vez que se modificó el autentificador. | Tipo: cadena Ejemplo: 2019-02-04T11:42:39Z |
lastPasswordUpdate* | La marca de tiempo de la última vez que la contraseña estática ha sido actualizada por el administrador o el usuario final. | Tipo: cadena Ejemplo: 2019-02-04T11:42:39Z |
Cerrado* | El campo especifica si la cuenta de usuario se crea en estado de bloqueo o no. |
Tipo: booleano ejemplo: true |
mdcPerfil* | El perfil del componente de entrega de mensajes (MDC) para el envío de OTP virtuales. |
Tipo: cadena ejemplo: Europa |
ID de usuario* | El ID de usuario al que se asigna el autentificador. |
Tipo: cadena Ejemplo: "iaa_user1" |
vdpDeliveryMethod* | El método de entrega preferido para enviar la OTP virtual. |
Tipo: cadena Ejemplo: "SMS" |
Códigos de estado de respuesta HTTP:
La siguiente tabla muestra los códigos de respuesta esperados cuando se intenta eliminar una cuenta de usuario:
Código de estado de la respuesta | Significado |
---|---|
200 | La cuenta de usuario se actualiza. |
400 | Errores en los datos de entrada. |
403 | El comando está prohibido para la cuenta de administrador del inquilino. |
404 | La cuenta de usuario no se encuentra. |
409 | No se ha podido actualizar la cuenta de usuario. |
500 | Error interno, fallo del subservicio, caída del servidor. |
Hoy hemos visto cómo actualizar una o más propiedades de un perfil de usuario existente. También cubrimos cómo hacer esta solicitud utilizando la API interactiva de OneSpan. Si tiene alguna pregunta, por favor, póngase en contacto con los Foros del Portal de la Comunidad de OneSpan.
Consulte más puntos finales de la categoría Usuarios: