Compartir a través de


Marco de identidad global de Azure Active Directory B2C

Importante

A partir del 1 de mayo de 2025, Azure AD B2C ya no estará disponible para ser adquirido por nuevos clientes. Obtenga más información en nuestras preguntas más frecuentes.

Azure Active Directory B2C es una solución de administración de acceso a identidades de cliente (CIAM) capaz de admitir millones de usuarios y miles de millones de autenticaciones al día. Asimismo, se encarga del escalado y la seguridad de la plataforma de autenticación, de la supervisión y del control automático de amenazas, como la denegación del servicio, la difusión de contraseñas o los ataques por fuerza bruta.

Azure Active Directory B2C (Azure AD B2C) es un servicio independiente del identificador de Microsoft Entra. Se basa en la misma tecnología que microsoft Entra ID, pero para un propósito diferente. Permite a las empresas crear aplicaciones orientadas al cliente y, a continuación, permite el registro de autoservicio en las aplicaciones.

Azure AD B2C es un servicio distribuido globalmente formado por varios componentes:

Al crear una solución de Azure AD B2C, debe proporcionar una ubicación para hospedar el servicio. Esta ubicación solo pertenece a la región en la que se almacenarán los datos del perfil de usuario, mientras que el resto del servicio que procesa el inicio de sesión se ejecuta globalmente.

Normalmente, se implementa un inquilino de Azure AD B2C en la región más cercana a la base de usuarios. Esto facilita el mantenimiento del cumplimiento de las leyes de residencia de datos, ya que el perfil de usuario solo se replica en la región seleccionada. Esto también proporciona el mejor rendimiento durante el inicio de sesión, ya que las latencias de red están optimizadas para el almacén de directorios.

Cuando el directorio de Azure AD B2C requiere atender a usuarios en todo el mundo, la estructura regional supone un desafío. Debe determinar en qué ubicación se va a crear el inquilino de Azure AD B2C. Es posible que los usuarios externos a la región seleccionada no cumplan los requisitos de residencia de datos y también pueden experimentar una mayor latencia al comprobar sus credenciales o leer sus datos de perfil de usuario.

Por ejemplo, considere una aplicación que admita usuarios en Australia y Norteamérica, y el directorio de Azure AD B2C se crea en la región norteamérica. Los usuarios que inician sesión desde Australia pueden enfrentar tiempos de procesamiento más largos para completar su autenticación.

Para satisfacer mejor los requisitos de ubicación de datos y mitigar los problemas de rendimiento, debe implementar varias instancias de Azure AD B2C. Al colocar un inquilino en cada región donde opera su empresa, las operaciones en el directorio están optimizadas para la latencia. Sin embargo, al hacerlo, la solución crea otras sobrecargas para configurar, administrar y proteger estos recursos de inquilino confidenciales en cada región. Otras sobrecargas incluyen:

  • Administración de inquilinos

  • Aislamiento de inquilinos que da lugar a una experiencia de usuario final que no se siente global

  • Facturación

  • Procesos de CI/CD para administrar directivas, registros de aplicaciones o claves

En este documento se propone arquitecturas con Azure AD B2C que mejor se adapten a las soluciones para los clientes que atienden a los usuarios de todo el mundo. Las soluciones cumplen los siguientes requisitos:

  • Los usuarios pueden mantener el mismo conjunto de credenciales, independientemente de dónde accedan a las aplicaciones en el mundo.

  • Rendimiento y latencia coherentes independientemente de dónde se autentiquen los usuarios.

  • Facilitar a los clientes la entrega de procesos, marcos o SDK a sus equipos de desarrolladores con una configuración mínima posible.

  • Los perfiles de usuario se pueden mantener mientras los usuarios viajan por todo el mundo. Esto crea más valor en el análisis generado por las interacciones del usuario dentro de cualquier servicio.

  • Los datos de usuario del cliente se almacenan en almacenes de datos regionales.

A continuación se muestran dos enfoques que se deben tener en cuenta al implementar una plataforma de identidad mediante inquilinos de Azure AD B2C para un modelo de negocio operativo global.

  • El primer enfoque usa regiones geográficas como límites y aplicaciones se configuran específicamente para la región.

  • El segundo enfoque tiene un límite global para las aplicaciones y usa un inquilino de Azure AD B2C adicional para orquestar la interacción entre inquilinos regionales.

Orquestación regional de inquilinos

En este modelo, las aplicaciones se hospedan por región o tienen configuraciones por región para conectarse a un inquilino regional. Las aplicaciones envían directamente al usuario a un inquilino específico de la región. La comunicación entre inquilinos se usa para realizar autenticaciones entre inquilinos o actualizaciones de perfiles entre inquilinos, cuando el usuario puede haber viajado a otra región.

Orquestación regional de inquilinos

Orquestación de inquilinos de embudo

En este modelo, un tenant de Azure AD B2C canaliza a los usuarios hacia tenants regionales de Azure AD B2C. El inquilino de embudo funciona como un orquestador de redirección a otros inquilinos de Azure AD B2C. Esto se controla mediante un componente distribuido globalmente del servicio Azure AD B2C, por lo que el rendimiento no se ve afectado. Esta redirección se realiza mediante federaciones de proveedores de identidad de OpenID Connect.

La comunicación entre entidades se utiliza para realizar autenticaciones entre entidades o para actualizaciones de perfil entre ellas. El inquilino de embudo proporciona a las aplicaciones un único punto de conexión con el que comunicarse.

Orquestación de inquilinos de embudo

La arquitectura que decidas modelar la solución, requiere tomar decisiones basadas en las compensaciones entre los dos modelos descritos. Por ejemplo, el modelo de embudo permite mantener una única instancia de aplicaciones. En la sección siguiente se describen las funcionalidades, los criterios de selección y el rendimiento que podrían afectar al diseño que elija.

Capacidades y consideraciones

En la tabla siguiente se describen las funcionalidades proporcionadas mediante un diseño regional frente a basado en embudo:

Capacidad Basado en regiones Basado en embudo
Admite el registro y el inicio de sesión de la cuenta local casilla de verificación casilla de verificación
Admite el registro y el inicio de sesión de cuentas federadas. casilla de verificación casilla de verificación
Admite la autenticación de cuentas locales para los usuarios que inician sesión desde fuera de su región registrada. casilla de verificación casilla de verificación
Admite la autenticación de cuentas federadas para los usuarios que inician sesión desde fuera de su región registrada, mediante la búsqueda basada en API entre instancias. casilla de verificación casilla de verificación
Impide el registro desde varias regiones diferentes. casilla de verificación casilla de verificación
Las aplicaciones de cada región tienen un conjunto de puntos de conexión con los que conectarse casilla de verificación
Todas las aplicaciones se conectan a un único conjunto de puntos de conexión, independientemente de la región que se hospeden. casilla de verificación
Admite directivas de acceso condicional específicas. casilla de verificación
Optimizado para reducir costos. casilla de verificación

En función de las funcionalidades, se deben tener en cuenta las siguientes consideraciones:

  • Al usar el enfoque basado en regiones, la consideración principal es que el enfoque requiere que las aplicaciones que abarcan varias regiones tengan configuraciones respectivas para cada inquilino de Azure AD B2C regional.

  • Al usar el enfoque basado en embudo

    • Hay un costo de doble token

    • Se ha introducido una redirección HTTP adicional.

    • Los dominios personalizados son necesarios en muchos inquilinos

    • El acceso condicional se aplica en el nivel de inquilino, no en el nivel de aplicación

    • El cierre de sesión único a través de varios idP podría presentar desafíos

El enfoque que elija se basará en el número de aplicaciones que hospeda y los requisitos específicos para el acceso a las aplicaciones.

Rendimiento

La ventaja de rendimiento de usar varios inquilinos, ya sea en la configuración regional o basada en embudo, será una mejora con respecto al uso de un único inquilino de Azure AD B2C para empresas que operan globalmente.

Al usar el enfoque basado en embudo, el inquilino de embudo se encuentra en una región específica y sirve a los usuarios globalmente. Dado que el funcionamiento de los inquilinos del funnel utiliza un componente global del servicio Azure AD B2C, mantiene un nivel constante de rendimiento independientemente de dónde se conecten los usuarios.

Captura de pantalla que muestra la arquitectura de Azure AD B2C.

Según se muestra en el diagrama anterior, el inquilino de Azure AD B2C basado en el enfoque de embudo solo usará el Motor de Políticas para realizar el redireccionamiento a inquilinos regionales de Azure AD B2C. El componente Motor de directivas de Azure AD B2C se distribuye globalmente. Por lo tanto, el embudo no está restringido desde una perspectiva de rendimiento, independientemente de dónde se aprovisione el inquilino de embudo de Azure AD B2C. Se produce una pérdida de rendimiento debido a la redirección adicional entre el embudo y los inquilinos regionales en el enfoque basado en embudo.

En el enfoque basado en regiones, dado que cada usuario se dirige a su azure AD B2C más local, el rendimiento es coherente para todos los usuarios que inician sesión.

Los inquilinos regionales realizarán llamadas de directorio al Almacén de directorios, que es el único componente regionalizado en las arquitecturas basadas en embudo y basadas en regiones.

La latencia adicional solo se encuentra cuando el usuario ha realizado una autenticación en una región diferente de la que se había registrado. Esto se debe a que las llamadas se realizarán entre regiones para llegar al Almacén de directorios donde reside su perfil para completar su autenticación.

Pasos siguientes