Registros de aprendizaje
RODMENA LRS
PróximamenteEl 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.