Guía de roles y permisos — ClubSy
Público: Director del club (
club_admin)Finalidad: Referencia clara de lo que puede hacer cada rol dentro de la aplicación.
Tabla de contenido
- Descripción general de los roles
- Permisos detallados por rol
- Matriz de permisos por categoría
- Guía de asignación rápida
- Glosario de permisos
1. Descripción general de los roles
| Rol (código) | Nombre visible | Descripción |
|---|---|---|
club_admin |
Director del club | Gestiona el club, los equipos, los miembros y los eventos del club |
operations_manager |
Coordinador de operaciones | Gestiona la planificación, las convocatorias y las notificaciones operativas |
team_manager |
Delegado del equipo | Gestión administrativa de la plantilla y la logística |
head_coach |
Entrenador principal | Gestiona los eventos y las convocatorias del equipo |
assistant_coach |
Entrenador asistente | Apoya los eventos y las convocatorias del equipo |
medical_staff |
Personal médico | Gestiona la disponibilidad y el estado físico |
community_manager |
Responsable de comunidad | Gestiona las redes sociales del club y la comunidad en línea |
player |
Jugador | Participa en convocatorias y gestiona su propia disponibilidad |
club_supporter |
Miembro de la comunidad | Usuario externo que sigue a clubes y equipos en modo de solo lectura |
Jerarquía general:
club_admin>operations_manager/team_manager>head_coach/assistant_coach>medical_staff/community_manager>player>club_supporter
2. Permisos detallados por rol
🏛️ Director del club (club_admin)
Administrador principal del club. Tiene el control total del club y sus equipos, salvo la configuración global de la plataforma.
Club y equipos
| Permiso | Descripción |
|---|---|
| Administrar el club | Editar los datos del club |
| Ver el club | Acceso de lectura a la información del club |
| Administrar equipos | Crear, editar y eliminar equipos |
| Ver equipos | Acceso de lectura a los equipos |
Miembros y comunicaciones
| Permiso | Descripción |
|---|---|
| Administrar miembros | Invitar, asignar y eliminar miembros |
| Administrar invitaciones | Crear, aceptar o rechazar invitaciones entre clubes |
| Publicar comunicaciones del club | Publicar avisos, noticias y novedades |
| Enviar notificaciones | Enviar notificaciones a miembros o rivales |
| Ver avisos | Ver las notificaciones del equipo o del club |
Eventos
| Permiso | Descripción |
|---|---|
| Crear eventos | Crear eventos del equipo o del club |
| Editar eventos | Modificar eventos existentes |
| Eliminar eventos | Eliminar eventos existentes |
| Convocar participantes | Invitar a equipos, roles o personas |
Disponibilidad y convocatorias
| Permiso | Descripción |
|---|---|
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Actualizar la disponibilidad del equipo | Modificar la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores |
| Pasar lista | Registrar la asistencia real durante el evento o después |
Informes
| Permiso | Descripción |
|---|---|
| Exportar informes | Exportar informes avanzados |
| Actualizar el perfil propio | Editar el perfil propio |
📋 Coordinador de operaciones (operations_manager)
Gestión operativa del día a día. Puede gestionar equipos, miembros y horarios, pero no puede eliminar eventos ni acceder a la configuración global del club.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Administrar equipos | Crear, editar y eliminar equipos |
| Ver equipos | Acceso de lectura a los equipos |
| Administrar miembros | Invitar, asignar y eliminar miembros |
| Administrar invitaciones | Crear, aceptar o rechazar invitaciones entre clubes |
| Crear eventos | Crear eventos del equipo o del club |
| Editar eventos | Modificar eventos existentes |
| Convocar participantes | Invitar a equipos, roles o personas |
| Pasar lista | Registrar la asistencia durante el evento o después |
| Publicar comunicaciones del club | Publicar avisos, noticias y novedades |
| Enviar notificaciones | Enviar notificaciones a miembros o rivales |
| Ver avisos | Ver las notificaciones del equipo o del club |
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores |
| Actualizar el perfil propio | Editar el perfil propio |
📁 Delegado del equipo (team_manager)
Gestión logística y administrativa del equipo. No gestiona sus propios eventos, pero sí la plantilla y la asistencia.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Ver equipos | Acceso de lectura a los equipos |
| Administrar miembros | Invitar, asignar y eliminar miembros del equipo |
| Convocar participantes | Invitar a equipos, roles o personas |
| Pasar lista | Registrar la asistencia durante el evento o después |
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Actualizar la disponibilidad del equipo | Modificar la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores |
| Enviar notificaciones | Enviar notificaciones a miembros o rivales |
| Ver avisos | Ver las notificaciones del equipo o del club |
| Actualizar el perfil propio | Editar el perfil propio |
🎯 Entrenador principal (head_coach)
Control técnico de los eventos y las convocatorias. Crea y gestiona los eventos del equipo, pero no puede gestionar miembros ni la configuración del club.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Ver equipos | Acceso de lectura a los equipos |
| Crear eventos | Crear eventos del equipo o del club |
| Editar eventos | Modificar eventos existentes |
| Convocar participantes | Invitar a equipos, roles o personas |
| Pasar lista | Registrar la asistencia durante el evento o después |
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores |
| Ver avisos | Ver las notificaciones del equipo o del club |
| Actualizar el perfil propio | Editar el perfil propio |
🤝 Entrenador asistente (assistant_coach)
Apoyo al entrenador. Tiene los mismos permisos que el entrenador principal, excepto que cannot delete events.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Ver equipos | Acceso de lectura a los equipos |
| Crear eventos | Crear eventos del equipo o del club |
| Editar eventos | Modificar eventos existentes |
| Convocar participantes | Invitar a equipos, roles o personas |
| Pasar lista | Registrar la asistencia durante el evento o después |
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores |
| Ver avisos | Ver las notificaciones del equipo o del club |
| Actualizar el perfil propio | Editar el perfil propio |
Diferencia respecto al entrenador principal: los permisos son los mismos. La diferencia suele depender del contexto organizativo.
🏥 Personal médico (medical_staff)
Se centra en la disponibilidad y el estado físico. Puede consultar y actualizar la disponibilidad de todos los miembros, pero no crea ni gestiona eventos.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Ver equipos | Acceso de lectura a los equipos |
| Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
| Actualizar la disponibilidad del equipo | Modificar la disponibilidad de otros miembros |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Actualizar el perfil propio | Editar el perfil propio |
📢 Responsable de comunidad (community_manager)
Gestión de la comunicación externa. Solo puede publicar contenido y enviar notificaciones; no tiene acceso a la gestión deportiva.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Publicar comunicaciones del club | Publicar avisos, noticias y novedades |
| Enviar notificaciones | Enviar notificaciones a miembros o rivales |
| Ver avisos | Ver las notificaciones del equipo o del club |
| Actualizar el perfil propio | Editar el perfil propio |
⚽ Jugador (player)
Rol básico de participante. Gestiona únicamente su disponibilidad y responde a sus propias convocatorias.
| Permiso | Descripción |
|---|---|
| Ver el club | Acceso de lectura a la información del club |
| Ver equipos | Acceso de lectura a los equipos |
| Actualizar la disponibilidad propia | Registrar la disponibilidad propia |
| Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
| Actualizar el perfil propio | Editar el perfil propio |
👁️ Miembro de la comunidad (club_supporter)
Usuario externo o seguidor. Acceso de solo lectura al contenido público del club.
| Permiso | Descripción |
|---|---|
| Seguir clubes y equipos | Seguir y dejar de seguir clubes y equipos |
| Ver el calendario público | Consultar el calendario público de los clubes y equipos seguidos |
| Ver la galería pública | Consultar el contenido multimedia público del club |
| Ver avisos de la comunidad | Leer avisos y noticias visibles públicamente |
| Recibir notificaciones de la comunidad | Recibir notificaciones segmentadas de los clubes seguidos |
| Administrar el perfil de la comunidad | Actualizar el perfil y las preferencias de la comunidad |
3. Matriz de permisos por categoría
Leyenda: ✅ Tiene permiso · ❌ No tiene permiso
Administración global
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Administrar roles | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Administrar permisos | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Asignar roles | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Consultar el registro de auditoría | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Exportar informes | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Club y equipos
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Administrar el club | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Ver el club | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| Administrar equipos | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Ver equipos | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
Miembros e invitaciones
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Administrar miembros | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Administrar invitaciones entre clubes | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Eventos
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Crear eventos | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Editar eventos | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Eliminar eventos | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Convocar participantes | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
Disponibilidad y convocatorias
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Actualizar la disponibilidad propia | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
| Ver la disponibilidad del equipo | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Actualizar la disponibilidad del equipo | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ |
| Pasar lista | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Responder a la propia convocatoria | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
| Responder en nombre de otros | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
Comunicaciones y notificaciones
| Permiso | club_admin | operations_mgr | team_mgr | head_coach | asst_coach | medical | comm_mgr | player | supporter | |
|---|---|---|---|---|---|---|---|---|---|---|
| Publicar comunicaciones del club | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ |
| Enviar notificaciones | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ |
| Ver avisos | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ |
4. Guía de asignación rápida
Utiliza esta guía para decidir qué rol asignar a cada persona de tu organización:
| Situación | Rol recomendado |
|---|---|
| Persona que administra toda la plataforma y configura los roles | |
| Director o presidente del club | club_admin |
| Coordinador de horarios, logística y comunicaciones | operations_manager |
| Delegado del equipo o secretario técnico | team_manager |
| Entrenador principal que crea y gestiona partidos y entrenamientos | head_coach |
| Segundo entrenador o preparador físico con permisos de apoyo | assistant_coach |
| Fisioterapeuta o médico que gestiona las ausencias y la disponibilidad | medical_staff |
| Responsable de redes sociales o comunicaciones del club | community_manager |
| Jugador de la plantilla | player |
| Aficionado, familiar o seguidor externo | club_supporter |
Advertencias para el administrador
⚠️ Solo
club_adminpuede eliminar eventos. Asigna estos roles con cuidado.
⚠️ Solo el personal autorizado puede gestionar globalmente los roles y permisos. No asignes este rol al personal operativo.
⚠️
club_supporteres el único rol sin acceso a los datos internos del club. Utilízalo para personas externas.
⚠️
medical_staffpuede modificar la disponibilidad de cualquier miembro del equipo. Asegúrate de asignarlo únicamente a personal sanitario autorizado.
5. Glosario de permisos
| Clave del permiso | Nombre visible | Descripción completa |
|---|---|---|
attendance.take |
Pasar lista | Registrar la asistencia real de los miembros convocados (durante el evento o después) |
audit.read |
Consultar el registro de auditoría | Consultar los registros de auditoría |
availability.read_all |
Ver la disponibilidad del equipo | Ver la disponibilidad de otros miembros |
availability.update_all |
Actualizar la disponibilidad del equipo | Actualizar la disponibilidad de otros miembros |
availability.update_self |
Actualizar la disponibilidad propia | Actualizar la disponibilidad personal |
callups.respond_others |
Responder en nombre de otros | Confirmar o rechazar en nombre de los jugadores del equipo |
callups.respond_self |
Responder a la propia convocatoria | Confirmar o rechazar la propia invitación |
club.manage |
Administrar el club | Editar los datos del club |
club.view |
Ver el club | Acceso de lectura a la información del club |
communications.publish_club |
Publicar comunicaciones del club | Publicar avisos, noticias y novedades para los miembros del club |
community.follow_entities |
Seguir clubes y equipos | Permite seguir y dejar de seguir clubes y equipos |
community.manage_profile |
Administrar el perfil de la comunidad | Permite actualizar el perfil y las preferencias de la comunidad |
community.read_calendar_public |
Ver el calendario público | Permite consultar el calendario público de los clubes y equipos seguidos |
community.read_gallery_public |
Ver la galería pública | Permite consultar el contenido multimedia público del club |
community.read_notices |
Ver avisos de la comunidad | Permite leer avisos y noticias de la comunidad visibles públicamente |
community.receive_notifications |
Recibir notificaciones de la comunidad | Permite recibir notificaciones segmentadas de los clubes y equipos seguidos |
events.create |
Crear eventos | Crear eventos del equipo o del club |
events.delete |
Eliminar eventos | Eliminar eventos existentes |
events.invite |
Convocar participantes | Invitar a equipos, roles o personas |
events.update |
Editar eventos | Editar eventos existentes |
invitations.manage |
Administrar invitaciones | Crear, aceptar o rechazar invitaciones entre clubes |
members.manage |
Administrar miembros | Invitar, asignar y eliminar miembros |
notifications.send |
Enviar notificaciones | Enviar notificaciones a miembros o rivales |
notifications.view_notices |
Ver avisos | Ver las notificaciones del equipo o del club |
permissions.manage_global |
Administrar permisos | Crear, editar o eliminar permisos globales |
profile.update_self |
Actualizar el perfil propio | Editar el perfil propio |
reports.export |
Exportar informes | Exportar informes avanzados |
roles.manage_global |
Administrar roles | Crear, editar o eliminar roles globales |
team.manage |
Administrar equipos | Crear, editar o eliminar equipos |
team.view |
Ver equipos | Acceso de lectura a los equipos |
users.assign_roles_global |
Asignar roles | Asignar o retirar roles a los usuarios |
Documento generado a partir de supabase_info/roles_with_permissions.json · ClubSy v1.0