-
Notifications
You must be signed in to change notification settings - Fork 0
Permisos y Roles
En Kairo no existen roles globales. Los permisos son por proyecto: un mismo usuario puede ser manager en un proyecto y miembro en otro. Esta decisión de diseño garantiza que los permisos reflejen la realidad del equipo en cada contexto.
El manager es el propietario del proyecto. Se asigna automáticamente al usuario que crea el proyecto. Sus responsabilidades y permisos exclusivos son:
- Agregar y remover miembros
- Crear, activar y cerrar sprints
- Cerrar o eliminar el proyecto
- Transferir el rol de manager a otro miembro
💡 El manager también puede hacer todo lo que hacen los miembros: crear tareas, cambiar estados, agregar comentarios.
Los miembros son usuarios que el manager agrega al proyecto. Sus permisos son:
- Ver el proyecto, sus tareas, sprints y miembros
- Crear tareas (el manager puede editar o eliminarlas)
- Cambiar el estado de las tareas que tienen asignadas
- Agregar comentarios a cualquier tarea del proyecto
- Ver el dashboard y las métricas
⚠️ Un miembro no puede gestionar otros miembros, crear/activar/cerrar sprints, ni cerrar el proyecto.
| Acción | Manager | Miembro |
|---|---|---|
| Ver proyecto y sus datos | ✓ | ✓ |
| Ver dashboard y métricas | ✓ | ✓ |
| Agregar comentarios en tareas | ✓ | ✓ |
| Crear tarea | ✓ | ✓ |
| Cambiar estado de tarea propia | ✓ | ✓ |
| Cambiar estado de tarea ajena | ✓ | ✗ |
| Editar o eliminar una tarea | ✓ | ✗ |
| Mover tarea entre sprints | ✓ | ✗ |
| Agregar o remover miembros | ✓ | ✗ |
| Crear sprint | ✓ | ✗ |
| Activar o cerrar sprint | ✓ | ✗ |
| Editar datos del proyecto | ✓ | ✗ |
| Cerrar o eliminar el proyecto | ✓ | ✗ |
| Transferir rol de manager | ✓ | ✗ |
Si el manager actual necesita ceder el control del proyecto:
- Desde el portal web, ve a la configuración del proyecto
- Selecciona Transferir ownership
- Elige el nuevo manager entre los miembros actuales del proyecto
Tras la transferencia, el ex-manager queda como miembro regular del proyecto.
⚠️ Solo el manager actual puede iniciar una transferencia. Una vez transferido, pierde sus permisos de manager sobre ese proyecto.
Kairo no almacena roles en el token JWT. Cada vez que realizas una acción, el sistema verifica tu relación con el proyecto relevante:
- ¿Eres el
managerdel proyecto? (campoPROJECT.manager) - ¿Tienes una fila en
PROJECT_MEMBERpara ese proyecto? - ¿Eres el usuario asignado a esa tarea específica?
Esto significa que si eres removido de un proyecto, pierdes acceso inmediatamente, incluso si tienes un JWT activo.
Los mismos permisos aplican cuando usas la API directamente. Cada endpoint documenta qué nivel de permiso requiere:
| Nivel | Descripción |
|---|---|
ANY |
Cualquier usuario autenticado (con JWT válido) |
PARTICIPANT |
Manager o miembro del proyecto |
MANAGER |
Solo el manager del proyecto |
ASSIGNED |
El usuario asignado a esa tarea específica |
Ver detalles en Referencia de API.