Aviso de correção da API do ID da consulta do Looker

O Looker disponibilizou uma atualização de segurança obrigatória para evitar o risco de exposição de metadados entre usuários autenticados que compartilham o mesmo modelo do LookML. Para ativar a mitigação na sua instância, talvez seja necessário mudar o uso de determinados endpoints da API. Esse patch afeta todas as versões do Looker compatíveis listadas no documento Lançamentos oficialmente compatíveis.

O que mudou?

O Looker aplicou uma atualização de segurança obrigatória ao seu sistema. Devido à mudança no comportamento de alguns endpoints de API, você vai precisar ativar a atualização de segurança e ajustar o uso de APIs atualizadas para evitar erros nos scripts.

Para instâncias hospedadas pelo Looker, este patch adiciona um novo recurso legado chamado Não permitir IDs de consulta numérica. Quando ativado, esse recurso legado causa mudanças no uso dos seguintes endpoints da API:

Para instâncias hospedadas pelo cliente, as mudanças anteriores do endpoint da API serão ativadas quando a instância for atualizada para uma versão do Looker que inclua esse patch.

O que eu preciso fazer?

O Google Cloud recomenda que todos os clientes realizem as seguintes ações:

Como atualizar scripts de API

Se você estiver usando um dos endpoints de API listados a seguir, talvez seja necessário tomar medidas, independentemente da versão do Looker ou da API que estiver usando. A ação recomendada é diferente dependendo se você está usando a API 3.0 ou 3.1 ou a API 4.0.

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

Se você estiver usando a API 4.0

Se você estiver usando a API 4.0 e um dos endpoints listados na seção anterior, faça as seguintes mudanças no código do aplicativo:

  • Substitua qualquer query_ids numérico (por exemplo, 32, 124 etc.) usado com os endpoints GET /queries/<query_id> ou POST /render_tasks/queries/<query_id>/<result_format> pelo valor slug da consulta. Para saber como encontrar o valor de slug de uma consulta, consulte a seção "Como encontrar o valor de slug de uma consulta?".
  • Todos os aplicativos que usam o endpoint GET /running_queries são restritos apenas aos administradores do Looker.

Se você estiver usando a API 3.0 ou 3.1

Se você estiver usando a API 3.0 ou 3.1 e um dos endpoints listados na seção anterior, faça as seguintes mudanças no código do aplicativo:

  • O endpoint GET /queries/<query_id> não vai mais funcionar. Substitua o endpoint GET /queries/<query_id> pelo GET /queries/slug/<slug> para recuperar os mesmos metadados de consulta que você recebia antes. Para saber como encontrar o valor de slug de uma consulta, consulte a seção "Como encontrar o valor de slug de uma consulta?".
  • O endpoint POST /render_tasks/queries/<query_id>/<result_format> não vai mais funcionar. Os SDKs do Looker que oferecem suporte à API 3.1 também oferecem suporte à API 4.0. Se você não estiver usando um dos SDKs do Looker, modifique o http request path para usar 4.0 em vez de 3.1 para essa chamada. Em seguida, substitua qualquer query_ids numérico (por exemplo, 32, 124 etc.) pelo valor slug da consulta. Para saber como encontrar o valor de slug de uma consulta, consulte a seção "Como encontrar o valor de slug de uma consulta?".
  • Todos os aplicativos que usam o endpoint GET /running_queries são restritos apenas aos administradores do Looker.

Como encontro o valor do slug de uma consulta?

É possível encontrar o valor do slug de uma consulta das seguintes maneiras:

  • Para uma Análise, você pode encontrar o slug no URL da Análise seguindo a variável qid= no URL.

  • Você pode encontrar o valor do slug associado a um ID de consulta numérica usando a Atividade do sistema.

    1. No menu "Explorar" do Looker, selecione Atividade do sistema > Histórico Análise detalhada.

    2. Na visualização Consulta, selecione as dimensões ID e Link.

    3. Opcionalmente, adicione um filtro à dimensão ID e insira o ID numérico da consulta no campo de filtro ID da consulta.

    4. Clique em Executar.

    5. Clique no link [Query] ao lado do ID da consulta numérica nos resultados da Análise detalhada para abrir uma análise detalhada com base nesse ID.

    6. Em seguida, use o slug no URL da Análise detalhada, que segue a variável qid= no URL.

Como ativar o patch em instâncias do Looker (original) hospedadas pelo Looker

O Google Cloud recomenda que todos os clientes hospedados no Looker ativem o novo recurso legado Desativar ID de consulta numérica.

Para ativar a opção Não permitir IDs de consulta numérica:

  1. Navegue até o painel Administrador > Legado no menu "Administrador" do Looker.

  2. Ative a opção Não permitir IDs de consulta numérica:

Ativar o patch nas instâncias do Looker (núcleo do Google Cloud)

O patch é ativado automaticamente em todas as instâncias do Looker (Google Cloud Core). Não é necessário fazer nada para ativar o patch, mas é importante atualizar todos os scripts de API que incluem os endpoints atualizados.

Como ativar o patch em instâncias hospedadas pelo cliente

Todas as instâncias hospedadas pelo cliente precisam atualizar a instância do Looker para uma versão que inclua o patch mais recente. Esse patch está incluído na atualização mais recente para as versões 23.18, 23.20, 24.0 e 24.2 do Looker e nas versões 23.0, 23.6, 23.12 e 24.0 do Looker ESR. Atualize todos os scripts de API que incluem os endpoints de API atualizados antes de atualizar a instância do Looker.

Como posso saber se usamos algum dos endpoints atualizados da API?

É possível conferir uma lista das chamadas de API feitas para sua instância do Looker usando a Análise de atividade do sistema de uso da API.

  1. No menu Explorar do Looker, selecione Atividade do sistema e, em seguida, a visualização Uso da API.

  2. Selecione as dimensões Data de criação > Data e Endpoint e a métrica Uso total.

  3. Adicione um filtro à dimensão Endpoint e, no campo de filtro, inclua os seguintes endpoints:

    • /queries/:query_id
    • /render_tasks/queries/:query_id/:result_format
    • /running_queries
  4. Clique em Executar. O Looker vai mostrar informações de uso desses endpoints.

Se eu precisar de mais tempo para atualizar meus scripts de API, o que devo fazer?

Entre em contato com o suporte do Looker até 21 de fevereiro, às 17h (horário do Pacífico), e informe que você quer desativar o recurso legado Não permitir IDs de consulta numérica até que você possa atualizar seus scripts de API.

Além das etapas que preciso realizar para esse incidente, as partes afetadas precisam fazer mais alguma coisa para reduzir os possíveis efeitos adversos?

Não

Que medidas a Looker está tomando para evitar problemas semelhantes no futuro?

A Looker e o Google mantêm um programa de segurança robusto para evitar e identificar proativamente falhas de segurança internamente. Acesse https://cloud.google.com/looker/product/security para mais informações.

O Looker informou os órgãos reguladores?

O Looker segue todos os requisitos regulamentares apropriados relacionados à divulgação desses tipos de problemas.