Puede ser difícil solucionar los errores de autenticación cuando usas la función de incorporación firmada para tu contenido de Looker. Existen diferentes enfoques que puedes adoptar para intentar diagnosticar problemas, y elegirás uno según a dónde dirijan tus redireccionamientos a los usuarios. Las sugerencias de esta página suponen que generas tu URL de incorporación firmada con una secuencia de comandos similar a las del repositorio de GitHub de ejemplos de incorporación de Looker, a menos que se indique lo contrario.
Qué probar primero
Antes de comenzar a incorporar contenido, asegúrate de que se haya generado tu secreto de incorporación en el panel de administrador y de que tu contenido incorporado funcione en el modo de producción, no solo en el modo de desarrollo.
Si tienes permisos de administrador, usa sudo como usuario integrado para verificar que tu contenido funcione. 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ó el usuario 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 está autohospedada, asegúrate de que el servidor cliente pueda acceder 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 esté usando SSL (HTTPS).
En el resto de esta página, se describen los 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 "Falla 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 la 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 Incorporar del panel Administrador de Looker. A veces, el Validador de URI de incorporación puede revelar información valiosa sobre el motivo por el que se produce un error.
¿El validador de URI de incorporación aparece según lo esperado?
Si estás en la página Incorporar del panel Administrador de Looker y el validador de URI de incorporación no aparece en la página, esto sugiere 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ó tu secuencia de comandos no funciona como se espera. Consulta las siguientes secciones para ver posibles soluciones:
¿Coinciden los secretos de la incorporación?
El secreto de incorporación en tu instancia de Looker debe ser idéntico al secreto de incorporación firmado en tu secuencia de comandos de generación de URLs de incorporación firmadas. Si no sabes con certeza si esto es así, selecciona Restablecer secreto para generar un secreto nuevo y agregarlo a tu secuencia de comandos. Si restableces la clave, dejarán de funcionar las incorporaciones que usaron la clave anterior.
Intenta usar el extremoCreate Signed Embed Url
para crear tu URL de incorporación y especificar 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 Incorporació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 la 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 omitirse después de la codificación.
Compara tu secuencia de comandos con nuestros ejemplos de secuencias de comandos para verificar si tu secuencia de comandos sigue todos los pasos adecuados y si la firma usa el cifrado correcto.
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 detectores de eventos de JavaScript, lo que, por lo general, no es un requisito para una implementación básica de la inserción firmada. Si tu aplicación no necesita escuchar eventos de JavaScript, la opción más sencilla es deshacerse por completo del parámetro embed_domain
.
Si necesitas usar eventos de JavaScript en tu aplicación integrada, consulta 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 directamente dentro de embed_url
. La secuencia de comandos no formateará el parámetro embed_domain
correctamente, a menos que realmente forme parte de embed_url
, y se debe agregar después de la URL de incorporación y antes de cualquier parámetro.
Así 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 dentro de 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 reutilice.
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 aplicables para solucionar el problema y el error 401 persiste, es probable que tu navegador esté bloqueando las cookies de terceros. La mayoría de los navegadores son cada vez más restrictivos y, de forma predeterminada, aplicarán una política de cookies que las bloquee. Por ejemplo, el parámetro de configuración Prevent Cross-Site Tracking de Safari está habilitado de forma predeterminada, al igual que el parámetro de configuración Block third-party cookies in Incognito 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 los dominios, a menos que se modifique la configuración de privacidad de las 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. Por ejemplo, las instancias alojadas en Looker suelen tener el formato https://<hostname>.<subdomain>.<domain>.com
. Si se cambia el nombre del dominio de Looker, ya no se considerará un dominio de terceros. Consulta la página de prácticas recomendadas Cómo cambiar la URL de una instancia de Looker 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 la configuración de DNS necesaria.
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 --ssl-provided-externally-by=<s>
marca de inicio, así que asegúrate de que esta marca de inicio esté configurada.
Todavía tengo problemas. ¿Qué debo hacer?
Si sigues teniendo problemas después de probar las sugerencias de esta página, comunícate con tu contacto de Looker o visita el equipo de asistencia de Looker para abrir un ticket.