Cuando un usuario intenta acceder a contenido insertado, puede que vea el siguiente mensaje de error:
No se ha encontrado el panel de control que has solicitado. No existe o no tienes permiso para verlo.
En esta página se explica cómo solucionar este error y evitar que se produzca en el futuro, lo que ahorrará tiempo y frustración a los desarrolladores y a los usuarios.
Solucionar el error
En el mensaje de error se indica qué debes verificar. Básicamente, la URL de inserción firmada ha creado y autenticado correctamente al usuario insertado, pero ha ocurrido uno de estos dos problemas:
- La ruta al contenido no funciona.
- Los permisos y el acceso al contenido especificados en la URL de inserción no permiten que el usuario de la inserción vea el contenido insertado.
El validador de URIs de inserción de la página Insertar de la sección Plataforma del panel Administrar es una herramienta que se suele usar para solucionar problemas con las URLs de inserción. Sin embargo, como el validador solo verifica que la URL de inserción sea válida y pueda completar el paso de autenticación, puedes seguir estos pasos para determinar cuál de los dos problemas se está produciendo:
- Verifica que la ruta del contenido sea correcta.
- Verifica que el contenido exista.
- Verifica los permisos de la URL de inserción.
- Verifica el acceso del usuario al contenido.
1. Verificar que la ruta del contenido es correcta
Usa este método para determinar si la ruta al contenido está rota. En función del método que se utilice para generar la URL de inserción firmada, la ubicación en la que se especifica la ruta de contenido puede variar. En la mayoría de las secuencias de comandos, hay una sección que define la ruta. Por ejemplo, para insertar un panel de control con el nombre 123, usarías la ruta /embed/dashboards/123
.
Consulta los ejemplos de la sección URL de inserción de la página de documentación Inserción firmada para confirmar que la ruta se ha definido correctamente.
Si usas el endpoint de la API Create Signed Embed Url
para generar la URL, el parámetro URL de destino del mismo panel de control sería el siguiente:
https://instance_name.looker.com<:optional_port>/dashboards/123
Comprueba que la ruta se haya definido correctamente en la secuencia de comandos de generación de la URL de inserción.
2. Verificar que el contenido existe
Después de verificar que la ruta del contenido está definida correctamente, pida a un administrador que confirme que el contenido se encuentra en esa ruta. De forma predeterminada, los administradores eluden las restricciones de acceso y permisos de contenido que podrían impedir que un desarrollador, por ejemplo, vea el contenido. Si un administrador no puede ver el contenido en esa ruta, significa que no existe en esa ruta.
Si el administrador puede ver el contenido en esa ruta, es probable que no se hayan concedido los permisos o el acceso al contenido correctos al usuario insertado. Para determinar si es así, un administrador puede buscar al usuario en la página Usuarios del panel Administración y seleccionar la opción Sudo.
La suplantación de otro usuario permite a los administradores ver lo que ve el usuario con los permisos, el acceso al contenido y los atributos de usuario que se le hayan concedido. Si, mientras suplantas la identidad del usuario insertado, el administrador ya no puede ver el contenido, tendrás que seguir otros pasos para solucionar los problemas relacionados con los permisos del usuario y el acceso al contenido.
Una vez que hayas verificado que el contenido existe y que el usuario insertado no puede verlo, los siguientes pasos consisten en comprobar los permisos de la URL de inserción y el acceso del usuario al contenido. Si alguno de estos elementos no está configurado correctamente, puede impedir que el usuario vea el contenido insertado.
3. Verificar los permisos de la URL de inserción
Este paso te permite determinar si los permisos especificados en la URL de inserción no permiten que el usuario que inserta el contenido vea el contenido insertado. Los permisos de Looker son acumulativos y los usuarios necesitan una combinación de muchos permisos para ver el contenido. Por ejemplo, para ver un panel de control definido por el usuario insertado, un usuario insertado necesita como mínimo los access_data
, see_looks
y see_user_dashboards
permisos.
En este paso, comprueba los permisos concedidos a los usuarios insertados en la definición de la URL y determina si faltan dependencias de algún permiso. A continuación, comprueba los roles que se han asignado al usuario en la URL de inserción.
El rol de un usuario insertado se puede crear de dos formas: con los permisos y el acceso al conjunto de modelos en la URL de inserción firmada, o con los grupos a los que se asigna un usuario, si esos grupos tienen algún rol asociado. Los roles creados de cualquiera de estas dos formas son aditivos, al igual que los roles del entorno de Looker normal. Comprueba el grupo o los grupos a los que se ha asignado el usuario insertado en las especificaciones de la URL (y las funciones heredadas del grupo o los grupos).
Nota: Si mantienes la información sobre los permisos de los usuarios insertados y el acceso a los modelos en un mismo lugar (ya sea en la asignación de roles de un grupo de Looker o en una especificación de URL insertada firmada), se reduce el número de variables adicionales que tienes que comprobar cuando solucionas problemas de los usuarios. Por ejemplo, si una empresa aprovecha los roles asociados a los IDs de grupo al asignar permisos de usuario insertado, además de definir los permisos en la secuencia de comandos firmada, la información del usuario insertado se almacena tanto en Looker como en la aplicación principal (a través de la secuencia de comandos de URL firmada), en lugar de en uno u otro. A veces, los administradores de Looker que gestionan los roles de los usuarios insertados no tienen acceso a la secuencia de comandos de generación de URLs insertadas en la aplicación principal y no pueden solucionar los problemas a fondo. En este caso, puede ser útil enviar una matriz vacía para los parámetros de permisos y modelos, y controlar los roles exclusivamente mediante asignaciones de grupos.
A continuación, confirme que los roles y permisos especificados o heredados se han asignado correctamente al usuario. Para ello, busque al usuario en la página Usuarios del panel Administrar y seleccione Ver.
Es importante tener en cuenta que los usuarios insertados no tienen acceso a todos los permisos que tiene un usuario normal de Looker. Consulta la lista completa de permisos de inserción en la página de documentación sobre inserción firmada.
4. Verificar el acceso del usuario al contenido
Después de confirmar que el usuario insertado tiene los permisos y las asignaciones de roles correctos, debe comprobar el acceso del usuario al contenido. Para ello, comprueba la siguiente información:
- ¿En qué carpeta se guarda el contenido insertado?
-
¿El usuario insertado o el grupo al que está asignado tienen acceso (
View or Manage, Edit
) a esta carpeta?
La forma más rápida de confirmar en qué carpeta se guarda el contenido es verlo en el entorno de Looker habitual y, a continuación, buscar el nombre de la carpeta en el encabezado del contenido. Después de desplazarte a esa carpeta, selecciona el icono de la rueda dentada, situado en la esquina superior derecha, en Gestionar acceso. Para determinar rápidamente si un problema de acceso al contenido está provocando el error 404, concede al usuario de inserción específico acceso View
a la carpeta.
Si no se ha concedido acceso al usuario insertado (o al grupo al que se le ha asignado con IDs de grupo insertado firmados), no podrá ver ningún contenido que se haya guardado en la carpeta. Los administradores (o los usuarios que no sean administradores y a los que se les hayan concedido permisos Manage Access, Edit
en la carpeta) pueden cambiar la configuración de acceso al contenido en este momento para añadir al usuario o al grupo de usuarios insertado.
Una complicación habitual se produce cuando se duplica un panel de control y se encuentra en varias carpetas. Cada copia de un panel tiene un ID único, así que asegúrate de que el panel que se va a insertar tenga el mismo ID que el panel al que los usuarios quieren acceder. Puedes verificar el ID en la URL del panel, que tiene el siguiente formato:
~/embed/dashboards/<specific_content_id>
Sistemas cerrados
Los sistemas cerrados son un caso especial a la hora de comprobar el acceso al contenido. Un sistema cerrado aísla el contenido guardado de cada grupo. A menudo, se recomienda implementar un sistema cerrado como práctica recomendada para todas las implementaciones de Powered By Looker (analíticas insertadas). La principal ventaja de este sistema es que elimina por completo el grupo Todos los usuarios, establece todas las carpetas personales como privadas e impide que los usuarios vean a otros usuarios o su contenido en la instancia (a menos que todos los usuarios compartan un grupo). De esta forma, se crea una instancia multiinquilino para varios clientes, de modo que no puedan acceder al contenido ni a la información de otros usuarios a menos que se les conceda acceso explícitamente.
Comprueba que el usuario de inserción afectado forme parte de los grupos de Looker correctos. De lo contrario, no podrá ver el contenido de su organización.
Si quieres habilitar un sistema cerrado para tu instancia, ponte en contacto con un especialista en ventas de Google Cloud o abre una solicitud de asistencia.