Roles y permisos
SecureCodingHub usa control de acceso basado en roles dentro de cada organización con dos roles. Cada rol tiene un conjunto definido de permisos en las superficies de administración y la experiencia de estudiante.
Visión general de roles
A cada usuario de su organización se le asigna uno de los dos roles. Los valores internos del enum son org_admin y learner; la interfaz de administración los muestra como los nombres legibles a continuación.
| Rol | Descripción |
|---|---|
| Administrador de organización | Administrador a nivel de organización. Gestiona usuarios, equipos, asignaciones, cursos personalizados, SSO, SCIM, SCORM, claves de API, webhooks, registro de auditoría, informes de cumplimiento y ajustes de organización. Tiene acceso al panel de administración. |
| Estudiante | Rol estándar para todos los desarrolladores. Completa desafíos de práctica y escenarios de aprendizaje, sigue el progreso personal, gana XP y gestiona sus propias preferencias de stack. |
Matriz de permisos
La siguiente tabla muestra qué permisos están disponibles para cada rol:
| Permiso | Administrador de organización | Estudiante |
|---|---|---|
| Ver el panel de administración | ✓ | ✗ |
| Gestionar usuarios (añadir, editar, eliminar) | ✓ | ✗ |
| Gestionar equipos | ✓ | ✗ |
| Crear y gestionar asignaciones | ✓ | ✗ |
| Construir y gestionar cursos personalizados | ✓ | ✗ |
| Configurar SSO | ✓ | ✗ |
| Configurar aprovisionamiento SCIM | ✓ | ✗ |
| Generar paquetes SCORM | ✓ | ✗ |
| Gestionar claves de API | ✓ | ✗ |
| Gestionar endpoints de webhook | ✓ | ✗ |
| Ver el registro de auditoría | ✓ | ✗ |
| Ver los paneles de cumplimiento | ✓ | ✗ |
| Generar informes de cumplimiento / formación | ✓ | ✗ |
| Editar los ajustes de organización (clasificación, umbral) | ✓ | ✗ |
| Completar desafíos de práctica | ✓ | ✓ |
| Completar escenarios de aprendizaje | ✓ | ✓ |
| Ver el propio progreso y las asignaciones | ✓ | ✓ |
| Ver la clasificación (cuando la organización lo permita) | ✓ | ✓ |
Cambiar roles
Los administradores de organización pueden ascender a un estudiante a Administrador de organización o degradar a un administrador de organización a Estudiante dentro de su organización. Los cambios de rol surten efecto inmediatamente en la siguiente solicitud del usuario. Cada cambio de rol se escribe en el registro de auditoría con el actor, el objetivo y la marca de tiempo.
Buenas prácticas
Minimizar los administradores de organización
Mantenga el recuento de administradores de organización en 2-3 por organización. Esto limita la superficie de configuración accidental errónea y mantiene limpios los rastros de auditoría.
Estudiante para los desarrolladores
Use el rol de Estudiante para todos los desarrolladores. Tienen acceso completo al contenido de formación, al seguimiento del progreso y a las preferencias de stack sin ninguna capacidad de administración.
Elegir roles para su organización
El diseño de roles dentro de una plataforma de formación parece tener menos riesgo que el diseño de roles dentro de sistemas de producción, y por eso mismo tiende a hacerse con descuido. La plataforma de formación contiene datos sobre quién sabe qué, qué equipos son más débiles en qué temas y qué ingenieros han completado la formación obligatoria de cumplimiento. Esos datos son sensibles por derecho propio — tanto como información competitiva como evidencia en conversaciones de auditoría — y el modelo de roles debería reflejarlo.
Administrador de organización frente a delegar en los líderes de equipo
La tentación en las organizaciones que crecen es hacer Administrador de organización a cada manager de ingeniería para que gestione sus propios equipos sin abrir tickets. El coste de ese patrón aparece después. Los administradores de organización pueden ver los datos de cada equipo, no solo del suyo, lo que significa que un manager puede ver cómo va el equipo de un par sin que ese par lo sepa. También pueden reasignar usuarios entre equipos, cambiar plazos de asignaciones que no crearon y modificar la configuración de SSO. Para la mayoría de las organizaciones, dos o tres administradores de organización es el techo adecuado — normalmente el responsable de ingeniería o de AppSec más uno o dos administradores designados.
Para las operaciones del día a día a nivel de equipo, el mejor patrón es mantener a los líderes de equipo como Estudiantes y darles el filtro del panel para su equipo. Obtienen la visibilidad que necesitan sin el poder de configuración que no necesitan. Si un líder de equipo necesita crear una asignación para su equipo, el administrador de organización puede hacerlo en un par de minutos — mucho más barato que el coste a largo plazo de conceder acceso administrativo permanente a un grupo más amplio del necesario.
Privilegio mínimo y registro de auditoría
El principio de privilegio mínimo se aplica dentro de la plataforma de formación igual que en cualquier otro sitio. Cada administrador de organización adicional es una credencial más cuyo compromiso permite a un atacante leer sus datos de formación, modificar su configuración de SCIM o, calladamente, conceder a su propia cuenta externa acceso de administración. El privilegio mínimo práctico aquí significa establecer Estudiante como rol por defecto para las nuevas incorporaciones, ascender solo cuando la necesidad operativa esté clara y degradar con prontitud cuando alguien cambia de rol.
Los cambios de rol y las acciones administrativas significativas se registran con marca de tiempo e identidad del actor por la misma razón por la que los sistemas de producción registran las acciones privilegiadas. Cuando algo sale mal — se elimina a un usuario que no se debía haber eliminado, se cambia una asignación días antes de una auditoría, se elimina un equipo por error — el registro de auditoría es el artefacto que le permite reconstruir lo sucedido. Téngalo en cuenta al conceder derechos de administración, ya que el rastro de auditoría acabará siendo leído por alguien, y una plantilla de administradores reducida lo hace legible. Para los detalles sobre la gestión de las personas dentro de estos roles, vea Gestión de usuarios.