Principio de funcionamiento
El sistema de permisos de tikento se basa en un modelo aditivo: los permisos efectivos del usuario son la unión de los permisos de todos los roles asignados. Los permisos solo se agregan y nunca se restan.
Ejemplo: si a un usuario se le asignan los roles Manager y Finance, obtiene todos los permisos de Manager (eventos, registros, check-in) más todos los permisos de Finance (pagos, informes, reembolsos).
Tres contextos de roles
Cada rol en tikento opera en uno de tres contextos que determinan el alcance de los permisos:
Contexto global
Roles a nivel de plataforma. Se utilizan para la administración de la propia plataforma tikento. No están disponibles para los organizadores normales.
Contexto de tenant (organización)
Contexto principal para el trabajo del equipo. El rol opera a nivel de toda la organización y se extiende a todos sus eventos.
Ejemplos:
- Admin a nivel de organización -- acceso a todos los eventos y configuraciones
- Finance a nivel de organización -- visualización de finanzas de todos los eventos
Contexto de evento
El rol está limitado a un evento específico. El usuario solo ve el evento al que está vinculado su rol.
Ejemplos:
- Manager a nivel de evento -- gestión de un solo evento
- Support a nivel de evento -- check-in solo en un evento específico
Permisos atómicos
El sistema contiene 57 permisos atómicos, agrupados por áreas:
Eventos
| Permiso | Descripción |
|---|---|
EVENT_CREATE | Creación de un nuevo evento |
EVENT_UPDATE | Edición de un evento |
EVENT_DELETE | Eliminación de un evento |
EVENT_PUBLISH | Publicación de un evento |
EVENT_VIEW | Visualización de un evento |
Registros
| Permiso | Descripción |
|---|---|
REGISTRATION_VIEW | Visualización de la lista de participantes |
REGISTRATION_MANAGE | Confirmación, cancelación de registros |
REGISTRATION_EXPORT | Exportación de la lista de participantes |
CHECKIN_MANAGE | Check-in de participantes |
Pagos
| Permiso | Descripción |
|---|---|
PAYMENT_VIEW | Visualización de pagos |
PAYMENT_REFUND | Inicio de reembolsos |
PAYMENT_GATEWAY_MANAGE | Configuración de pasarelas de pago |
Formularios
| Permiso | Descripción |
|---|---|
FORM_CREATE | Creación de formulario de registro |
FORM_UPDATE | Edición de formulario |
FORM_DELETE | Eliminación de formulario |
Equipo
| Permiso | Descripción |
|---|---|
TEAM_INVITE | Invitación al equipo |
TEAM_REMOVE | Eliminación del equipo |
ROLE_ASSIGN | Asignación de roles |
Notificaciones
| Permiso | Descripción |
|---|---|
NOTIFICATION_SEND | Envío manual de notificaciones |
NOTIFICATION_TEMPLATE_MANAGE | Edición de plantillas |
Informes
| Permiso | Descripción |
|---|---|
REPORT_VIEW | Visualización de informes |
REPORT_EXPORT | Exportación de informes |
Experimentos
| Permiso | Descripción |
|---|---|
EXPERIMENT_MANAGE | Creación y gestión de experimentos A/B (Business+) |
Facturación
| Permiso | Descripción |
|---|---|
BILLING_MANAGE | Gestión del plan y pagos (solo Owner) |
La lista completa de 57 permisos está disponible en la sección Configuración -> Equipo -> Permisos (para los planes Business y Enterprise).
Roles temporales
Puede asignar un rol con plazo de vigencia limitado. Esto es conveniente para:
- Voluntarios en el evento -- rol Support por uno o dos días del evento
- Gestores temporales -- rol Manager durante el período de preparación del evento
- Auditores -- rol Finance durante el período de revisión
Cómo asignar un rol temporal
- Vaya a Configuración -> Equipo.
- Seleccione el miembro del equipo.
- Al asignar el rol, active el interruptor Limitar por tiempo.
- Indique la fecha y hora de finalización de la vigencia del rol.
- Haga clic en Guardar.
Al llegar el momento indicado, el rol se desactiva automáticamente. El usuario pierde los permisos correspondientes, pero sigue siendo miembro del equipo. El registro del rol temporal se conserva en el audit log.
Caché de permisos
Para garantizar una verificación rápida de los permisos, estos se almacenan en caché en Redis:
- Clave de caché:
perms:{tenantId}:{userId}:{eventId} - Tiempo de vida del caché (TTL): 60 segundos
- Al cambiar un rol, el caché se invalida automáticamente
En la práctica, esto significa que después de cambiar un rol, los nuevos permisos se aplican en un máximo de un minuto. El usuario no necesita cerrar sesión e iniciarla de nuevo.
Verificación de permisos
El organizador puede verificar qué permisos tiene cada miembro del equipo:
- Vaya a Configuración -> Equipo.
- Haga clic en el nombre del participante.
- En la sección Permisos efectivos se muestra la lista completa de permisos considerando todos los roles asignados.
Los permisos obtenidos de diferentes roles se marcan con las etiquetas correspondientes.