Los permisos siguen el modelo de Moodle: no existe una lista de «tipos de usuario» con poderes fijos, sino capacidades atómicas que los papeles conceden o deniegan, y que se evalúan en un contexto.
Capacidad
Una capacidad es un permiso concreto y mínimo: «crear un curso», «calificar una tarea», «ver las notas de todo el mundo». Hay unas ciento setenta. Cada pantalla y cada ruta de la API exige la suya.
Contexto
El contexto es dónde vale el permiso. Van de lo general a lo concreto: sistema, empresa, categoría, curso y actividad. Un papel asignado arriba se hereda hacia abajo.
Los papeles predefinidos
| Papel | Qué puede hacer | Dónde se asigna |
|---|---|---|
| Administrador de plataforma | Todo, en todas las empresas, incluida la auditoría global. | Sistema |
| Gestor | Administra una empresa: usuarios, categorías, cursos, roles, cohortes, cobros e informes. | Empresa, categoría o curso |
| Creador de cursos | Crea cursos nuevos en las categorías que se le asignen. | Empresa o categoría |
| Profesor | Edita el curso, añade actividades, matricula, califica y gestiona grupos. | Curso, categoría o actividad |
| Profesor sin permiso de edición | Califica y participa, pero no cambia la estructura del curso. | Curso o actividad |
| Estudiante | Participa: entrega, hace cuestionarios y usa los foros. | Curso o actividad |
| Invitado | Solo lectura en los cursos que lo permiten. | Curso |
Conceder, denegar y prohibir
Cada capacidad puede quedar sin definir, concedida, denegada o prohibida. «Prohibida» es la única que no se puede revertir más abajo: sirve para cerrar algo en toda la empresa aunque un papel de curso lo conceda.
El editor de capacidades por contexto.
moodle/role:managemoodle/role:assignmoodle/role:override