Compartir a través de


Solución de problemas de una aplicación insertada

En este artículo se describen algunos problemas comunes que pueden surgir al insertar contenido desde Power BI.

Herramientas de solución de problemas

Seguimiento de Fiddler

Fiddler es una herramienta gratuita de Telerik que supervisa el tráfico HTTP. Puede ver el tráfico con las API de Power BI desde la máquina cliente. Esta herramienta puede mostrar errores y otra información relacionada.

Captura de pantalla de la ventana de salida de la herramienta Fiddler, que muestra el tráfico HTTP de la API de Power BI.

F12 en el explorador para la depuración del servidor front-end

La tecla F12 inicia la ventana del desarrollador dentro del explorador. Esta herramienta le permite examinar el tráfico de red y ver otra información valiosa.

Captura de pantalla de la pestaña Red de la ventana del desarrollador del explorador web, que muestra el tráfico de red.

Extracción de detalles del error a partir de la respuesta de Power BI

Este fragmento de código muestra cómo extraer los detalles del error de una excepción HTTP:

public static string GetExceptionText(this HttpOperationException exc)
{
    var errorText = string.Format("Request: {0}\r\nStatus: {1} ({2})\r\nResponse: {3}",
    exc.Request.Content, exc.Response.StatusCode, (int)exc.Response.StatusCode, exc.Response.Content);
    if (exc.Response.Headers.ContainsKey("RequestId"))
    {
        var requestId = exc.Response.Headers["RequestId"].FirstOrDefault();
        errorText += string.Format("\r\nRequestId: {0}", requestId);
    }

    return errorText;
}

Se recomienda registrar el identificador de solicitud (y los detalles del error para solucionar problemas). Proporcione el identificador de solicitud al acercarse al soporte técnico de Microsoft.

Registro de aplicaciones

Error de registro de aplicaciones

Los mensajes de error en Azure Portal o en la página de registro de aplicaciones de Power BI le notificarán si no tiene privilegios suficientes para registrar la aplicación. Para registrar una aplicación, debe ser administrador en el inquilino de Microsoft Entra o los registros de aplicaciones deben estar habilitados para los usuarios que no son administradores.

El servicio Power BI no aparece en Azure Portal al registrar una nueva aplicación

Al menos un usuario debe registrarse en Power BI. Si no ve Servicio Power BI en la lista de API, significa que no hay usuarios suscritos a Power BI.

¿Cuál es la diferencia entre un identificador de objeto de aplicación y un identificador de objeto principal?

Al registrar una aplicación de Microsoft Entra, hay dos parámetros denominados ID de objeto. En esta sección se explica el propósito de cada parámetro y cómo obtenerlo.

Id. de objeto de aplicación

El ID de objeto de la aplicación , también conocido simplemente como ID del objeto , es el identificador único de su objeto de aplicación Microsoft Entra.

Para obtener el id. de objeto de aplicación, vaya a la aplicación Microsoft Entra y cópielo desde la Información general.

Captura de pantalla de la ventana de Azure Portal, que muestra el identificador de objeto en la hoja Información general de una aplicación de Microsoft Entra.

Id. de objeto principal

El id. de objeto de entidad de seguridad, también conocido simplemente como id. de objeto, es el id. único del objeto de entidad de servicio asociado a la aplicación de Microsoft Entra.

Para obtener el identificador del objeto principal, vaya a su aplicación de Microsoft Entra y, en la sección Resumen, seleccione el vínculo de la aplicación en Aplicación gestionada en el directorio local.

Captura de pantalla de la ventana de Azure Portal, que muestra la opción Aplicación administrada en el directorio local en la hoja Información general de una aplicación Microsoft Entra.

En la sección Propiedades, copie el id. de objeto.

Captura de pantalla de la ventana del portal de Azure, que muestra el identificador de objeto principal en la sección de propiedades del panel de resumen de una aplicación de Microsoft Entra.

Autenticación

Error de autenticación con AADSTS70002 o AADSTS50053

(AADSTS70002: error al validar las credenciales. AADSTS50053: ha intentado iniciar sesión demasiadas veces con un identificador de usuario o una contraseña incorrectos)

Si usa Power BI Embedded y la autenticación directa de Microsoft Entra, es posible que reciba un mensaje como el anterior al intentar iniciar sesión, ya que la autenticación directa no está habilitada.

Puede volver a activar la autenticación directa mediante una directiva de Microsoft Entra que tenga como ámbito la organización o una entidad de servicio.

Se recomienda habilitar esta directiva solo por aplicación.

Para crear esta directiva, debe ser Administrador global en el directorio donde va a crear y asignar la directiva. Este es un script de ejemplo para crear la directiva y asignarla al SP para esta aplicación:

  1. Instale el SDK de PowerShell de Microsoft Graph.

  2. Ejecute los siguientes comandos de PowerShell línea a línea (asegurándose de que la variable $sp no tiene más de una aplicación como resultado).

    Connect-MgGraph -Scopes "Directory.Read.All","Policy.ReadWrite.ApplicationConfiguration"
    
    $sp = Get-MgServicePrincipal -Filter "DisplayName eq 'Name_Of_Application'"
    
    $policy = New-MgBetaPolicyActivityBasedTimeoutPolicy -Definition @("{`"AllowCloudPasswordValidation`":true}") `
       -DisplayName EnableDirectAuth -IsOrganizationDefault:$false
    
    $params = @{
       "@odata.id" = "https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies/$policy.Id"
    }
    New-MgBetaServicePrincipalClaimMappingPolicyByRef -ServicePrincipalId $sp.Id `
       -BodyParameter $params
    

Después de asignar la directiva, espere aproximadamente entre 15 y 20 segundos para la propagación antes de las pruebas.

Error en la generación del token al proporcionar una identidad efectiva

GenerateToken puede generar un error, con la identidad efectiva proporcionada, por diversas razones:

  • El modelo semántico no admite la identidad efectiva.
  • No se proporcionó el nombre de usuario.
  • No se proporcionó el rol.
  • No se proporcionó DatasetId.
  • El usuario no tiene los permisos correctos.

Para determinar el problema, pruebe los pasos siguientes:

  • Ejecutar para obtener el conjunto de datos. ¿La propiedad IsEffectiveIdentityRequired es cierta?
  • El nombre de usuario es necesario para cualquier EffectiveIdentity.
  • Si IsEffectiveIdentityRolesRequired es verdadero, se requiere el Rol.
  • DatasetId es necesario para cualquier EffectiveIdentity.
  • Para Analysis Services, el usuario maestro debe ser un administrador de puerta de enlace.

AADSTS90094: la concesión requiere permiso de administrador

síntomas :

Cuando un usuario que no es administrador intenta iniciar sesión en una aplicación por primera vez al conceder consentimiento, obtiene uno de los siguientes errores:

  •   ConsentTest needs permission to access resources in your organization that only an admin can grant. Ask an admin to grant permission to this app before you can use it.
    
  •   AADSTS90094: The grant requires admin permission.
    

    Captura de pantalla de la ventana del cuadro de diálogo de inicio de sesión del portal de Azure, que muestra el error de permisos de prueba de consentimiento.

Un usuario administrador puede iniciar sesión y conceder el consentimiento correctamente.

causa principal:

El consentimiento del usuario está deshabilitado para el inquilino.

Se pueden realizar varias fijaciones:

  • Habilite el consentimiento del usuario para todo el inquilino (todos los usuarios, todas las aplicaciones):
  1. En Azure Portal, vaya a Microsoft Entra ID>Usuarios y grupos>Configuración de usuario.
  2. Active el ajuste Los usuarios pueden dar su consentimiento a las aplicaciones que acceden a los datos de la empresa en su nombre y guarde los cambios.

Captura de pantalla de Azure Portal.

  • Un administrador puede conceder permisos a la aplicación, ya sea para todo el inquilino o para un usuario específico.

Error CS1061

Descargue microsoft.IdentityModel.Clients.ActiveDirectory si experimenta el siguiente error:

'AuthenticationContext' does not contain a definition for 'AcquireToken' and no accessible 'AcquireToken' accepting a first argument of type 'AuthenticationContext' could be found (are you missing a using directive or an assembly reference?)

Token de Microsoft Entra para un inquilino diferente (usuario invitado)

Al insertar para la organización, para permitir que los usuarios invitados de Microsoft Entra accedan al contenido, debe especificar el id. de inquilino en el parámetro authorityUri.

  • Dirección URL para la autenticación en el inquilino de la organización:

    https://login.microsoftonline.com/common/v2.0

  • Dirección URL para autenticar un usuario invitado de Microsoft Entra:

    https://login.microsoftonline.com/<tenant ID>

Para encontrar tu ID de inquilino, puedes usar las instrucciones en Buscar el ID de inquilino de Microsoft Entra y el nombre de dominio principal.

Para obtener más información, consulte Hacer que la aplicación sea multiinquilino.

Orígenes de datos

ISV quiere tener credenciales diferentes para el mismo origen de datos

Un origen de datos puede tener un único conjunto de credenciales para un usuario maestro. Si necesita usar credenciales diferentes, cree más usuarios maestros. A continuación, asigne las distintas credenciales a cada uno de los contextos de los usuarios maestros e inserte mediante el token de Microsoft Entra de ese usuario.

Solución de problemas de la aplicación insertada con el objeto IError

Use el objeto IError devuelto por el evento de error del SDK de JavaScript para depurar la aplicación y comprender mejor la causa de los errores.

Después de adquirir el objeto IError, debe consultar la tabla adecuada de errores comunes que se ajusta al tipo de inserción que use. Compare las propiedades IError con las de la tabla y busque los posibles motivos del error.

Errores típicos al insertar para usuarios de Power BI

Mensaje Mensaje detallado Código de error Posibles razones
TokenExpired El token de acceso ha expirado, vuelva a enviar con un nuevo token de acceso. 403 Token expirado
PowerBIEntityNotFound Error al obtener el informe 404
  • Id. de informe incorrecto
  • El informe no existe
  • Parámetros no válidos Parámetro powerbiToken no especificado N/A
  • No se proporciona ningún token de acceso
  • No se proporcionó ningún identificador de informe
  • LoadReportFailed No se pudo inicializar: no se pudo resolver el clúster 403
  • Token de acceso incorrecto
  • El tipo de inserción no coincide con el tipo de token
  • PowerBINotAuthorizedException Error al obtener el informe 401
  • Id. de grupo incorrecto
  • Grupo no autorizado
  • TokenExpired El token de acceso ha expirado, vuelva a enviarlo con un nuevo token de acceso. No se ha podido representar un objeto visual de informe denominado: título de objeto visual N/A
  • Consulta de datos
  • Token expirado
  • OpenConnectionError No se puede mostrar la imagen. No se ha podido representar un objeto visual de informe denominado: título de objeto visual N/A Capacidad en pausa o eliminada mientras un informe relacionado con la capacidad estaba abierto en una sesión
    ExplorationContainer_FailedToLoadModel_DefaultDetails No se pudo cargar el esquema del modelo asociado a este informe. Asegúrese de que tiene una conexión con el servidor e inténtelo de nuevo. N/A
  • Capacidad en pausa
  • Capacidad eliminada
  • Errores típicos al incorporar para usuarios ajenos a Power BI (mediante un token de inserción)

    Mensaje Mensaje detallado Código de error Posibles razones
    Token caducado El token de acceso ha expirado, vuelva a enviar con un nuevo token de acceso 403 Token expirado
    Error al cargar el informe Error al obtener el informe 404
  • Id. de informe incorrecto
  • El informe no existe
  • Error al cargar el informe Error al obtener el informe 403 El identificador de informe no coincide con el token
    LoadReportFailed Error al obtener el informe 500 El id. de informe proporcionado no es un GUID.
    Parámetros no válidos Parámetro powerbiToken no especificado N/A
  • No se proporciona ningún token de acceso
  • No se proporcionó ningún identificador de informe
  • LoadReportFailed No se pudo inicializar: no se pudo resolver el clúster 403 Tipo de token equivocado o token no válido
    PowerBINotAuthorizedException Error al obtener el informe 401 Id. de grupo incorrecto o no autorizado
    TokenExpired El token de acceso ha expirado. Vuelva a enviar con un nuevo token de acceso. No se ha podido representar un objeto visual de informe denominado: título de objeto visual N/A
  • Consulta de datos
  • Token expirado
  • OpenConnectionError No se puede mostrar el objeto visual. No se ha podido representar un objeto visual de informe denominado: título de objeto visual N/A Capacidad en pausa o eliminada mientras un informe relacionado con la capacidad estaba abierto en una sesión
    ExplorationContainer_FailedToLoadModel_DefaultDetails No se pudo cargar el esquema del modelo asociado a este informe. Asegúrese de que tiene una conexión con el servidor e inténtelo de nuevo. N/A
  • Capacidad en pausa
  • Capacidad eliminada
  • Error al obtener informe: error 401: resolverse por sí mismos

    A veces, los usuarios del escenario de datos propiedad del usuario obtendrán un error 401 que se resuelve solo después de acceder al portal de Power BI. Cuando se produzca el error 401, agregue la llamada RefreshUser Permissions en la aplicación, como se explica en Actualizar permisos de usuario.

    Modelos semánticos

    Administración de la parte de los datos que pueden ver los usuarios

    Cualquier usuario con permisos de lectura para un modelo semántico puede ver todo el esquema (tablas, columnas y medidas) y todos los datos. No puede gestionar los permisos de visualización para datos sin procesar y agregados de forma separada en el mismo modelo semántico.

    Para administrar qué parte de los datos pueden ver los usuarios, use uno de los métodos siguientes:

    Representación de contenido

    Para resolver problemas de representación en elementos insertados de Power BI (como informes y paneles), revise esta sección.

    Comprobación de que el elemento de Power BI se carga en el servicio Power BI

    Para descartar problemas con la aplicación o las API de inserción, compruebe que el elemento se puede ver en el servicio Power BI (powerbi.com).

    Compruebe que el elemento de Power BI se carga en el entorno de análisis embebido de Power BI

    Para descartar problemas con la aplicación, compruebe que el elemento de Power BI se puede ver en el sitio de prueba de análisis integrado de Power BI.

    Compruebe que el token de acceso no ha expirado

    Con fines de seguridad, los tokens de acceso (un token de Microsoft Entra o un token de inserción) tienen una duración limitada. Debe supervisar constantemente el token de acceso y actualizarlo si es necesario. Para obtener más información, consulte Actualizar el token de acceso.

    Rendimiento

    Para obtener el mejor rendimiento del contenido insertado, se recomienda seguir los procedimientos recomendados de análisis insertados Power BI.

    preguntas más frecuentes sobre Power BI Embedded

    ¿Más preguntas? Preguntar a la comunidad de Power BI