Authorization: Bearer <access_token>.
El uso principal de OAuth hoy es la conexión de un click desde agentes (Claude, ChatGPT) vía
MCP — ese flujo lo maneja el cliente por ti. Si conectas un agente, ve directo a
MCP y agentes. Esta página es para apps que implementan el flujo a mano.
El flujo (authorization code + PKCE)
Finzaria implementa OAuth 2.1: solo authorization code con PKCE obligatorio (sin implicit grant) y redirect URIs de match exacto.Descubre los endpoints
El Authorization Server publica su metadata en
/.well-known/oauth-authorization-server (RFC 8414). De ahí obtienes authorization_endpoint,
token_endpoint, registration_endpoint y jwks_uri.Registra tu cliente (DCR)
Registra tu app dinámicamente (RFC 7591) en el
registration_endpoint, indicando tus
redirect_uris. Recibes un client_id.Manda al usuario a autorizar
Redirige a
authorization_endpoint con response_type=code, tu client_id, redirect_uri,
scope y el code_challenge (PKCE, método S256). El usuario inicia sesión en Finzaria y ve la
pantalla de consentimiento; al aprobar, regresa a tu redirect_uri con un code.Intercambia el code por tokens
Llama al
token_endpoint con el code y el code_verifier. Recibes un access token y un
refresh token.Refresh tokens
Los access tokens son de vida corta. Renueva con el refresh token en eltoken_endpoint
(grant_type=refresh_token). Guarda el nuevo refresh token que recibas: la rotación invalida el
anterior — reusar uno viejo se trata como señal de robo y revoca la sesión.
Seguridad
- PKCE (
S256) siempre, incluso en clientes confidenciales. - Redirect URIs de match exacto — regístralas completas, sin comodines.
- Nunca guardes tokens en almacenamiento accesible por terceros; trátalos como credenciales.
- El usuario puede revocar el acceso de tu app desde su cuenta en cualquier momento.