Notifica patch API Looker Query ID

Looker ha reso disponibile un aggiornamento della sicurezza obbligatorio per prevenire il rischio di esposizione dei metadati tra utenti Looker autenticati che condividono lo stesso modello LookML. Per abilitare la mitigazione nella tua istanza, potrebbe essere necessario modificare l'utilizzo di alcuni endpoint API. Questa patch influisce su tutte le versioni di Looker supportate elencate nel documento Release ufficialmente supportate.

Che cosa è cambiato?

Looker ha applicato un aggiornamento della sicurezza obbligatorio al tuo sistema. A causa del cambiamento nel comportamento di alcuni endpoint API, dovrai intervenire per attivare l'aggiornamento della sicurezza e regolare l'utilizzo di eventuali API aggiornate per evitare di causare errori negli script delle API.

Per le istanze ospitate da Looker, questa patch aggiunge una nuova funzionalità precedente, denominata Non consentire ID query numerici. Quando è abilitata, questa funzionalità legacy causa modifiche nell'utilizzo dei seguenti endpoint API:

Per le istanze ospitate dal cliente, le precedenti modifiche degli endpoint API verranno abilitate quando viene eseguito l'upgrade dell'istanza a una versione di Looker che include questa patch.

Cosa devo fare?

Google Cloud consiglia a tutti i clienti di completare entrambe le seguenti azioni:

Aggiornamento degli script API

Se utilizzi uno degli endpoint API elencati di seguito, potresti dover intervenire indipendentemente dalla versione di Looker o dell'API in uso. L'azione consigliata varia a seconda che utilizzi API 3.0 o API 3.1 oppure API 4.0.

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

Se utilizzi l'API 4.0

Se usi l'API 4.0 e uno degli endpoint elencati nella sezione precedente, apporta le seguenti modifiche al codice dell'applicazione:

  • Sostituisci qualsiasi query_ids numerico (ad esempio 32, 124 e così via) utilizzato con gli endpoint GET /queries/<query_id> o POST /render_tasks/queries/<query_id>/<result_format> con il valore slug della query. Per istruzioni su come trovare il valore slug di una query, consulta la sezione "Come faccio a trovare il valore slug per una query?".
  • Qualsiasi applicazione che utilizza l'endpoint GET /running_queries sarà limitata solo agli amministratori di Looker.

Se utilizzi l'API 3.0 o 3.1

Se usi l'API 3.0 o l'API 3.1 e uno degli endpoint elencati nella sezione precedente, apporta le seguenti modifiche al codice dell'applicazione:

  • L'endpoint GET /queries/<query_id> non funzionerà più. Sostituisci l'endpoint GET /queries/<query_id> con l'endpoint GET /queries/slug/<slug> per recuperare gli stessi metadati delle query di cui stavi ricevendo in precedenza. Per istruzioni su come trovare il valore slug di una query, consulta la sezione "Come faccio a trovare il valore slug per una query?".
  • L'endpoint POST /render_tasks/queries/<query_id>/<result_format> non funzionerà più. Gli SDK Looker che supportano l'API 3.1 supporteranno sia l'API 3.1 che l'API 4.0. Se non utilizzi uno degli SDK di Looker, modifica http request path in modo da usare la versione 4.0 anziché la versione 3.1 per la chiamata. Quindi sostituisci qualsiasi valore numerico query_ids (ad esempio 32, 124 e così via) con il valore slug della query. Per istruzioni su come trovare il valore slug di una query, consulta la sezione "Come faccio a trovare il valore slug per una query?".
  • Qualsiasi applicazione che utilizza l'endpoint GET /running_queries sarà limitata solo agli amministratori di Looker.

Come posso trovare il valore slug per una query?

Puoi trovare il valore slug per una query nei seguenti modi:

  • Per un'esplorazione, puoi trovare lo slug nell'URL dell'esplorazione che segue la variabile qid= nell'URL.

  • Puoi trovare il valore slug utilizzando l'ID associato a un ID query numerico utilizzando l'Attività di sistema.

    1. Dal menu Esplorazione di Looker, seleziona Attività di sistema > Cronologia Esplora.

    2. Nella visualizzazione Query, seleziona le dimensioni ID e Link.

    3. Se vuoi, aggiungi un filtro alla dimensione ID e inserisci l'ID query numerico della query nel campo del filtro ID query.

    4. Fai clic su Run (Esegui).

    5. Fai clic sul link [Query] accanto all'ID query numerico nei risultati di Esplora: si aprirà un'esplorazione in base all'ID query numerico specificato.

    6. Puoi quindi utilizzare lo slug nell'URL dell'esplorazione, che segue la variabile qid= nell'URL.

Abilitazione della patch sulle istanze Looker (originale) ospitate da Looker

Google Cloud consiglia a tutti i clienti ospitati da Looker di abilitare la nuova funzionalità precedente Non consentire l'ID query numerico.

Per attivare l'opzione Non consentire ID query numerici:

  1. Vai al riquadro Amministrazione > Legacy nel menu Amministratore di Looker.

  2. Attiva l'opzione Non consentire ID query numerici:

Abilitazione della patch sulle istanze di Looker (Google Cloud core)

La patch viene abilitata automaticamente su tutte le istanze di Looker (Google Cloud core). Non devi fare nulla per abilitare la patch, ma assicurati di aggiornare eventuali script API che includono gli endpoint API aggiornati.

Abilitazione della patch nelle istanze ospitate dal cliente

Tutte le istanze ospitate dal cliente devono aggiornare la propria istanza Looker a una versione di Looker che includa la patch più recente. Questa patch è inclusa nell'aggiornamento più recente alle versioni 23.18, 23.20, 24.0 e 24.2 di Looker e alle versioni 23.0, 23.6, 23.12 e 24.0 di Looker ESR. Assicurati di aggiornare tutti gli script API che includono gli endpoint API aggiornati prima di aggiornare l'istanza di Looker.

Come faccio a sapere se vengono utilizzati endpoint API aggiornati?

Puoi visualizzare un elenco delle chiamate API effettuate alla tua istanza Looker utilizzando l'esplorazione delle attività del sistema di utilizzo delle API.

  1. Dal menu Esplora di Looker, seleziona l'esplorazione dell'attività di sistema, quindi la visualizzazione Utilizzo API.

  2. Seleziona le dimensioni Data di creazione > Data ed Endpoint e la misura Utilizzo totale.

  3. Aggiungi un filtro alla dimensione Endpoint e includi i seguenti endpoint nel campo del filtro:

    • /queries/:query_id
    • /render_tasks/queries/:query_id/:result_format
    • /running_queries
  4. Fai clic su Run (Esegui). Looker mostrerà le informazioni sull'utilizzo di questi endpoint.

Che cosa devo fare se mi serve più tempo per aggiornare i miei script API?

Contatta l'assistenza Looker entro il 21 febbraio alle 17:00 (fuso orario del Pacifico) e comunicaci di voler disattivare la funzionalità precedente Non consentire l'utilizzo degli ID query numerici finché non potrai aggiornare gli script API.

Sono previsti ulteriori passaggi, oltre a quello che devo fare per questo incidente, che le parti interessate devono intraprendere per mitigare i possibili effetti negativi?

No

Quali misure sta adottando Looker per prevenire problemi simili in futuro?

Looker e Google adottano un solido programma di sicurezza per prevenire e identificare in modo proattivo i problemi di sicurezza internamente. Puoi trovare maggiori informazioni all'indirizzo https://cloud.google.com/looker/product/security.

Looker ha informato gli enti regolatori?

Looker segue tutti i requisiti normativi appropriati relativi alla divulgazione per questi tipi di problemi.