
Contamos con Microsoft Active Directory Federation Services (ADFS) como nuestro proveedor de autenticación/federación. Lo usamos para realizar la federación de identidades a través de SAML para varios proveedores externos, proveedores de SaaS, etc. Además, tenemos varios proveedores que solo admiten OAuth, por lo que hemos configurado integraciones con esos proveedores que utilizan el soporte OAuth de ADFS 2016. Como tal, podemos generar aserciones SAML y tokens de acceso OAuth, según sea necesario.
Ahora nos hemos encontrado con una situación en la que el Proveedor A (configurado para autenticación SAML) necesita realizar una llamada de servicio RESTful al Proveedor B (configurado para requerir tokens OAuth). ¿Existe alguna manera de convertir una aserción SAML generada por ADFS en un token OAuth generado por ADFS? Dado que ADFS genera ambas credenciales, creo que ADFS tendría una forma de realizar la conversión. ¿Existe un punto final donde pueda PUBLICAR una aserción SAML y recuperar el token OAuth a cambio? ¡Cualquier ayuda sería MUY apreciada!
Respuesta1
Si bien no puedo darle una respuesta sobre ADFS y Oauth, puedo brindarle algo de experiencia con respecto a la integración de dos sistemas SSO diferentes basados en web, lo que puede darle algo en qué pensar.
En mi situación, quería conseguir un IdP de Shibboleth (la misma función que ADFS con SAML 2.0) para utilizar un sistema SSO propietario existente.
Lo que hice fue configurar mi IdP para utilizar la autenticación "externa", en cuyo caso hice que el sistema SSO propietario protegiera solo la URL de autenticación externa; para que cuando las personas iniciaran sesión accedieran a la URL de autenticación externa y trabajaran a través del otro sistema SSO, luego regresaran en un estado autenticado para pasar a través de la URL de autenticación externa al IdP, lo que Luego les concedería una sesión.
Esto ilustra que en realidad no se "convierte" un sistema en otro, sino que se puede convertir uno en otro mediante autenticación externa.
Una advertencia: cerrar sesión se convierte en un problema cada vez mayor. Tuve que personalizar las plantillas de SLO que vienen con el IdP para integrar también el sistema de cierre de sesión de otros sistemas... ADFS no será tan flexible.
Saludos, Cameron