template-saas/docs/03-integraciones/INT-002-oauth.md
Adrian Flores Cortes 806612a4db
Some checks are pending
CI / Backend CI (push) Waiting to run
CI / Frontend CI (push) Waiting to run
CI / Security Scan (push) Waiting to run
CI / CI Summary (push) Blocked by required conditions
[REESTRUCTURA-DOCS] refactor: Corregir estructura docs/ segun SIMCO-DOCUMENTACION-PROYECTO
- Renombrar 02-integraciones/ → 03-integraciones/ (resolver prefijo duplicado)
- Renombrar 02-devops/ → 04-devops/ (resolver prefijo duplicado)
- Renombrar architecture/ → 97-adr/ (agregar prefijo numerico)
- Actualizar _MAP.md con nueva estructura y version 2.1.0

Estructura final:
- 00-vision-general/
- 01-modulos/
- 02-especificaciones/
- 03-integraciones/
- 04-devops/
- 97-adr/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 20:34:14 -06:00

2.7 KiB

id title type status priority provider category multi_tenant version created_date updated_date
INT-002 Integracion OAuth Providers Integration Implemented P1 Google/GitHub/Microsoft Authentication true 1.0.0 2026-01-07 2026-01-10

INT-002: OAuth Integration

Metadata

Campo Valor
Codigo INT-002
Proveedor Google, GitHub, Microsoft
Tipo Auth
Estado Implementado
Multi-tenant Si
Fecha integracion 2026-01-10

Documentacion completa: Ver SAAS-001-auth.md

Resumen

Integracion OAuth 2.0 para autenticacion con proveedores externos.

Proveedores Soportados

  • Google
  • GitHub
  • Microsoft (Azure AD)

Caracteristicas

  • OAuth 2.0 Authorization Code Flow
  • Almacenamiento de tokens en tabla oauth_connections
  • Vinculacion de cuentas existentes
  • Creacion automatica de usuarios nuevos

Configuracion

GOOGLE_CLIENT_ID=...
GOOGLE_CLIENT_SECRET=...
GITHUB_CLIENT_ID=...
GITHUB_CLIENT_SECRET=...

Rate Limits

Limite Valor Accion si excede
Requests/min 10000 (Google), 5000 (GitHub) Retry con backoff exponencial

Manejo de Errores

Codigo Descripcion Accion
400 Bad Request Log + no retry
401 Unauthorized Renovar credenciales
429 Rate Limited Backoff exponencial
500 Server Error Retry con backoff

Fallbacks

Estrategia OAuth Fallback

Escenario Estrategia
Provider no disponible Mostrar login local con email/password
Token expirado Refresh automatico con refresh_token
Refresh token falla Redirigir a pantalla de login
Nuevo usuario OAuth Crear cuenta automatica con datos del provider

Degradacion Graceful

  • Si Google OAuth falla: Ofrecer GitHub o Microsoft como alternativa
  • Si todos los OAuth providers fallan: Solo login local disponible
  • Timeout por provider: 10 segundos maximo
  • Cache de configuracion: 5 minutos para reducir llamadas

Multi-tenant

  • Credenciales: Por tenant (cada tenant puede configurar sus propios OAuth apps)
  • Configuracion: Por tenant via tenant_config
  • Aislamiento: Prefijo tenant_id en todas las operaciones

Testing

Sandbox/Test Mode

  • Usar aplicaciones OAuth de desarrollo
  • Usuarios de prueba en consolas de desarrollador
  • Fixtures disponibles para testing unitario

Monitoreo

Metrica Descripcion Alerta
Latencia Tiempo de respuesta >2s
Errores Tasa de errores >1%
Disponibilidad Uptime del servicio <99.9%

Referencias

  • Modulo relacionado: SAAS-001-auth.md

Ultima actualizacion: 2026-01-10 Version: 1.0.0