feat: habilitar acceso automático al Hub por dominio

This commit is contained in:
2026-07-30 14:07:25 -04:00
parent 96e831ea01
commit a6eb81831a
9 changed files with 440 additions and 81 deletions
+3 -3
View File
@@ -129,7 +129,7 @@ Usuario
| Build | Vite 6 | Desarrollo, validación y compilación |
| UI | CSS + Lucide React | Estilos e iconografía |
| Autenticación | Supabase Auth + Google OAuth | Inicio de sesión corporativo |
| Base de datos | Supabase / PostgreSQL | Catálogo, usuarios, favoritos, recientes y solicitudes |
| Base de datos | Supabase / PostgreSQL | Catálogo, administradores/bloqueos, favoritos, recientes y solicitudes |
| Seguridad | Row Level Security | Control de lectura y escritura según usuario y rol |
| Archivos | Supabase Storage | Almacenamiento de íconos |
| Sincronización | Supabase Realtime | Actualización del catálogo en sesiones abiertas |
@@ -153,7 +153,7 @@ Usuario
## 📐 Reglas de negocio
1. Solo pueden iniciar sesión usuarios activos registrados en `glm_hub_authorized_users` y con correo del dominio `@gomezleemarketing.com`.
1. Todo usuario autenticado con correo `@gomezleemarketing.com` puede entrar al Hub como Usuario; `glm_hub_authorized_users` se utiliza únicamente para administradores y bloqueos excepcionales.
2. Los roles válidos son `admin` y `member`.
3. Los administradores autorizados son:
- José Leopoldo Gómez — `jgomez@gomezleemarketing.com`
@@ -318,7 +318,7 @@ Si se utiliza un VirtualHost local, registrar también su URL completa.
1. El usuario entra al Hub y selecciona **Continuar con Google**.
2. Supabase Auth valida la cuenta de Google.
3. El frontend consulta `glm_hub_authorized_users` para confirmar que el usuario esté activo y conocer su rol.
3. El frontend permite automáticamente el acceso al dominio corporativo y consulta `glm_hub_authorized_users` solo para detectar administradores o bloqueos excepcionales.
4. El catálogo compartido se carga desde `glm_hub_apps`.
5. Los favoritos y recientes se cargan para el usuario autenticado.
6. Supabase Realtime mantiene el catálogo actualizado en sesiones abiertas.