Ir al contenido

Registros de aprendizaje

RODMENA LRS

Próximamente

El almacén de evidencias para el aprendizaje: lo que ocurrió, registrado una vez, conservado con exactitud.

RODMENA LRS es un Learning Record Store: recibe registros de actividad de aprendizaje en formato xAPI, los almacena sin cambios y los devuelve a través de la interfaz de consulta estándar de xAPI. Supera todas las pruebas del ADL LRS Conformance Test Suite para xAPI 1.0.3 y xAPI 2.0. Los registros de cada cliente están aislados de los de todos los demás clientes dentro de la propia base de datos. El contenido de los registros se cifra en reposo, y los identificadores de los alumnos se almacenan únicamente de forma pseudonimizada y con clave. Los registros almacenados no pueden alterarse; los datos personales de un alumno pueden borrarse a petición, y cada borrado se escribe en un registro a prueba de manipulaciones.

Para quién es. Plataformas de aprendizaje y proveedores de formación que necesitan un lugar conforme para conservar los registros de actividad de los alumnos. Es un servicio de back-end: los productos se construyen sobre él y lo llaman desde sus servidores. Los alumnos y los navegadores no se comunican con él directamente. REES es su primer consumidor.

Estado
Próximamente
Forma parte de
Ofertas
Licencia
Propietario. Copyright RODMENA LIMITED, todos los derechos reservados.
Conformidad
1,365 pruebas de conformidad xAPI 1.0.3, todas superadas
1,435 pruebas de conformidad xAPI 2.0, todas superadas
Verificado 23 de septiembre de 2026
Etiquetas
xAPIRegistros de aprendizajeConformidadMulti-tenantProtección de datosRegistro de auditoría

Especificación técnica

Indicado para un evaluador técnico. Se omite toda fila sin valor medido.

Estándares

xAPI 1.0.3
Especificación de ADL Experience API, versión 1.0.3
xAPI 2.0
IEEE 9274.1.1-2023
Selección de versión
Por solicitud, mediante el encabezado X-Experience-API-Version. Se aceptan 1.0.x y 2.0.x; una versión ausente o desconocida se rechaza con 400.
Suite de conformidad
ADL LRS Conformance Test Suite, última ejecución el 23 de septiembre de 2026
Resultado de conformidad
xAPI 1.0.3: 1.365 de 1.365. xAPI 2.0: 1.435 de 1.435.
Más allá de la suite
Los requisitos que la suite declara no probar están cubiertos cada uno por una comprobación dedicada. Se identificaron seis pruebas de la suite que no afirman nada y se cubrieron por separado.
Por diseño
OAuth 1.0 no se acepta, porque está obsoleto. Los productos construidos sobre el servicio lo llaman de servidor a servidor, y este no acepta llamadas de origen cruzado desde un navegador.

Interfaz

Recursos
Statements, State, Activity Profile, Agent Profile, Activities, Agents y About, con HEAD en cada ruta GET.
Autenticación
HTTP Basic con credenciales que emite el servicio. Secretos de 256 bits, almacenados únicamente como verificador con clave. Las credenciales desconocidas, deshabilitadas y caducadas reciben respuestas 401 idénticas byte a byte.
Alternate Request Syntax
Compatible con la versión 1.0.3 y rechazado con la 2.0, tal como exige esa especificación.
Declaraciones firmadas
JWS con RS256, RS384 y RS512, verificado cuando se incluye un certificado.
Adjuntos
multipart/mixed, cotejado mediante hash SHA-2. 5 MiB por archivo adjunto y 1 MiB por cuerpo de declaración, ambos configurables.
Paginación
Cursores sin estado firmados que siguen siendo válidos tras un reinicio, con la cabecera de coherencia de xAPI en cada respuesta de declaraciones.
Idempotencia
El reenvío de un identificador de declaración idéntico se acepta sin duplicación. Uno en conflicto se rechaza con 409.
Limitación de velocidad
Por credencial, con un presupuesto independiente para la autenticación fallida por dirección de cliente.

Aislamiento y seguridad

Aislamiento de inquilinos
Seguridad a nivel de fila de PostgreSQL, habilitada y forzada en todas las tablas que contienen datos de inquilinos. El rol de base de datos de la aplicación no posee nada y no puede eludirla. Cada transacción toma su inquilino únicamente de la credencial autenticada.
Aislamiento, aplicado
Una prueba del catálogo hace fallar la compilación si alguna tabla de inquilino, o alguna partición creada en tiempo de ejecución, carece de la política.
Cifrado en reposo
AES-256-GCM en cuerpos de declaración, documentos, archivos adjuntos, definiciones de actividad e identidades de credenciales, con una clave por registro derivada mediante HKDF-SHA256.
Vinculación de texto cifrado
Cada texto cifrado está vinculado a la identidad de su fila, por lo que no puede trasladarse a otra fila y seguir descifrándose.
Custodia de claves
Tres claves custodiadas fuera de la base de datos, en archivos de claves con permisos 0600 o en el entorno. No hay clave predeterminada, y el servicio se niega a arrancar sin ellas.
Rotación de claves
La clave del índice rota mediante una recifrado sin conexión y reanudable, y la rotación de la clave de credenciales vuelve a emitir las credenciales. Cada registro almacena el identificador de la clave que lo escribió, por lo que una rotación no requiere migración de datos.
Identificadores de alumnos
Se conservan únicamente como tokens HMAC-SHA256 bajo una clave por inquilino, de modo que el mismo alumno en dos inquilinos genera tokens no relacionados. Ninguna columna contiene una identidad de alumno en claro.
Ámbitos de credenciales
El conjunto de ámbitos de xAPI: statements/write, statements/read, statements/read/mine, state, profile, all/read y all. El más restringido solo lee las declaraciones que escribió esa propia credencial.
Inmutabilidad
Las declaraciones y los archivos adjuntos son de solo adición, lo que se aplica mediante desencadenadores de base de datos que rechazan UPDATE, DELETE y TRUNCATE. Los únicos cambios permitidos son el indicador de anulación y una supresión.
Transporte de base de datos
TLS con verificación completa de certificado y nombre de host es obligatorio; el servicio se niega a arrancar en caso contrario.
Eventos de auditoría de solicitudes
Un evento estructurado por solicitud que incluye el id de solicitud, el id de clave de credencial, el inquilino, el método, el recurso, el estado, el recuento de registros, la duración y los nombres de los filtros. Los valores del alumno en los filtros se tokenizan antes de registrarse.
Evidencia de manipulación
El registro de supresión está encadenado por hash, y un solo comando verifica toda la cadena de extremo a extremo.

Protección de datos

Supresión
Una redacción seudonimizadora. El alumno se sustituye por un seudónimo aleatorio en cada posición en la que una declaración pueda nombrarlo, se eliminan las respuestas de texto libre y los archivos adjuntos, y se suprimen sus documentos de State y Agent Profile. No se utiliza el borrado físico.
Supresión, registrada
Toda supresión se escribe en el registro encadenado por hash. El comando rechaza una supresión que no coincide con nada, de modo que un alumno mal escrito no puede parecerse a uno completado.
Copias de seguridad
Un borrado es completo una vez que han caducado las copias de seguridad realizadas antes de él. Tras una restauración, se reproduce el registro de borrado.
Retención
Por mes natural, por instancia. El mes se separa, se exporta como un archivo por inquilino y se elimina. La eliminación se rechaza a menos que el número de filas exportadas coincida.
Retención, por cliente
Un cliente que necesite su propio período de conservación necesita su propia instancia.
Exportación al salir
La interfaz estándar de xAPI. Un cliente puede recorrer página a página todos los registros como xAPI JSON, con sus archivos adjuntos, y llevárselos todos.
Residencia
Una instancia se ejecuta en la región que exige un contrato. El servicio solo necesita una base de datos PostgreSQL.

Operaciones y verificación

Modelo de despliegue
Una instancia multiinquilino compartida, o una instancia dedicada por cliente.
Las sondas demuestran que pueden fallar
Cada una de las 47 pruebas de comportamiento debe demostrarse que FALLA contra una compilación deliberadamente defectuosa antes de que se cuente su aprobación, y el entorno de pruebas lo exige. La suite de conformidad se ejecuta contra compilaciones defectuosas por la misma razón.

Qué hace

  • Probado en conformidad

    Supera las 1.365 pruebas del ADL LRS Conformance Test Suite para xAPI 1.0.3, y las 1.435 para xAPI 2.0.

  • Los registros nunca cambian

    Una vez almacenada, una declaración no puede editarse ni sobrescribirse, solo anularse, tal como especifica el estándar.

  • Aislado por diseño

    Los registros de cada cliente están separados por reglas aplicadas en la base de datos, y no solo por el código de la aplicación.

  • Cifrado y seudónimo

    El contenido de los registros se cifra en reposo, y los identificadores de alumnos solo se indexan como tokens con clave.

  • Borrado con un registro de auditoría

    Los datos personales de un alumno se eliminan de sus registros a petición, y toda supresión se registra en un registro encadenado por hash que permite detectar manipulaciones.

  • Credenciales con ámbito

    Cada credencial se limita a las operaciones que necesita, hasta leer únicamente los registros que ella misma escribió.

Para documentación, un piloto o una integración, contacte con nosotros.