Puede ser difícil solucionar los errores de autenticación cuando usas incorporaciones firmadas para tu contenido de Looker. Existen diferentes enfoques que puedes adoptar para intentar diagnosticar los problemas. Elige uno según el lugar al que dirigen los redireccionamientos a los usuarios. En las sugerencias de esta página, se supone que generas tu URL de incorporación firmada con una secuencia de comandos similar a las que se encuentran en el repositorio de GitHub de ejemplos de incorporación de Looker, a menos que se indique lo contrario.
Primeros pasos generales
Antes de comenzar a incorporar contenido, asegúrate de que se haya generado tu secreto de incorporación en el panel Administrador y de que el contenido incorporado funcione en el modo de producción, no solo en el modo de desarrollo.
Si tienes permisos de administrador, sudo como el usuario incorporado para verificar que tu contenido sea funcional. Si recibes el error Oops, we can't find that page
, es probable que el problema esté relacionado con los permisos o el acceso al contenido, y no con un problema de autenticación. Si el usuario incorporado no aparece en la página Usuarios del panel Administrador de Looker, significa que no se creó y que la URL de incorporación no funciona. Puedes intentar solucionar el problema con algunas de las sugerencias y los recursos que se indican en esta página.
Si tu instancia es autohospedada, asegúrate de que el servidor cliente pueda conectarse al servidor de Looker y, si los datos entre el cliente y el servidor se transmiten a través de Internet pública, asegúrate de que se use SSL (HTTPS).
En el resto de esta página, se describen errores y otros problemas que puedes encontrar, junto con los pasos para resolverlos.
Se me redirecciona a una página de acceso o a una página de “Error de inicio de sesión único”
Si se te redirecciona a la página de acceso o a una página con el error Single sign on failure. Please contact an adinistrator.
, esto suele indicar que la autenticación de incorporación firmada no funciona correctamente.
Primero, genera una nueva URL de incorporación firmada y pruébala en el Validador de URI de incorporación en la página Incorporación del panel Administrador de Looker. A veces, el validador de URIs incorporados puede revelar información valiosa sobre los motivos por los que se produce un error.
¿El validador de URIs incorporados aparece como se espera?
Si estás en la página Incorporar del panel Administrador de Looker y no aparece el validador de URIs incorporados, significa que aún no se habilitó la incorporación firmada. Deberás habilitar la incorporación firmada.
Recibo el error 'signature param' failed to authenticate
Si ves este error, significa que la firma que generó la secuencia de comandos no funciona como se espera. Consulta las siguientes secciones para ver posibles soluciones:
¿Los secretos incorporados coinciden?
El secreto de incorporación de tu instancia de Looker debe ser idéntico al secreto de incorporación firmado en tu secuencia de comandos de generación de URL de incorporación firmada. Si no estás seguro de si esto es cierto, selecciona Restablecer secreto para generar uno nuevo y agregarlo a tu secuencia de comandos. Si restableces la clave, se romperán los elementos incorporados que usaron la clave anterior.
Intenta usar el extremoCreate Signed Embed Url
para crear tu URL de incorporación y especifica el secreto en tu secuencia de comandos para elsecret_id
en el cuerpo de la llamada. La respuesta te indicará si el secreto que usas no es válido.
¿La cadena de firma está en el orden correcto?
Los parámetros de incorporación en la cadena de firma deben estar en el orden correcto en la secuencia de comandos de generación de URLs. El orden correcto se documenta en la página de documentación de Inserción firmada.
La cadena de firma, cuando se imprime, debería verse de la siguiente manera antes de codificarse:
company_name.looker.com /login/embed/embed%2Fdashboards%2F123 "ac786cbc06162b1edde3a8b35920a93e" 15852443573600 "test_external_user_id" ["access_data","see_user_dashboards"] ["test_model"] [] "test group space" {"test_user_attribute":"yes"} {}
Después de firmar la cadena de firma con tu secreto de incorporación, asegúrate de que los parámetros de la URL final coincidan con los parámetros especificados en la cadena de firma. Asegúrate de que los caracteres especiales, como +
y /
, estén codificados en los parámetros de URL (por ejemplo, +
podría interpretarse como un espacio si no está codificado correctamente) y de que no haya saltos de línea en la URL de incorporación firmada, que podrían pasarse por alto después de la codificación.
Compara tu secuencia de comandos con nuestros ejemplos de secuencias de comandos para verificar si realiza todos los pasos correctos y si la firma usa la encriptación adecuada.
Recibo el error This request includes invalid params: ["embed_domain"]
Antes de comenzar a solucionar este error, ten en cuenta que el parámetro embed_domain
solo es necesario si tu secuencia de comandos usa objetos de escucha de eventos de JavaScript, lo que, por lo general, no es un requisito para una implementación básica de incorporación firmada. Si tu aplicación no necesita escuchar eventos de JavaScript, la opción más sencilla es deshacerte por completo del parámetro embed_domain
.
Si necesitas usar eventos de JavaScript en tu aplicación de incorporación, verifica la secuencia de comandos de generación de URLs para ver dónde se agrega el parámetro embed_domain
. Por lo general, el error significa que el parámetro embed_domain
se colocó accidentalmente como un parámetro de incorporación firmado en lugar de hacerlo directamente dentro de embed_url
. La secuencia de comandos no formateará el parámetro embed_domain
correctamente, a menos que sea parte de embed_url
, y se debe agregar después de la URL de incorporación y antes de cualquier parámetro.
Así es como debería verse cuando el parámetro embed_domain
se especifica correctamente en tu secuencia de comandos:
embed_url: "/embed/dashboards/3?embed_domain=https://company.com"
Si usas el extremoCreate Signed Embed Url
, el parámetroembed_domain
debe colocarse al final detarget_url
.
Recibo el error 'nonce' param already used this hour
El valor del parámetro nonce
no debe repetirse en la misma hora y debe tener menos de 255 caracteres. Por lo tanto, verás este error si pruebas una URL a la que ya se accedió. Asegúrate de generar una URL de incorporación nueva que aún no se haya cargado en tu navegador y de que el nonce cambie y no se vuelva a usar.
Se me redirecciona a un error Uh-Oh, Something went wrong
Si ves este error, comunícate con el equipo de asistencia de Looker para que te ayude a diagnosticar el problema.
Se me redirecciona a una página con el mensaje de error 401 You are not authenticated to view this page.
Si probaste todos los pasos para solucionar problemas aplicables y el error 401 persiste, es probable que tu navegador esté bloqueando las cookies de terceros. La mayoría de los navegadores se están volviendo más restrictivos y, de forma predeterminada, tendrán una política de cookies que bloquea estas cookies. Por ejemplo, la configuración de Prevenir el seguimiento entre sitios de Safari está habilitada de forma predeterminada, al igual que la configuración de Bloquear cookies de terceros en Incógnito de Chrome.
Si tu aplicación incorpora contenido de Looker y el nombre de dominio de tu instancia de Looker termina en company.looker.com
, el navegador no autenticará el iframe incorporado en todos los dominios, a menos que se modifique la configuración de privacidad de cookies del navegador.
Instancias alojadas en Looker
Los administradores alojados en Looker que no quieran que sus usuarios habiliten manualmente las cookies de terceros en sus navegadores deberán cambiar el nombre de dominio de la instancia alojada en Looker. A modo de ejemplo, las instancias alojadas en Looker suelen tener el formato https://<hostname>.<subdomain>.<domain>.com
. Si se cambia el nombre de dominio de Looker, este ya no se considerará un dominio de terceros. Consulta ¿Qué sucede si cambia la URL de mi instancia de Looker? la página Prácticas recomendadas para obtener más información.
Si te interesa agregar un dominio personalizado para tu instancia de Looker, comunícate con el equipo de asistencia de Looker para configurar el DNS necesario.
Instancias autoalojadas
Si alojas tu instancia de Looker por tu cuenta, asegúrate de que la aplicación que usa la incorporación firmada esté en el mismo dominio base que tu instancia de Looker. Para ello, cambia las entradas de DNS de tu instancia de Looker.
Chrome también requiere que cualquier cookie de sesión con la marca samesite=none
también especifique secure
. Looker no indicará secure
si tu instancia de Looker no tiene una marca de inicio --ssl-provided-externally-by=<s>
, así que asegúrate de que esta marca de inicio esté configurada.
Todavía tengo problemas. ¿Qué debo hacer?
Si los problemas persisten después de probar las sugerencias de esta página, comunícate con tu contacto de Looker o visita Asistencia de Looker para abrir un ticket.