Conceptos

OAuth y OIDC

Estándares de la industria para autorización delegada (OAuth 2.0) y autenticación federada (OpenID Connect), habilitando login con terceros y acceso seguro a APIs.

seed#oauth#oidc#authentication#authorization#jwt#identity

¿Qué es?

  • OAuth 2.0: protocolo de autorización que permite a aplicaciones acceder a recursos en nombre de un usuario sin conocer sus credenciales
  • OpenID Connect (OIDC): capa de identidad sobre OAuth 2.0 que añade autenticación

Flujos OAuth 2.0

FlujoUso
Authorization CodeApps web con backend
Authorization Code + PKCESPAs, mobile apps
Client CredentialsMachine-to-machine
Device CodeDispositivos sin browser

Tokens

TokenPropósitoDuraciónEstándar
Access TokenAutoriza acceso a recursosCorta (minutos-horas)OAuth 2.0
Refresh TokenObtiene nuevos access tokensLarga (días-semanas)OAuth 2.0
ID TokenContiene información del usuarioCortaOIDC (siempre JWT)

JWT (JSON Web Token)

Formato común para tokens: header.payload.signature. Permite verificar integridad sin llamar al servidor de autenticación.

Proveedores

  • Auth0, Okta (SaaS)
  • AWS Cognito, Azure AD B2C (cloud)
  • Keycloak (open-source)

¿Por qué importa?

OAuth 2.0 y OpenID Connect son los estándares de autenticación y autorización de la web moderna. Implementarlos correctamente protege a los usuarios y a la aplicación. Implementarlos mal crea vulnerabilidades que los atacantes conocen bien.

Referencias

Conceptos