Indicazioni sulla sicurezza di Google Maps Platform

Per le app e i progetti che utilizzano le API e gli SDK di Google Maps Platform, devi utilizzare le chiavi API o, se supportato, OAuth, per impedire usi e addebiti non autorizzati. Se utilizzi chiavi API, per la massima sicurezza, limita le tue chiavi API quando le crei. Queste best practice mostrano come limitarli.

Oltre ad applicare limitazioni relative alle chiavi API e delle applicazioni, segui tutte le pratiche di sicurezza applicabili a prodotti specifici di Google Maps Platform. Ad esempio, consulta l'API Maps JavaScript di seguito in Restrizioni consigliate per applicazioni e API.

Se le tue chiavi API sono già in uso, consulta i suggerimenti riportati di seguito in Se limiti o rigenera una chiave API in uso.

Per ulteriori dettagli sulle firme digitali, consulta la Guida alla firma digitale.

Best practice consigliate

Per una maggiore sicurezza ed evitare che ti venga fatturato l'uso non autorizzato, segui queste best practice per la sicurezza delle API per tutti i servizi, le API o gli SDK di Google Maps Platform:

Limitare le chiavi API

Usare chiavi API separate per ogni app

Elimina le chiavi API inutilizzate

Controllare l'utilizzo della chiave API

Fai attenzione durante la rigenerazione delle chiavi API

Suggerimenti aggiuntivi per i siti web che utilizzano le API Static Web

Proteggere le app utilizzando API web statiche

Ulteriori consigli per le app che utilizzano i servizi web

Proteggere le app usando i servizi web

Ulteriori consigli per le app mobile iOS e Android

Proteggere le app mobile utilizzando i servizi web o le API web statiche

Se stai limitando o rigenerando una chiave API in uso

  • Prima di modificare la chiave API, controlla l'utilizzo della chiave API Questo passaggio è particolarmente importante se aggiungi limitazioni dopo che la chiave è in uso.

  • Dopo aver modificato la chiave, aggiorna tutte le tue app con le nuove chiavi API, se necessario.

  • Se non si verifica alcun abuso attivo della tua chiave API, puoi eseguire la migrazione delle app a più nuove chiavi API secondo i tuoi tempi, lasciando invariata la chiave API originale finché non vedi un solo tipo di traffico, a cui potrai quindi limitare le chiavi API con una limitazione dell'applicazione. Per ulteriori istruzioni, consulta Eseguire la migrazione a più chiavi API.

    Monitora l'utilizzo nel tempo e verifica quando API, tipi di piattaforma e domini specifici hanno eseguito la migrazione dalla chiave API precedente prima di scegliere di limitare o eliminare la chiave precedente. Per ulteriori informazioni, consulta Reporting e monitoraggio e Metriche.

  • Se la tua chiave API è stata compromessa, vuoi procedere più rapidamente per proteggere la chiave API e fermare l'abuso. Nelle app per Android e iOS, le chiavi vengono sostituite solo quando i clienti aggiornano le loro app. L'aggiornamento o la sostituzione delle chiavi in JavaScript o nelle app di servizi web è molto più semplice, ma potrebbe comunque richiedere un'attenta pianificazione e un lavoro rapido.

    Per maggiori informazioni, consulta Gestire l'uso non autorizzato di una chiave API.

Limita le tue chiavi API

La best practice consiste nel limitare sempre le chiavi API con una limitazione per le applicazioni e una o più restrizioni API. Per le limitazioni suggerite da API, SDK o servizio JavaScript, consulta la sezione Limitazioni consigliate per applicazioni e API di seguito.

  • Limitazione delle applicazioni Puoi limitare l'utilizzo di una chiave API a piattaforme specifiche, ad esempio applicazioni Android o iOS o siti web specifici per applicazioni lato client oppure indirizzi IP o subnet CIDR per app lato server che inviano chiamate API REST per i servizi web.

    Puoi limitare una chiave aggiungendo una o più limitazioni delle applicazioni dei tipi che vuoi autorizzare, dopodiché sono consentite solo le richieste provenienti da queste origini.

  • Restrizioni delle API Puoi limitare le API, gli SDK o i servizi Google Maps Platform su cui può essere utilizzata la tua chiave API. Le restrizioni delle API consentono solo le richieste alle API e agli SDK specificati. Per ogni chiave API puoi specificare tutte le restrizioni API necessarie. L'elenco delle API disponibili include tutte le API abilitate in un progetto.

Imposta una limitazione delle applicazioni per una chiave API

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Seleziona la chiave API che vuoi limitare.

  3. Nella pagina Modifica chiave API, in Limitazioni delle chiavi, seleziona Imposta una limitazione per le applicazioni.

    Pagina Modifica chiave API

  4. Seleziona uno dei tipi di restrizioni e fornisci le informazioni richieste seguendo l'elenco delle restrizioni.

    Tipo di limitazione Descrizione
    Siti web Specifica uno o più siti web referrer.
    • Gli schemi URI del referrer supportati universalmente sono https e http.
    • Fornisci sempre l'URI del referrer completo, inclusi schema di protocollo, nome host e porta facoltativa (ad es. https://google.com).
    • Puoi utilizzare caratteri jolly per autorizzare tutti i sottodomini. Ad esempio, https://*.google.com accetta tutti i siti che terminano con .google.com. Tieni presente che se specifichi www.domain.com, questo funge da carattere jolly www.domain.com/* e autorizza tutti i percorsi secondari di quel nome host.
    • Fai attenzione quando autorizzi i referrer a percorso completo, ad esempio https://google.com/some/path, poiché, per impostazione predefinita, la maggior parte dei browser attuali rimuove il percorso dalle richieste multiorigine.
    Indirizzi IP Specifica uno o più indirizzi IPv4 o IPv6 oppure subnet utilizzando la notazione CIDR. Gli indirizzi IP devono corrispondere all'indirizzo di origine osservato dai server di Google Maps Platform. Se utilizzi il servizio Network Address Translation (NAT), questo indirizzo in genere corrisponde all'indirizzo IP pubblico della tua macchina.
    App Android Aggiungi il nome del pacchetto Android (dal file AndroidManifest.xml) e l'impronta digitale del certificato di firma SHA-1 di ogni applicazione Android che vuoi autorizzare. Se utilizzi la funzionalità Firma dell'app di Google Play, per recuperare l'impronta digitale del certificato di firma, consulta la sezione Lavorare con i provider API. Se gestisci la tua chiave di firma, consulta la pagina relativa alla firma automatica dell'applicazione o le istruzioni per l'ambiente di build.
    App per iOS Aggiungi l'identificatore pacchetto di ogni applicazione iOS che vuoi autorizzare.

    Per suggerimenti su una limitazione delle applicazioni, vedi Limitazione consigliata per le applicazioni.

  5. Seleziona Salva.

Impostare restrizioni API per una chiave API

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Seleziona la chiave API che vuoi limitare.

  3. Nella sezione Limitazioni API della pagina Modifica chiave API:

    • Seleziona Limita chiave.

    • Apri Seleziona API e seleziona le API o gli SDK a cui vuoi che l'applicazione acceda utilizzando la chiave API.

      Se un'API o un SDK non sono presenti nell'elenco, devi abilitarli. Per maggiori dettagli, consulta Per abilitare una o più API o SDK.

    Limita un'API nella pagina Modifica chiave API

  4. Seleziona Salva.

    Dopo questo passaggio, la restrizione diventa parte della definizione della chiave API. Assicurati di fornire i dettagli appropriati e seleziona Salva per salvare le restrizioni relative alle chiavi API. Per ulteriori informazioni, consulta la guida Ottenere una chiave API nella documentazione per l'API o l'SDK specifici che ti interessano.

Per le restrizioni consigliate per le API, consulta la pagina relativa alle restrizioni consigliate per le API.

Controlla l'utilizzo della chiave API

Se stai limitando le chiavi API dopo che sono state create o se vuoi vedere quali API vengono utilizzate da una chiave in modo da poterle limitare, devi controllare l'utilizzo della chiave API. Questi passaggi mostrano in quali servizi e metodi API viene utilizzata una chiave API. Se noti un utilizzo diverso dai servizi di Google Maps Platform, indaga per stabilire se è necessario aggiungere altre restrizioni per evitare l'uso indesiderato. Puoi utilizzare l'Explorer metriche della console Cloud di Google Maps Platform per determinare quali restrizioni relative ad API e applicazioni applicare alla tua chiave API:

Determinare le API che utilizzano la chiave API

I seguenti report sulle metriche consentono di determinare quali API utilizzano le tue chiavi API. Utilizza questi report per:

  • Scopri come vengono utilizzate le tue chiavi API
  • Individua l'utilizzo imprevisto
  • Contribuisci a verificare se una chiave inutilizzata può essere eliminata in sicurezza. Per informazioni sull'eliminazione di una chiave API, consulta Eliminare le chiavi API inutilizzate.

Quando applichi limitazioni delle API, utilizza questi report per creare un elenco di API da autorizzare o per convalidare suggerimenti relativi alle restrizioni delle chiavi API generati automaticamente. Per saperne di più sulle limitazioni consigliate, consulta Applicare le limitazioni consigliate. Per ulteriori informazioni sull'utilizzo di Esplora metriche, consulta Creare grafici con Esplora metriche.

  1. Vai a Metrics Explorer della console Google Cloud.

  2. Accedi e seleziona il progetto per le chiavi API che vuoi controllare.

  3. Vai alla pagina Esplora metriche per il tuo tipo di API:

    • Per le chiavi API che utilizzano qualsiasi API tranne l'API Maps Embed: vai alla pagina Esplora metriche.

    • Per le chiavi API che utilizzano l'API Maps Embed: vai a Metrics Explorer.

  4. Ispeziona ogni chiave API:

    1. Seleziona AGGIUNGI FILTRO.

    2. Seleziona l'etichetta credential_id.

    3. Seleziona il valore corrispondente alla chiave che vuoi controllare.

    4. Prendi nota delle API per cui viene utilizzata questa chiave API e conferma l'utilizzo previsto.

    5. Al termine, seleziona Rimuovi filtro alla fine della riga del filtro attivo per eliminare il filtro aggiuntivo.

  5. Ripeti l'operazione per le chiavi rimanenti.

  6. Limita le tue chiavi API solo alle API in uso.

  7. Se rilevi un uso non autorizzato, consulta Gestire l'utilizzo non autorizzato di una chiave API.

Scegli il tipo corretto di limitazione delle applicazioni utilizzando Esplora metriche

Dopo aver verificato e eseguito le azioni necessarie per garantire che la chiave API venga utilizzata solo per i servizi Google Maps Platform in uso, assicurati anche che la chiave API presenti le corrette limitazioni dell'applicazione.

Se per la tua chiave API sono previste limitazioni consigliate per le chiavi API, applicale. Per maggiori informazioni, consulta Applicare le limitazioni consigliate per le chiavi API.

Se la chiave API non ha suggerimenti sulle restrizioni, determina il tipo di limitazione dell'applicazione da applicare in base al valore platform_type segnalato utilizzando Esplora metriche:

  1. Vai a Metrics Explorer della console Google Cloud.

  2. Accedi e seleziona il progetto per le API che vuoi controllare.

  3. Vai a questa pagina Esplora metriche: Esplora metriche.

  4. Ispeziona ogni chiave API:

    1. Seleziona AGGIUNGI FILTRO.

    2. Seleziona l'etichetta credential_id.

    3. Seleziona il valore corrispondente alla chiave che vuoi controllare.

    4. Al termine, seleziona Rimuovi filtro alla fine della riga del filtro attivo per eliminare il filtro aggiuntivo.

  5. Ripeti l'operazione per le chiavi rimanenti.

  6. Una volta individuato il tipo di piattaforma per le tue chiavi API, applica la limitazione dell'applicazione per quel platform_type:

    PLATFORM_TYPE_JS
    Applica le limitazioni del sito web alla chiave.
    PLATFORM_TYPE_ANDROID
    Applica le limitazioni delle app per Android al token.
    PLATFORM_TYPE_IOS
    Applica le limitazioni delle applicazioni per iOS alla chiave.
    PLATFORM_TYPE_WEBSERVICE
    Potresti dover utilizzare le limitazioni dell'indirizzo IP sulla chiave per limitarla correttamente. Per ulteriori opzioni per l'API Maps Static e l'API Street View Static, consulta Proteggere le app utilizzando API Static Web. Per ulteriori istruzioni sull'API Maps Embed, consulta Siti web con l'API Maps Embed.
    La mia chiave API utilizza più tipi di piattaforma
    Il tuo traffico non può essere protetto correttamente con una sola chiave API. Devi eseguire la migrazione a più chiavi API. Per maggiori informazioni, consulta Eseguire la migrazione a più chiavi API.

Usa chiavi API separate per ogni app

Questa prassi limita l'ambito di ogni chiave. Se una chiave API è compromessa, puoi eliminare o rigenerare la chiave interessata senza dover aggiornare le altre chiavi API. Puoi creare fino a 300 chiavi API per progetto. Per ulteriori informazioni, consulta la pagina Limiti delle chiavi API.

Per motivi di sicurezza è ideale per motivi di sicurezza una sola chiave API per applicazione, ma puoi utilizzare chiavi limitate in più app, purché queste utilizzino lo stesso tipo di limitazione delle applicazioni.

Applica le limitazioni consigliate per le chiavi API

Per alcuni proprietari ed editor del progetto, la console Google Cloud suggerisce restrizioni specifiche delle chiavi API alle chiavi API senza restrizioni in base all'utilizzo e all'attività di Google Maps Platform.

Se disponibili, i suggerimenti vengono visualizzati come opzioni precompilate nella pagina Credenziali di Google Maps Platform.

Motivi per cui potresti non visualizzare un consiglio o un consiglio incompleto

  • Stai (anche) utilizzando la chiave API in altri servizi che non siano Google Maps Platform. Se noti un utilizzo su altri servizi, non applicare il consiglio senza prima aver effettuato questi passaggi: prima:

    1. Verifica che l'utilizzo dell'API visualizzato nell'Explorer metriche della console Google Cloud sia legittimo.

    2. Aggiungi manualmente i servizi mancanti all'elenco delle API da autorizzare.

    3. Aggiungi manualmente eventuali limitazioni delle applicazioni mancanti per i servizi aggiunti all'elenco delle API. Se l'altra aggiunta richiede un tipo diverso di limitazioni dell'applicazione, consulta Eseguire la migrazione a più chiavi API.

  • La chiave API non viene utilizzata negli SDK o nelle API lato client.

  • Utilizzi la chiave API in un'app o un sito web a basso volume che non è stato utilizzato negli ultimi 60 giorni.

  • Di recente hai creato una nuova chiave o hai eseguito il deployment di una chiave esistente in una nuova app. In questo caso, attendi ancora qualche giorno per consentire l'aggiornamento dei suggerimenti.

  • Stai utilizzando la chiave API in più applicazioni che richiederebbero tipi in conflitto di limitazioni delle applicazioni oppure stai utilizzando la stessa chiave API in troppe app o siti web diversi. In entrambi i casi, come best practice, dovresti eseguire la migrazione a più chiavi. Per maggiori dettagli, consulta Eseguire la migrazione a più chiavi API.

Motivi per cui potresti visualizzare consigli che non sono visibili nei grafici

  • La tua app o il tuo sito web ha inviato solo burst di traffico molto brevi. In questo caso, passa da una visualizzazione GRAFICO per visualizzare una TABELLA o ENTRAMBI, poiché l'utilizzo è ancora visibile nella legenda. Per ulteriori informazioni, consulta Attivazione/disattivazione delle legende complete del grafico.

  • Il tuo traffico proviene dall'API Maps Embed. Per le istruzioni, consulta Determinare le API che utilizzano la chiave API.

  • Il traffico proveniente dall'app o dal sito web non rientra nell'intervallo di date disponibile nell'Explorer metriche di Google Cloud Console.

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Se disponibile, seleziona Applica limitazioni consigliate.

    Applica limitazioni consigliate

    Nota: se non vedi le limitazioni consigliate, consulta Impostazione delle limitazioni API per una chiave API per impostare le restrizioni appropriate.

  3. Seleziona Controlla l'utilizzo dell'API per verificare su quali servizi viene utilizzata la chiave API. Se vedi servizi diversi da quelli di Google Maps Platform, metti in pausa per rivedere manualmente i passaggi per i suggerimenti precedenti. Consulta la procedura di risoluzione dei problemi all'inizio della sezione Applicare le limitazioni consigliate per le chiavi API.

  4. Verifica che le limitazioni precompilate corrispondano ai siti web e alle app in cui prevedi di utilizzare la chiave API.

    Best practice: documenta e rimuovi eventuali restrizioni delle applicazioni o delle API non affiliate ai tuoi servizi. Se qualcosa si interrompe a causa di una dipendenza imprevista, puoi aggiungere di nuovo le app o le API richieste.

    • Se riconosci che un'app, un sito web o un'API sono chiaramente mancanti nel tuo consiglio, aggiungili manualmente o attendi un paio di giorni per consentire l'aggiornamento del consiglio.

    • Se hai bisogno di ulteriore aiuto con il suggerimento suggerito, contatta l'assistenza.

  5. Seleziona Applica.

Cosa fare se la domanda viene rifiutata dopo l'applicazione di un consiglio

Se noti che un'app o un sito web vengono rifiutati dopo aver applicato una limitazione, cerca la restrizione dell'applicazione da aggiungere nel messaggio di errore di risposta dell'API.

Per gli SDK lato client, consulta quanto segue:

Per verificare le restrizioni richieste per le API, consulta Determinare le API che utilizzano la tua chiave API.

Se non riesci a determinare quali limitazioni applicare:

  1. Documenta le limitazioni attuali per riferimento futuro.
  2. Rimuovili temporaneamente mentre esamini il problema. Puoi controllare l'utilizzo nel tempo seguendo i passaggi descritti in Controllare l'utilizzo della chiave API.
  3. Se necessario, contatta l'assistenza.

Elimina le chiavi API inutilizzate

Prima di eliminare una chiave API, assicurati che non sia utilizzata in produzione. Se il traffico non va a buon fine, è probabile che la chiave venga eliminata in sicurezza. Per maggiori informazioni, consulta la sezione Controllare l'utilizzo della chiave API.

Per eliminare una chiave API:

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Seleziona la chiave API che vuoi eliminare.

  3. Seleziona il pulsante Elimina nella parte superiore della pagina.

  4. Nella pagina Elimina credenziale, seleziona Elimina.

    L'eliminazione di una chiave API richiede alcuni minuti per la propagazione. Una volta completata la propagazione, il traffico che utilizza la chiave API eliminata viene rifiutato.

Fai attenzione quando rigeneri le chiavi API

La rigenerazione di una chiave API ne crea una nuova con tutte le restrizioni della chiave precedente. Questo processo avvia anche un timer di 24 ore, dopodiché la chiave API precedente viene eliminata.

Durante questo periodo di tempo, vengono accettate sia la vecchia che la nuova chiave, dandoti la possibilità di eseguire la migrazione delle tue app per utilizzare la nuova chiave. Tuttavia, una volta trascorso questo periodo di tempo, tutte le app che utilizzano ancora la vecchia chiave API smetteranno di funzionare.

Prima di rigenerare una chiave API:

  • Innanzitutto, prova a limitare le chiavi API come descritto in Limitare le chiavi API.

  • Se non è possibile limitare la chiave API a causa di tipi di restrizioni delle applicazioni in conflitto, esegui la migrazione a più chiavi nuove (con restrizioni) come descritto in Eseguire la migrazione a più chiavi API. La migrazione consente di controllare la migrazione e la tempistica di implementazione alle nuove chiavi API.

Se i suggerimenti precedenti non sono possibili e devi rigenerare la chiave API per impedirne l'uso non autorizzato, segui questi passaggi:

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Apri la chiave API che vuoi rigenerare.

  3. Nella parte superiore della pagina, seleziona Rigenera chiave.

  4. Seleziona Sostituisci chiave.

Nota: se necessario, puoi eseguire il rollback di qualsiasi chiave rigenerata alla versione precedente. Non sono previsti limiti di tempo per il rollback.

Per eseguire il rollback di una chiave rigenerata

  1. Apri la pagina Credenziali di Google Maps Platform della console Google Cloud.

  2. Apri la chiave API di cui vuoi eseguire il rollback.

  3. Seleziona Ripristina chiave precedente.

  4. Nella finestra di dialogo Ripristina, seleziona Ripristina chiave.

Dopo il rollback, la "nuova" versione precedente della chiave diventa la versione precedente e viene impostato un nuovo timer di disattivazione di 24 ore. È possibile tornare tra queste due coppie chiave-valore finché non si rigenera di nuovo la chiave.

Se rigeneri di nuovo la chiave, questa sovrascriverà il vecchio valore della chiave inattiva.

Esegui la migrazione a più chiavi API

Per eseguire la migrazione dall'utilizzo di una chiave API per più app a un'unica chiave API unica per ogni app, segui questi passaggi:

  1. Identificare le app che richiedono nuove chiavi:

    • Le app web sono le più facili da aggiornare, poiché controlli tutto il codice. Prevedi di aggiornare tutte le chiavi delle tue app basate sul web.
    • Le app mobile sono molto più difficili, poiché i clienti devono aggiornare le loro app prima che sia possibile utilizzare le nuove chiavi.
  2. Crea e limita le nuove chiavi: aggiungi sia una restrizione dell'applicazione sia almeno una restrizione dell'API. Per ulteriori informazioni, consulta Best practice consigliate.

  3. Aggiunta di nuove chiavi alle app: per le app mobile, questo processo potrebbe richiedere mesi prima che tutti gli utenti eseguano l'aggiornamento all'ultima versione dell'app con la nuova chiave API.

Proteggi le app utilizzando le API web statiche

Le API web statiche, come l'API Maps Static e l'API Street View Static, sono simili alle chiamate API dei servizi web.

Chiamerai entrambi utilizzando una semplice API REST HTTPS e in genere generi l'URL della richiesta API sul server. Tuttavia, invece di restituire una risposta JSON, le API web statiche generano un'immagine da incorporare nel codice HTML generato. Cosa più importante, è generalmente il client dell'utente finale, non il server, a chiamare il servizio Google Maps Platform.

Utilizzare una firma digitale

Come best practice, utilizza sempre le firme digitali oltre a una chiave API. Inoltre, controlla il numero di richieste non firmate che vuoi consentire al giorno e modifica le quote per le richieste non firmate di conseguenza.

Per ulteriori dettagli sulle firme digitali, consulta la Guida alla firma digitale.

Proteggi il tuo secret di firma

Per proteggere le API web statiche, non incorporare i secret di firma API direttamente nel codice o nella struttura di origine e non esporli in applicazioni lato client. Segui queste best practice per proteggere i secret di firma:

  • Firma le richieste lato server, non sul client. Se esegui la firma sul lato client in JavaScript, la esponi a chiunque visiti il tuo sito. Pertanto, per le immagini generate dinamicamente, genera sempre gli URL di richiesta dell'API Maps Statico e di Street View Static sul lato server quando pubblichi la pagina web. Per i contenuti web statici, puoi utilizzare il widget Firma un URL ora nella pagina Credenziali di Google Maps Platform della console Cloud.

  • Archivia i secret di firma al di fuori del codice sorgente e della struttura del codice sorgente dell'applicazione. Se inserisci i secret di firma o altre informazioni private nelle variabili di ambiente o includi file archiviati separatamente e poi condividi il codice, i secret di firma non vengono inclusi nei file condivisi. Se archivi secret di firma o altre informazioni private nei file, mantieni i file al di fuori della struttura di origine dell'applicazione per evitare che i secret di firma siano al di fuori del sistema di controllo del codice sorgente. Questa precauzione è particolarmente importante se utilizzi un sistema di gestione del codice sorgente pubblico, come GitHub.

Proteggi la tua chiave API nelle app che utilizzano servizi web

Archivia le chiavi API al di fuori del codice sorgente o della struttura di origine dell'applicazione. Se inserisci le chiavi API o qualsiasi altra informazione nelle variabili di ambiente o includi file archiviati separatamente e poi condividi il codice, le chiavi API non vengono incluse nei file condivisi. Questo è particolarmente importante se utilizzi un sistema di gestione del codice sorgente pubblico, come GitHub.

Proteggi la chiave API e il secret di firma nelle app mobile utilizzando i servizi web o le API web statiche

Per proteggere le app mobile, utilizza un archivio chiavi o un server proxy sicuro:

  • Archivia la chiave API o il secret di firma in un archivio chiavi sicuro. Questo passaggio rende più difficile lo scraping di chiavi API e altri dati privati direttamente dall'applicazione.

  • Utilizza un server proxy sicuro. Il server proxy fornisce una solida fonte per interagire con l'API Google Maps Platform appropriata. Per ulteriori informazioni sull'utilizzo di un server proxy, consulta Living Vicaribly: Utilizzo di server proxy con le librerie client dell'API di dati di Google.

    • Crea le tue richieste Google Maps Platform sul server proxy. Non consentire ai client di inoltrare chiamate API arbitrarie tramite il proxy.

    • Elabora le risposte di Google Maps Platform sul tuo server proxy. Escludi i dati non necessari al client.

Gestire l'uso non autorizzato di una chiave API

Se rilevi un utilizzo non autorizzato della chiave API, procedi nel seguente modo per risolvere il problema:

  1. Limitare le chiavi: se hai utilizzato la stessa chiave in più app, esegui la migrazione a più chiavi API e utilizza chiavi API distinte per ogni app. Per ulteriori dettagli, consulta:

  2. Rigenera le chiavi solo se non puoi limitarle. Leggi la sezione Fai attenzione durante la rigenerazione delle chiavi API prima di procedere.

  3. Se continui a riscontrare problemi o hai bisogno di aiuto, contatta l'assistenza.

Restrizioni consigliate per applicazioni e API

Le sezioni seguenti suggeriscono l'applicazione di restrizioni alle applicazioni e alle API per ogni API, SDK o servizio di Google Maps Platform.

Restrizioni API consigliate

Le seguenti linee guida per le restrizioni relative alle API si applicano all'intero Google Maps Platform:

  • Limita la tua chiave API solo alle API per cui la utilizzi, con le seguenti eccezioni:

    • Se la tua app utilizza Places SDK per Android o Places SDK per iOS, autorizza l'API Places.

    • Se la tua app utilizza l'API Maps JavaScript, autorizza sempre la tua chiave.

    • Se utilizzi anche uno dei seguenti servizi API Maps JavaScript, devi inoltre autorizzare le seguenti API:

    Servizio Restrizione delle API
    Servizio Directions, API Maps JavaScript API Directions
    Servizio Distance Matrix, API Maps JavaScript API Distance Matrix
    Servizio Elevation, API Maps JavaScript API Elevation
    Servizio Geocoding, API Maps JavaScript API Geocoding
    API Places Library, Maps JavaScript API Places

Ecco alcuni esempi:

  • Stai utilizzando Maps SDK for Android e l'SDK Places per Android, quindi includi Maps SDK for Android e l'API Places come restrizioni API.

  • Il tuo sito web utilizza l'API Maps JavaScript Elevation Service e l'API Maps Static, quindi aggiungi limitazioni delle API per tutte le seguenti API:

    • API Maps JavaScript
    • API Elevation
    • API Maps Static

Limitazione consigliata per le applicazioni

Siti web con API Maps JavaScript o API Static Web

Per i siti web che utilizzano i servizi Maps JavaScript o le API web statiche, utilizza la restrizione dell'applicazione Websites.

Da utilizzare per i siti web che usano i seguenti servizi e API JavaScript:

1 Per le applicazioni mobile, valuta la possibilità di utilizzare il Maps SDK for Android nativo e l'SDK Maps per iOS.

2 Vedi anche Proteggere le app mobile utilizzando i servizi web o le API web statiche.

Siti web con l'API Maps Embed

Anche se l'utilizzo dell'API Maps Embed è senza costi, devi comunque limitare le chiavi API utilizzate per evitare comportamenti illeciti in altri servizi.

Best practice: crea una chiave API separata per l'utilizzo dell'API Maps Embed e limita questa chiave solo all'API Maps Embed. Questa limitazione protegge a sufficienza la chiave, impedendone l'utilizzo non autorizzato su qualsiasi altro servizio Google.

Se non riesci a separare l'utilizzo dell'API Maps Embed con una chiave API separata, proteggi la chiave usando la restrizione dell'applicazione Websites.

App e server che utilizzano servizi web

Per le app e i server che usano servizi web, applica la restrizione delle applicazioni IP addresses.

Da utilizzare per app e server che utilizzano queste API:

3 Per le applicazioni mobile, valuta la possibilità di utilizzare l'SDK Places per Android nativo e l'SDK Places per iOS.

App Android

Per le app su Android, utilizza la limitazione delle applicazioni Android apps. Da utilizzare per app e server che usano i seguenti SDK:

Inoltre, per evitare di controllare accidentalmente le chiavi API nel controllo della versione, utilizza il plug-in Secrets Gradle per inserire i secret da un file locale anziché archiviarli nel file manifest Android.

App per iOS

Per le app su iOS, utilizza la limitazione delle applicazioni iOS apps. Da utilizzare per app e server che usano i seguenti SDK: