Vision General
La API de User es una API REST para gestionar cuentas de usuario de Fess. Permite crear, obtener, actualizar y eliminar usuarios, ademas de asignar roles y grupos.
Esta es una API de administracion, y el acceso requiere autenticacion con un token de acceso de administrador. Consulte Vision General de Admin API para conocer el metodo de autenticacion y las especificaciones comunes.
Cada respuesta esta envuelta en un objeto response e incluye los siguientes campos comunes:
version: La cadena de version del producto Fess.status: El codigo de estado del resultado (0=exito,1=solicitud incorrecta,2=error del sistema,3=no autorizado,9=fallo).
URL Base
Lista de Endpoints
| Metodo | Ruta | Descripcion |
|---|---|---|
| GET | /settings | Listar usuarios |
| GET | /setting/{id} | Obtener usuario |
| POST | /setting | Crear usuario |
| PUT | /setting | Actualizar usuario |
| DELETE | /setting/{id} | Eliminar usuario |
Listar Usuarios
Solicitud
Parametros
| Parametro | Tipo | Requerido | Descripcion |
|---|---|---|---|
size | Integer | No | Numero de elementos por pagina. El valor predeterminado es el valor configurado paging.page.size (predeterminado: 25). |
page | Integer | No | Numero de pagina (comienza en 1). El valor predeterminado es 1. |
Nota
En la implementacion actual, el endpoint de lista de usuarios no aplica los parametros size y page. Siempre devuelve la primera pagina, con el numero de elementos definido por la configuracion del servidor paging.page.size (predeterminado: 25), ordenado por nombre de usuario (name) en orden ascendente. El numero total de usuarios coincidentes esta disponible en response.total.
Respuesta
settings: El array de usuarios en la pagina actual.total: El numero total de usuarios coincidentes.
Obtener Usuario
Solicitud
Especifique el ID de documento del usuario objetivo en {id}.
Respuesta
Nota
attributes incluye todos los atributos almacenados para el usuario, excepto name, password, roles y groups. password no se incluye en la respuesta.
Crear Usuario
Solicitud
Cuerpo de la Solicitud
Descripcion de Campos
| Campo | Requerido | Descripcion |
|---|---|---|
name | Si | Nombre de usuario (ID de inicio de sesion) |
password | No | Contrasena |
confirmPassword | No | Contrasena de confirmacion |
attributes | No | Mapa de atributos (vease mas adelante) |
roles | No | Array de IDs de roles |
groups | No | Array de IDs de grupos |
Nota
La API REST no realiza la verificacion de contrasena obligatoria, la verificacion de coincidencia entre password y confirmPassword, ni la validacion de politica de contrasenas (estas se aplican unicamente en la interfaz de administracion). En la practica, se recomienda especificar una password valida cuyo valor coincida con confirmPassword.
Las claves de attributes son los nombres de atributos de la entidad de usuario (los nombres de elementos derivados del esquema LDAP). Las claves mas comunes son:
surname,givenName,displayName,mailtelephoneNumber,mobile,homePhoneemployeeNumber,title,description,homeDirectoryuidNumber,gidNumber
uidNumber y gidNumber deben ser numericos (su tipo se valida en la actualizacion). Tambien se pueden especificar muchas otras claves de atributos LDAP.
Nota
En la creacion, el ID de usuario (ID de documento) se genera automaticamente como el valor codificado en Base64 URL del nombre de usuario (por ejemplo, el nombre de usuario admin se convierte en YWRtaW4=).
Respuesta
id: El ID de documento del usuario creado.created:truecuando se ha creado.
Actualizar Usuario
Solicitud
Cuerpo de la Solicitud
Descripcion de Campos
| Campo | Requerido | Descripcion |
|---|---|---|
id | Si | El ID de documento del usuario a actualizar. |
name | Si | Nombre de usuario (ID de inicio de sesion) |
versionNo | Si | Numero de version (para bloqueo optimista) |
password | No | Nueva contrasena (se actualiza solo cuando se especifica) |
confirmPassword | No | Contrasena de confirmacion |
attributes | No | Mapa de atributos (vease «Crear Usuario») |
roles | No | Array de IDs de roles |
groups | No | Array de IDs de grupos |
Nota
En la actualizacion, id, name y versionNo son obligatorios. versionNo es el valor devuelto al obtener el usuario objetivo (GET), y corresponde a la version del documento de OpenSearch. Si no coincide con la version actual, la solicitud se trata como un conflicto y la actualizacion es rechazada.
Respuesta
created:falsepara una actualizacion.
Eliminar Usuario
Solicitud
Especifique el ID de documento del usuario a eliminar en {id}.
Nota
No es posible eliminar el usuario que tiene la sesion actualmente iniciada.
Respuesta
id: El ID de documento del usuario eliminado.
Ejemplos de Uso
Crear Nuevo Usuario
Cambiar Roles de Usuario
Referencia
Vision General de Admin API - Vision general de Admin API
API de Role - API de gestion de roles
API de Group - API de gestion de grupos
Usuario - Guia de gestion de usuarios