Quiero integrar todos los proveedores de identidad posibles en mi aplicación, como Auth0 SSO OIDC, Onelogin SSO OIDC, Google SSO OIDC, etc. y la lista continuará.
Entonces, ¿se puede usar esto para lograr eso?
El proceso habitual es:
Sus aplicaciones usan una biblioteca de seguridad cuando interactúan con el AS:
Un buen objetivo es mantener el código de la aplicación basado en mensajes estándar de OAuth, de modo que pueda cambiar el AS a uno diferente con cero o solo cambios menores en el código. La biblioteca Okta se ve bien aquí, similar a oidc-client .
Proveedores de identidad
El sistema Okta y su biblioteca están bastante basados en estándares, pero desafortunadamente no todos los IDP lo están. Entonces, si usa la biblioteca Okta para conectarse a OneLogin o Google, es probable que encuentre incompatibilidades y problemas. Si usa un AS, se encargará de esto por usted.
Requisitos
Si está creando React SPA, también debe aclarar el comportamiento que desea en el navegador:
Para un enfoque más seguro (pero también un flujo más complejo), consulte mi publicación de blog Token Handler .
De todos modos, es de esperar que todo lo anterior le proporcione algunos antecedentes útiles para sus propias elecciones técnicas.
intente utilizar un SDK genérico en lugar del proporcionado por un proveedor de identidad específico si desea admitir varios IdP.
aquí hay un ejemplo: https://github.com/IdentityModel/oidc-client-js