El poder se diseña en una tabla, no en un botón
Cuando solo hay «usuario» y «admin», el admin puede con todo y cualquier error de uno es un desastre total. La forma profesional es una matriz de roles y permisos: filas = roles, columnas = acciones, y en cada casilla decides sí o no. Esa matriz, y no una sensación, es lo que le pides a la IA que implemente.
Una matriz para un gestor de tareas
| Rol | Ver tarea | Crear | Editar la suya | Editar la ajena | Borrar | Ver a todos |
|---|---|---|---|---|---|---|
| Invitado | Sí (asignadas) | No | No | No | No | No |
| Miembro | Sí (proyecto) | Sí | Sí | No | Solo la suya | No |
| Manager | Sí | Sí | Sí | Sí | Sí | Sí |
| Admin | Sí | Sí | Sí | Sí | Sí | Sí (y gestiona roles) |
Tres principios que evitan el abuso de poder
La matriz hace visible dónde puede colarse un abuso
- Principios
- Mínima autoridad
- Cada rol, solo lo que necesita
- En el servidor
- El permiso se comprueba en el backend
- Verificable
- Cada casilla es un criterio de prueba
- Mínima autoridad
Prompt con la matriz
La matriz como criterio de aceptación
Implementa control por roles con esta matriz EXACTA (ningun rol obtiene permiso extra sin que lo diga):\n- Invitado: solo VER tareas asignadas.\n- Miembro: ver/crear/editar SUS tareas; borrar solo las suyas.\n- Manager: ademas editar/ver tareas ajenas y del proyecto.\n- Admin: todo lo anterior + gestionar roles.\n\nReglas:\n- la comprobacion se hace en el SERVIDOR en cada endpoint, leyendo el rol del token\n- si un endpoint pide permiso que el rol no tiene, responde 403\n- al final, generame la lista de endpoints y que rol necesita cada uno para que yo la audite.Prueba
Un «Invitado» logra borrar una tarea llamando directo al endpoint DELETE aunque su rol no lo permite. ¿Qué falló en la implementación?
Dar al rol «admin» el mayor número posible de permisos es una buena práctica.
Detecta el diseño de permisos defectuoso
Revisas una matriz de roles que propuso una IA. Señala la decisión que rompe el principio de mínima autoridad:
Marca la línea o las líneas con error y pulsa Comprobar.
Dibuja la matriz de roles y permisos de tu proyecto (3-4 roles, tus acciones reales). Conviértela en criterio de aceptación y pide a la IA que la aplique en el servidor y te la devuelva para auditar.
Si no escribiste la matriz, la IA decidirá quién puede hacer qué… y no consultó contigo.
Tu texto se guarda sólo en este dispositivo.
Comentarios
Inicia sesión para comentar.
Todavía no hay comentarios. Sé la primera persona en opinar.