Aviso de parche de la API de Looker Query ID

Looker habilitó una actualización de seguridad obligatoria para evitar el riesgo de exposición de metadatos entre los usuarios autenticados de Looker que comparten el mismo modelo de LookML. Para habilitar la mitigación en tu instancia, es posible que debas cambiar el uso de ciertos extremos de la API. Este parche afecta a todas las versiones compatibles de Looker que se indican en el documento Versiones oficiales.

¿Qué cambió?

Looker aplicó una actualización de seguridad obligatoria a tu sistema. Debido al cambio en el comportamiento de algunos extremos de las APIs, deberás tomar medidas para habilitar la actualización de seguridad y ajustar el uso de las APIs actualizadas para evitar errores en las secuencias de comandos de tus APIs.

En el caso de las instancias alojadas en Looker, este parche agrega una nueva función heredada llamada No permitir IDs de consultas numéricos. Cuando se habilita, esta función heredada provoca cambios en el uso de los siguientes extremos de la API:

En el caso de las instancias alojadas por el cliente, los cambios anteriores extremo de API se habilitarán cuando la instancia se actualice a una versión de Looker que incluya este parche.

¿Qué debo hacer?

Google Cloud recomienda a todos los clientes que completen las siguientes acciones:

Actualiza las secuencias de comandos de la API

Si usas uno de los extremos de la API que se enumeran a continuación, es posible que debas tomar medidas sin importar la versión de Looker o de la API que estés usando. La acción recomendada es diferente según si usas la API 3.0 o 3.1, o la API 4.0.

  • GET /queries/<query_id>
  • POST /render_tasks/queries/<query_id>/<result_format>
  • GET /running_queries

Si usas la API 4.0

Si usas el nivel de API 4.0 y uno de los extremos mencionados en la sección anterior, realiza los siguientes cambios en el código de la aplicación:

  • Reemplaza cualquier query_ids numérico (por ejemplo, 32, 124, etc.) que se use con los extremos GET /queries/<query_id> o POST /render_tasks/queries/<query_id>/<result_format> con el valor slug para la consulta. Si deseas obtener instrucciones para encontrar el valor del slug de una consulta, consulta la sección "¿Cómo puedo encontrar el valor del slug para una consulta?".
  • Las apps que usen el extremo GET /running_queries estarán restringidas solo para los administradores de Looker.

Si usas el nivel de API 3.0 o 3.1

Si usas el nivel de API 3.0 o 3.1 y uno de los extremos mencionados en la sección anterior, realiza los siguientes cambios en el código de la aplicación:

  • El extremo GET /queries/<query_id> ya no funcionará. Reemplaza el extremo GET /queries/<query_id> por el extremo GET /queries/slug/<slug> para recuperar los mismos metadatos de consulta que obtenías antes. Si deseas obtener instrucciones para encontrar el valor del slug de una consulta, consulta la sección "¿Cómo puedo encontrar el valor del slug para una consulta?".
  • El extremo POST /render_tasks/queries/<query_id>/<result_format> ya no funcionará. Los SDK de Looker compatibles con la API 3.1 serán compatibles con las APIs 3.1 y 4.0. Si no usas uno de los SDKs de Looker, modifica http request path para usar 4.0 en lugar de 3.1 para esa llamada. Luego, reemplaza cualquier query_ids numérico (por ejemplo, 32, 124, etc.) con el valor slug para la consulta. Si deseas obtener instrucciones para encontrar el valor del slug de una consulta, consulta la sección "¿Cómo puedo encontrar el valor del slug para una consulta?".
  • Las apps que usen el extremo GET /running_queries estarán restringidas solo para los administradores de Looker.

¿Cómo puedo encontrar el valor del slug para una consulta?

Puedes encontrar el valor del slug de una consulta de las siguientes maneras:

  • Para una exploración, puedes encontrar el slug en su URL siguiendo la variable qid= de la URL.

  • Puedes encontrar el valor del slug asociado con un ID de consulta numérico mediante la Actividad del sistema.

    1. En el menú de exploración de Looker, selecciona Actividad del sistema > Historial Explorar.

    2. En la vista Consulta, selecciona las dimensiones ID y Vínculo.

    3. De manera opcional, agrega un filtro en la dimensión ID y, luego, ingresa el ID numérico de la consulta en el campo del filtro ID de consulta.

    4. Haz clic en Ejecutar.

    5. Haz clic en el vínculo [Query] junto al ID de consulta numérico en los resultados de Explorar para abrir una exploración basada en ese ID de consulta numérico.

    6. Luego, puedes usar el slug en la URL de la exploración, que sigue a la variable qid= de la URL.

Habilita el parche en instancias de Looker alojadas en Looker (original)

Google Cloud recomienda que todos los clientes alojados en Looker habiliten la nueva función heredada Inhabilitar ID de consulta numérica.

Para habilitar la opción Inhabilitar IDs de consulta numéricos, haz lo siguiente:

  1. Navega al panel Administrador > Heredado en el menú Administrador de Looker.

  2. Habilita el botón de activación Inhabilitar ID de consulta numéricos:

Habilita el parche en las instancias de Looker (Google Cloud Core)

El parche se habilita automáticamente en todas las instancias de Looker (Google Cloud Core). No es necesario que hagas nada para habilitar el parche, pero asegúrate de actualizar todas las secuencias de comandos de la API que incluyan cualquiera de los extremos de la API actualizados.

Habilita el parche en las instancias alojadas por el cliente

Todas las instancias alojadas por el cliente deben actualizar su instancia de Looker a una versión de Looker que incluya el parche más reciente. Este parche se incluye en la actualización más reciente de Looker, versiones 23.18, 23.20, 24.0 y 24.2, y de Looker ESR versión 23.0, 23.6, 23.12 y 24.0. Asegúrate de actualizar todas las secuencias de comandos de API que incluyan cualquiera de los extremos de la API actualizados antes de actualizar tu instancia de Looker.

¿Cómo puedo saber si usamos alguno de los extremos de la API actualizados?

Puedes ver una lista de las llamadas a la API realizadas a tu instancia de Looker mediante la Exploración de actividades del sistema de uso de la API.

  1. En el menú Explorar de Looker, selecciona la opción Explorar de Actividad del sistema y, luego, la vista Uso de la API.

  2. Selecciona las dimensiones Fecha de creación > Fecha y Extremo, y la medida Uso total.

  3. Agrega un filtro en la dimensión Extremo y, en el campo de filtro, incluye los siguientes extremos:

    • /queries/:query_id
    • /render_tasks/queries/:query_id/:result_format
    • /running_queries
  4. Haz clic en Ejecutar. Looker mostrará la información de uso de esos extremos.

¿Qué debo hacer si necesito más tiempo para actualizar mis secuencias de comandos de la API?

Comunícate con el equipo de asistencia de Looker a más tardar el 21 de febrero a las 5 p.m. (hora del Pacífico) y comunícanos que te gustaría inhabilitar la función heredada No permitir los IDs de consulta numérica hasta que puedas actualizar las secuencias de comandos de tu API.

¿Existen pasos adicionales, además de lo que debo hacer para este incidente, que las partes afectadas deban hacer para mitigar los posibles efectos adversos?

No.

¿Qué medidas está tomando Looker para evitar problemas similares en el futuro?

Looker y Google mantienen un programa de seguridad sólido para identificar y prevenir de forma proactiva las fallas de seguridad a nivel interno. Puedes encontrar más información en https://cloud.google.com/looker/product/security.

¿Looker informó a los reguladores?

Looker cumple todos los requisitos regulatorios adecuados en relación con las divulgaciones para estos tipos de problemas.