Resolución de problemas del modo de compatibilidad a gran escala (HSC)

Se aplica a: Círculo verde con un símbolo de marca de verificación blanca que indica que el siguiente contenido se aplica a los inquilinos externos. Inquilinos externos (más información)

Este artículo le ayuda a diagnosticar y resolver errores comunes al usar la API de modo High Scale Compatibility (HSC) para Microsoft Entra External ID y para los inquilinos de Azure AD B2C.

Importante

El acceso a la API de HSC depende de los permisos correctos y del consentimiento del administrador. La mayoría de las operaciones de HSC requieren acceso de administrador global. Si usa permisos delegados, asegúrese de que un administrador ha concedido consentimiento para los ámbitos necesarios.

Referencia rápida

Mensaje de error Estado HTTP
Desautorizado 403 No autorizado
No autorizado (falta el permiso Graph) 403 No autorizado
'{tenantId}' no es un directorio Azure AD B2C 400 BadRequest
La actualización híbrida de External ID Entra no está permitida para este inquilino 400 BadRequest
'{tenantId}' no es un directorio de Azure AD B2C con el modo híbrido de ID externo habilitado 403 Prohibido
Respuesta GET rancia tras POST (comportamiento de caché) 200 Ok
No se pudieron sincronizar atributos personalizados de B2C con el contexto de identificador externo del inquilino híbrido 400 BadRequest
El inquilino '{tenantId}' no está vinculado a una suscripción válida. 400 BadRequest

El autor de la llamada carece de rol necesario

Estado HTTP: 403 No autorizado
Puntos de conexión afectados: Todos los puntos de conexión de HSC

La identidad que hace la llamada (usuario o entidad de servicio) no tiene uno de los roles de directorio necesarios.

  • Administrador global
  • Administrador de flujos de usuarios con id. externo
  • TenantAdmin, CpimServiceAdminReaderWritero AppOnlyCaller (para flujos solo de aplicación)

Cómo corregir:

  1. En el portal de Azure, vaya a Microsoft Entra ID>Roles y administradores.
  2. Asignar el rol de Administrador Global o Administrador de Flujo de Usuario de ID Externo a la cuenta llamante o al principal del servicio.
  3. Espere unos minutos para la propagación de roles y vuelva a intentar la solicitud.

Sugerencia

En el caso de las canalizaciones automatizadas, use un principal de servicio y asigne el rol de menor privilegio que satisfaga tu escenario.

El autor de la llamada no tiene permiso de Microsoft Graph

Estado HTTP: 403 No autorizado
Puntos de conexión afectados: Todos los puntos de conexión de HSC

Falta en el registro de la aplicación el permiso necesario de Microsoft Graph Policy.ReadWrite.AuthenticationFlows.

Cómo corregir:

  1. En el portal de Azure, ve a Microsoft Entra>ID Registros> de aplicaciones para tu app.
  2. Seleccione permisos API>Agregar un permiso>Microsoft Graph> Permisos de aplicación.
  3. Busque y agregue Policy.ReadWrite.AuthenticationFlows.
  4. Seleccione Conceder consentimiento del administrador para el inquilino y confirme.
  5. Intente de nuevo la solicitud.

Contexto incorrecto del tipo de inquilino

Estado HTTP: 400 BadRequest
Código de error: AccessDenied_NonB2CTenantNotAllowed
Error message:'{tenantId}' is not an Azure AD B2C directory. Access to this Api can only be made for an Azure AD B2C directory.
Puntos de conexión afectados: Todos los puntos de conexión de HSC

Emitiste la solicitud en el contexto de un inquilino CIAM o Microsoft Entra ID (fuerza laboral). La API HSC debe ser llamada directamente contra tu tenant B2C.

Cómo corregir:

  1. Asegúrate de que la URL de tu solicitud y la audiencia del token hagan referencia al ID de tenant B2C (por ejemplo, https://graph.microsoft.com/v1.0/ con el tenant B2C configurado como contexto de directorio activo).
  2. Al adquirir un token, establece la autoridad en https://login.microsoftonline.com/<b2c-tenant-id>, no en el inquilino de la fuerza laboral.
  3. Compruebe el identificador de inquilino en el portal de Azure: Microsoft Entra ID>Overview>Tenant ID.

Inquilino principal no habilitado

Estado HTTP: 400 BadRequest
Código de error: HybridUpgradeNotAllowed
Mensaje de error:Entra External Id Hybrid Upgrade is not allowed for this tenant
Puntos de conexión afectados: POST (habilitar el modo híbrido)

El inquilino de Workforce principal no tiene el conjunto de EnableHybridUpgradeApi características de la bandera. Solo Microsoft puede activar esta habilitación del back-end.

Cómo corregir:

Contacta con el Soporte de Microsoft y solicita que la EnableHybridUpgradeApi bandera esté activada en el inquilino de tu plantilla principal. Incluya el identificador de inquilino primario en la solicitud de soporte técnico.

ELIMINAR en un inquilino no híbrido

Estado HTTP: 403 Prohibido
Código de error: AccessDenied_NonHybridTenantNotAllowed
Error message:'{tenantId}' is not an Azure AD B2C directory with External Id Hybrid mode enabled. Access to this Api can only be made for an Azure AD B2C directory with Hybrid mode enabled.
Puntos de conexión afectados: DELETE (deshabilitar el modo híbrido)

Enviaste una solicitud de DELETE para desactivar el modo híbrido, pero el inquilino aún no se ha activado correctamente (el POST para activar el modo híbrido no se ha completado).

Cómo corregir:

  1. Complete la solicitud POST para habilitar el modo híbrido y confirmar una 201 Created respuesta.
  2. Una vez que el inquilino está en estado híbrido, vuelva a intentar la solicitud DELETE.

Respuesta GET rancia tras el POST

Estado HTTP: 200 Correcto (pero los datos podrían estar obsoletos)
Código de error: Ninguno (comportamiento esperado de caché)
Puntos de conexión afectados: GET (leer el estado híbrido)

Los metadatos del inquilino se almacenan en caché durante un máximo de 1 hora. Si emites una solicitud GET inmediatamente después de un POST exitoso, la respuesta podría reflejar aún el estado previo a la migración.

Cómo corregir:

  1. La 201 Created respuesta del propio POST es una confirmación autoritativa de que la operación se realizó correctamente. Confíe en esa respuesta, no en un GET posterior.
  2. Si necesita sondear el estado, espere hasta 1 hora y vuelva a intentar la solicitud GET.

Error en la sincronización de atributos personalizados

Estado HTTP: 400 BadRequest
Código de error: AADB2C99089
Mensaje de error:Failed to sync custom attributes from B2C to the hybrid tenant's external ID context. The following attributes couldn't be transferred: {failedAttributeList}. Please retry the operation or contact support.
Puntos de conexión afectados: POST (habilitar el modo híbrido: fase de sincronización de atributos)

Durante el POST para habilitar el modo híbrido, el servicio intenta sincronizar todos los atributos personalizados B2C con el inquilino External ID. Si algún atributo personalizado tiene una descripción nula o vacía (de origen del AdminHelpText campo), ese atributo se agrega a la lista con errores y se devuelve el error HybridTenantMigrationFailedAttributes .

Muchos atributos personalizados B2C se crean sin una descripción, por lo que este problema puede afectar a un gran número de atributos de forma silenciosa.

Los atributos personalizados que requieren un campo no vacío description incluyen cualquier atributo donde AdminHelpText sea null o vacío. Entre los ejemplos comunes se incluyen atributos creados mediante programación o a través de experiencias anteriores del portal de B2C.

Cómo corregir:

  1. Enumerar todos los atributos personalizados:

    GET https://graph.microsoft.com/v1.0/identity/userFlowAttributes
    
  2. Para cada atributo donde description es null o vacío, repéntelo con una descripción no vacía:

    PATCH https://graph.microsoft.com/v1.0/identity/userFlowAttributes/{id}
    Content-Type: application/json
    
    {
      "description": "<a meaningful, non-empty description>"
    }
    
  3. Una vez actualizados todos los atributos, vuelva a intentarlo para habilitar el modo híbrido.

Sugerencia

Use Microsoft Graph PowerShell o el Explorador de Graph para aplicar revisiones masivas de atributos de forma eficaz antes de iniciar la migración.

Ninguna suscripción vinculada

Estado HTTP: 400 BadRequest
Código de error: NoResourceProviderDataFound
Mensaje de error:Your tenant '{tenantId}' is not linked to a valid subscription.
Puntos de conexión afectados: POST (habilitar el modo híbrido)

La consulta de datos del proveedor de recursos devolvía nulo o no SubscriptionTenantIdtiene . El inquilino de B2C no está vinculado a ninguna suscripción de Azure.

Cómo corregir:

Asegúrese de que el inquilino de B2C esté vinculado a una suscripción de Azure válida a través del portal de Azure.