Tema 13

13. Single Sign-On, federación de identidad y confianza entre dominios

En ecosistemas modernos, una misma identidad necesita operar en múltiples aplicaciones sin repetir autenticación de forma aislada en cada una. Single Sign-On y federación de identidad buscan resolver ese problema compartiendo confianza entre sistemas. Bien diseñados, reducen fricción y mejoran control central. Mal implementados, amplifican el impacto de un error o compromiso.

Objetivo Entender cómo una identidad se reutiliza entre múltiples aplicaciones
Enfoque Arquitectónico, práctico y orientado a confianza
Resultado Distinguir SSO, federación e integración de dominios de identidad

13.1 Introducción

Cuando cada aplicación maneja su propio login, los usuarios terminan con múltiples credenciales, la organización pierde control central y el ciclo de vida de acceso se vuelve más difícil de gobernar. Frente a eso, muchas arquitecturas adoptan autenticación centralizada y confianza entre aplicaciones.

Single Sign-On, o SSO, permite que una autenticación inicial habilite el acceso a múltiples sistemas relacionados. La federación de identidad amplía esa idea cuando los sistemas no pertenecen necesariamente al mismo dominio administrativo o cuando la autenticación se delega a otra organización o proveedor.

Para entender bien estos conceptos hay que mirar menos el “botón de login” y más las relaciones de confianza que existen detrás.

13.2 Qué es Single Sign-On

Single Sign-On es un enfoque en el que un usuario se autentica una vez ante un componente central y luego puede acceder a varias aplicaciones sin repetir login completo en cada una de ellas, siempre dentro del alcance de confianza definido.

La promesa principal del SSO es doble:

  • Reducir fricción para el usuario.
  • Centralizar mejor autenticación, políticas y gobierno.

Sin embargo, SSO no significa que todas las aplicaciones compartan exactamente la misma autorización. Comparten autenticación o identidad validada, pero cada aplicación puede y debe seguir aplicando sus propias reglas de acceso.

13.3 Qué es federación de identidad

La federación de identidad ocurre cuando un sistema acepta identidad emitida o validada por otro dominio de confianza. En lugar de autenticar localmente al usuario con su propia base de credenciales, una aplicación o servicio confía en una afirmación emitida por un proveedor externo o por otra organización.

Esto es especialmente útil cuando:

  • Una empresa consume aplicaciones SaaS externas.
  • Organizaciones distintas necesitan interoperar.
  • Se quiere evitar replicar cuentas y credenciales en cada servicio.
  • El usuario ya tiene una identidad confiable en otro dominio.

La clave de la federación no es compartir usuarios, sino compartir confianza verificable sobre la autenticación e identidad.

13.4 SSO y federación: relación y diferencia

Ambos conceptos están relacionados, pero no son exactamente lo mismo. SSO describe la experiencia o el resultado de autenticarse una vez y reutilizar ese estado en varias aplicaciones. La federación describe el mecanismo de confianza entre dominios o sistemas distintos.

Concepto Pregunta principal Foco
SSO ¿Cómo evito que el usuario se autentique repetidamente? Experiencia y reutilización del login
Federación ¿Cómo confío en la identidad validada por otro dominio? Relación de confianza entre sistemas o entidades

En la práctica, muchas soluciones de SSO se implementan mediante federación, pero conviene separar mentalmente ambos planos.

13.5 Componentes típicos en una arquitectura de SSO

En una arquitectura típica aparecen al menos estos actores:

  • Usuario: quien intenta acceder a una aplicación.
  • Aplicación consumidora: también llamada relying party o service provider según el protocolo.
  • Proveedor de identidad (IdP): autentica al usuario y emite afirmaciones o tokens.
  • Sesión central: estado que permite evitar reautenticación continua.

La aplicación deja de validar directamente usuario y contraseña y pasa a confiar en la identidad emitida por el IdP dentro del marco acordado.

13.6 Relación de confianza entre dominios

La federación depende de una relación de confianza explícita. Una aplicación no debería aceptar identidad de cualquier emisor, sino solo de aquellos configurados y validados como confiables.

Esa confianza suele involucrar:

  • Identificación del emisor autorizado.
  • Validación criptográfica de la afirmación o token.
  • Restricción de audiencia o destino permitido.
  • Validación de tiempos, expiración y condiciones.
  • Mapeo claro entre identidad externa y representación local.

Sin estas validaciones, la federación se convierte en una puerta para aceptar identidades no verificadas o mal emitidas.

13.7 Qué gana el usuario con SSO

Desde la perspectiva del usuario, SSO reduce fricción. Disminuye la cantidad de veces que debe autenticarse y reduce la necesidad de recordar múltiples credenciales para aplicaciones corporativas o integradas.

Esto tiene efectos positivos reales:

  • Menos credenciales dispersas.
  • Menor tendencia a reutilizar contraseñas débiles.
  • Experiencia más consistente entre sistemas.
  • Mayor adopción de MFA centralizada.

Sin embargo, la comodidad del usuario no es el único objetivo. De hecho, muchas veces la verdadera ganancia está del lado del gobierno central.

13.8 Qué gana la organización con SSO y federación

Para la organización, el valor de SSO y federación suele ser aún mayor que para el usuario:

  • Centraliza políticas de autenticación.
  • Permite aplicar MFA y controles adaptativos desde un punto común.
  • Facilita altas y bajas sin replicar usuarios localmente en cada sistema.
  • Mejora trazabilidad y gobierno sobre el acceso.
  • Reduce la necesidad de almacenar credenciales en múltiples aplicaciones.

Esto convierte al IdP en una pieza crítica de la arquitectura de identidad, no solo en una mejora de experiencia.

13.9 SSO no resuelve autorización local

Uno de los errores más comunes es pensar que, si una aplicación ya recibe la identidad desde un proveedor central, entonces ya no necesita resolver autorización propia. Eso es falso.

El IdP puede decir quién es el usuario o proveer ciertos atributos. Pero la aplicación todavía debe decidir:

  • Qué puede hacer ese usuario.
  • Sobre qué recursos.
  • En qué tenant o contexto.
  • Con qué restricciones locales.

La autenticación puede delegarse. La autorización de negocio rara vez desaparece.

13.10 Mapeo entre identidad externa y representación local

Cuando una aplicación acepta identidad federada, necesita traducir esa identidad a su modelo interno. Esto puede implicar mapear:

  • Identificador externo a identificador local.
  • Atributos como correo, tenant o área.
  • Grupos o roles emitidos por el IdP.
  • Estado de la cuenta y condiciones locales.

Si este mapeo es ambiguo o inconsistente, la aplicación puede asignar permisos incorrectos o aceptar identidades válidas pero mal asociadas.

13.11 Riesgo de concentración: un login para todo

SSO trae una ventaja evidente, pero también concentra riesgo. Si el punto central de autenticación falla o es comprometido, el impacto puede alcanzar a muchas aplicaciones al mismo tiempo.

Esto obliga a tratar al proveedor de identidad como un activo crítico. No es una pieza auxiliar. Debe diseñarse con:

  • Alta disponibilidad.
  • MFA robusta.
  • Protección administrativa fuerte.
  • Monitoreo y trazabilidad.
  • Controles de cambio estrictos.

13.12 SSO interno versus federación con terceros

No es lo mismo un ecosistema donde varias aplicaciones internas comparten el mismo IdP corporativo que una relación de federación con un proveedor SaaS externo o con otra organización.

En el primer caso, la organización suele tener más control sobre identidad, atributos y políticas. En el segundo, debe evaluar con cuidado:

  • Qué afirmaciones acepta.
  • Qué confianza deposita en el emisor externo.
  • Qué ocurre ante caídas o desincronización.
  • Cómo se gobierna el ciclo de vida de usuarios federados.

13.13 Just-in-time provisioning y cuentas locales

Cuando una aplicación consume identidad federada, puede optar por distintas estrategias de representación local. A veces mantiene cuentas locales previamente creadas. Otras veces usa aprovisionamiento just-in-time al primer ingreso, creando una representación mínima del usuario a partir de la identidad emitida.

Este enfoque reduce fricción, pero debe diseñarse con cuidado. Si la creación local se hace de forma demasiado permisiva, puede aparecer sprawl de cuentas o asignación automática de permisos sin suficiente validación contextual.

13.14 Inicio de sesión único y cierre de sesión

El login centralizado suele ser más fácil de imaginar que el logout consistente. Cuando varias aplicaciones confían en una sesión central, surge una pregunta práctica: ¿qué significa cerrar sesión?

Puede haber varios niveles:

  • Cerrar la sesión local de una aplicación.
  • Cerrar la sesión central del IdP.
  • Invalidar sesiones en múltiples servicios relacionados.

Una implementación incompleta puede hacer que el usuario crea haber salido, mientras algunas aplicaciones siguen aceptando una sesión vigente. Por eso el diseño de logout federado es un aspecto real de seguridad y experiencia.

13.15 Riesgos frecuentes en SSO y federación

  • Aceptar tokens o afirmaciones sin validar correctamente emisor, audiencia y expiración.
  • Confiar en atributos externos sin entender su origen o gobernanza.
  • Mapear grupos externos a permisos críticos de forma demasiado directa.
  • No contemplar desprovisionamiento o cambios de estado del usuario federado.
  • Asumir que el SSO resuelve toda autorización local.
  • Subestimar el impacto de comprometer el IdP central.

13.16 Buenas prácticas en confianza federada

  • Definir explícitamente qué emisores y dominios son confiables.
  • Validar siempre firma, audiencia, expiración y condiciones de uso.
  • Minimizar los atributos aceptados y usarlos con criterio.
  • No traducir grupos externos a privilegios críticos sin revisión clara.
  • Combinar SSO con MFA robusta y políticas adaptativas en el IdP.
  • Diseñar revocación, suspensión y logout con visión de extremo a extremo.

13.17 Antesala de los protocolos

Hasta aquí vimos el problema y la arquitectura conceptual. En el tema siguiente entraremos en los protocolos que materializan estos flujos de interoperabilidad: OAuth 2.0, OpenID Connect y SAML.

Lo importante es llegar a ese punto con claridad conceptual: los protocolos no existen para “hacer login moderno” por moda, sino para soportar confianza, delegación y federación entre sistemas de forma verificable.

13.18 Qué debes recordar de este tema

  • SSO permite reutilizar autenticación en múltiples aplicaciones dentro de un ámbito de confianza.
  • La federación de identidad permite confiar en autenticación o identidad emitida por otro dominio.
  • SSO mejora experiencia y control central, pero no reemplaza autorización local.
  • El mapeo entre identidad externa y modelo interno es una parte crítica del diseño.
  • Un IdP central concentra valor y también concentra riesgo.
  • Sin validaciones estrictas de confianza, la federación se vuelve una superficie de ataque.

13.19 Conclusión

Single Sign-On y federación de identidad permiten que múltiples aplicaciones confíen en una autenticación central o externa, reduciendo fricción y mejorando gobierno. Pero ese beneficio depende de relaciones de confianza bien definidas, validaciones estrictas y una separación clara entre autenticación compartida y autorización local.

En el próximo tema estudiaremos los protocolos más usados para implementar estas arquitecturas: OAuth 2.0, OpenID Connect y SAML.