Esta página recorre cada flujo en tiempo de ejecución con diagramas de secuencia. Los detalles
de los endpoints están en Endpoints e
Intercambio de tokens.
1. Inicio de sesión interactivo (un usuario inicia sesión en una app cliente)
El usuario hace clic en “Iniciar sesión con B Brands” en una app cliente. El IdP lo autentica
y la app cliente recibe tokens de identidad. La app cliente luego aplica
su propia autorización.
POST /api/v3/oauth/decision solo audita la decisión de consentimiento. La continuación
real del código OAuth la realiza el motor vía authorize_url.
2. Consumo de las APIs de B Brands (intercambio de tokens)
Cuando el cliente necesita leer/escribir datos de B Brands en nombre del usuario,
intercambia su token OIDC por un JWT interno de B Brands y lo usa como
Bearer. Las APIs de B Brands lo autorizan con el propio RBAC del usuario.
No confundas POST /api/v3/oauth/exchange (cliente OAuth externo → JWT
interno) con POST /api/v3/auth/sso/exchange (handshake de sesión entre apps
internas de B Brands). Consulta Intercambio de tokens.
3. Refresh de token con revalidación de la habilitación
El refresh vuelve a ejecutar el hook de token de acceso, de modo que un usuario deshabilitado tras la emisión deja
de obtener nuevos tokens.
4. Provisioning vía webhook
Habilitar un acceso en la consola de administración de identidad dispara un webhook que precrea
al usuario en la plataforma de destino. El payload transporta identidad + estado, nunca
roles.
Manejo de fallos: 2xx → delivered; 4xx → failed (sin reintento); 5xx/timeout
→ reintento con backoff exponencial, luego dead_letter + alerta. Consulta
Modelo de datos para el ciclo de vida del evento.
5. Inicio de sesión social para usuarios finales (sistema separado)
El inicio de sesión social para los propios usuarios finales de B Brands es un sistema diferente del
IdP OAuth para clientes externos. Usa el proveedor social del motor administrado
directamente y se cubre en Inicio de sesión social.