Saltar al contenido principal

Usuarios

La primera vez que se accede al sistema se debe usar el usuario por defecto (credenciales iniciales). Tras el primer acceso es obligatorio rotar estas credenciales.

    user: admin@localhost
password: admin

Pasos recomendados tras el primer login:

  1. Iniciar sesión con admin@localhost.
  2. Crear un nuevo usuario con rol superadmin (p.ej. root@tuempresa.com).
  3. Crear un usuario operativo con rol admin (p.ej. ops@tuempresa.com).
  4. Cerrar sesión y verificar acceso con ambos.
  5. Eliminar admin@localhost o, si se requiere mantenerlo temporalmente, cambiar su contraseña por una robusta y almacenarla en el gestor corporativo.
peligro

Nunca deje el usuario admin@localhost habilitado con la clave admin. Su sistema seria altamente vulnerable.

En el menú Admin / Usuarios encontrará la lista de usuarios activos, su estado y roles asociados.

Se deben crear usuarios con los siguientes roles (permisos agregados):

  • superadmin. Al menos uno. Control total: seguridad avanzada, mantenimiento, auditoría. Uso excepcional.
  • admin. Gestión operativa: configuración de filetypes, flujos, usuarios de nivel inferior.
  • user. Uso habitual de la plataforma (gestión de dossiers, tareas, consultas). Mínimo privilegio.
  • robot. Usuario no humano para integraciones vía API (sin acceso UI). No usa passwords sino un token de acceso. Recomendable para automatizaciones o acceso desde aplicaciones externas.
  • (Opcional) auditor. Acceso sólo lectura a dossiers, logs y actividad (si se habilita el rol en futuras versiones).

Robot vía API

Si dispones de otra aplicación que expone los datos de usuarios, puedes construir un “robot” que:

  1. Llame a su origen (ERP/CRM legacy / base de datos) y obtenga la lista de usuarios.
  2. Transforme los usuarios al formato interno.
  3. Usa el endpoint de creación de usuarios de ValerIA, para crearlos.

Pseudocódigo (Node.js):

//Crea los miembros que no existan en Valeria
async function updateMiembros() {
Utils.log('info', 'Obteniendo miembros de Tolentino')
const usersValeria = await Valeria.userList()
const miembros = CONSIGUE ARRAY DE MIEMBROS
for (let miembro of miembros) {
const userFound = usersValeria.users.find((user) => { return user.email == miembro.email && user.name == miembro.fullname })
if (userFound == undefined) {
await Valeria.userCreate(miembro).then((res) => {
Utils.log('info', `Se creo el usuario ${miembro.fullname} con el email ${miembro.email} en Valeria`)
}).catch((error) => {
Utils.log(`error creando el usuario ${miembro.fullname} - ${miembro.email} en ValerIA:`, error)
})
}
}
Utils.log('info', "Terminado de crear usuarios en Valeria")
}

Funciones de creacion de usuario (Node.js):

async function userCreate(user) {
const name = user.fullname
const email = user.email
const password = user.valeriaPassword
const role = user.valeriaRole == undefined ? "user" : user.role
let policies = []
user.valeriaPolicies.split(',').forEach((policy) => {
policies.push(policy.trim())
})
const member = { name, email, password, role, policies }

const url = `${config.valeriaURL}/v1/user/create`
return await superagent
.post(url)
.set('Authorization', `Bearer ${config.tokenValeria}`)
.send(member)
.then((response) => {
let respuesta = response.text;
return JSON.parse(respuesta)
})
.catch((error) => {
if (error.status == 400) {
const err = error.response?._body
throw new Error(`${err.error} -> ${err.message}`)
} else {
throw new Error(error.message)
}
});
}

Revisa autenticación JWT: incluye el token en Authorization: Bearer <token> o crea un usuario tipo robot (con permisos de acceso a lista de usuarios y creación).

Ejemplo de política de creación inicial

CorreoRolJustificación
root@firma.comsuperadminCustodia y emergencias
ops@firma.comadminConfiguración y mantenimiento diario
abogado1@firma.comuserOperativa legal
abogado2@firma.comuserOperativa legal

Buenas prácticas de seguridad

  • Activar MFA (si está disponible) para superadmin y admin.
  • Revisar trimestralmente usuarios inactivos (> 90 días) y deshabilitarlos.
  • Forzar longitud mínima de contraseña (>= 12 caracteres) y mezcla de tipos.
  • Evitar compartir credenciales genéricas entre varias personas.
  • Registrar en un flujo (Conductor) alertas al crear/eliminar usuarios privilegiados.

Solución de problemas

ProblemaCausa probableAcción
No puedo crear usuarioFalta rol admin/superadminRevisa sesión actual o solicita a superadmin
Usuario ve demasiadoRol asignado demasiado altoAjustar a rol inferior y validar
Persisten sesiones tras bajaToken no invalidadoForzar invalidación / limpiar refresh tokens
Login bloqueado repetidamenteIntentos fallidos (fuerza bruta)Habilitar captcha / incrementar backoff

Siguiente paso sugerido: definir estructura de filetypes y asociar permisos de acceso específicos por rol mediante flujos o políticas (RBAC refinado).