Utilizzo delle chiavi API con l'API Distance Matrix

I prodotti Google Maps Platform sono protetti da un utilizzo non autorizzato limitando le chiamate API a quelle che forniscono credenziali di autenticazione corrette. Queste credenziali sono sotto forma di una chiave API, una stringa alfanumerica univoca che associa il tuo account di fatturazione Google al tuo progetto e all'API o all'SDK specifici.

Questa guida mostra come creare, limitare e utilizzare la chiave API per Google Maps Platform.

Prima di iniziare

Prima di iniziare a utilizzare l'API Distance Matrix, devi disporre di un progetto con un account di fatturazione e l'API Distance Matrix abilitata. Per saperne di più, consulta Configurazione nella console Cloud.

Creazione di chiavi API

La chiave API è un identificatore univoco che autentica le richieste associate al tuo progetto a fini di utilizzo e fatturazione. Devi avere almeno una chiave API associata al tuo progetto.

Per creare una chiave API:

Console

  1. Vai alla pagina Google Maps Platform > Credenziali.

    Vai alla pagina Credenziali

  2. Nella pagina Credenziali, fai clic su Crea credenziali > Chiave API.
    La finestra di dialogo Chiave API creata mostra la chiave API appena creata.
  3. Fai clic su Chiudi.
    La nuova chiave API è elencata nella pagina Credenziali nella sezione Chiavi API.
    (Ricorda di limitare la chiave API prima di utilizzarla in produzione.)

Cloud SDK

gcloud services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Scopri di più su Google Cloud SDK , installazione di Cloud SDK e sui seguenti comandi:

Limitazione delle chiavi API

Google consiglia vivamente di limitare le chiavi API limitandone l'utilizzo solo alle API necessarie per la tua applicazione. La limitazione delle chiavi API aumenta la sicurezza della tua applicazione proteggendola da richieste ingiustificate. Sei responsabile finanziariamente degli addebiti causati dall'utilizzo illecito di chiavi API senza limitazioni. Per saperne di più, vedi Best practice per la sicurezza delle API.

Per limitare una chiave API:

Console

  1. Vai alla pagina Google Maps Platform > Credenziali.

    Vai alla pagina Credenziali

  2. Seleziona la chiave API per cui vuoi impostare una limitazione. Viene visualizzata la pagina delle proprietà della chiave API.
  3. In Restrizioni relative alle chiavi, imposta le seguenti limitazioni:
    • Restrizioni delle applicazioni:
      1. Per accettare le richieste dall'elenco di indirizzi IP del server web che fornisci, seleziona Indirizzi IP (server web, cron job ecc.) dall'elenco di Limitazioni delle applicazioni. Specifica uno o più indirizzi IPv4 o IPv6 oppure una subnet utilizzando la notazione CIDR. Gli indirizzi IP devono corrispondere all'indirizzo di origine osservato dai server di Google Maps Platform. Se utilizzi la Network Address Translation (NAT), questo in genere corrisponde all'indirizzo IP pubblico della tua macchina.
    • Restrizioni delle API:
      1. Fai clic su Limita chiave.
      2. Seleziona API Distance Matrix dal menu a discesa Seleziona API. Se l'API Distance Matrix non è elencata, devi abilitarla.
  4. Per finalizzare le modifiche, fai clic su Salva.

Cloud SDK

Elenca le chiavi esistenti.

gcloud services api-keys list --project="PROJECT"

Cancella le limitazioni esistenti sulla chiave esistente.

gcloud services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Imposta nuove limitazioni sulla chiave esistente.

gcloud services api-keys update projects/PROJECT/locations/global/keys/KEY_ID \
    --api-target=service=distance-matrix-backend.googleapis.com
    --allowed-ips="IP_ADDRESS"

Scopri di più su Google Cloud SDK , installazione di Cloud SDK e sui seguenti comandi:

Aggiungere la chiave API alla richiesta

Devi includere una chiave API in ogni richiesta dell'API Distance Matrix. Nell'esempio seguente, sostituisci YOUR_API_KEY con la tua chiave API.

https://maps.googleapis.com/maps/api/distancematrix/json?origins=Seattle&destinations=San+Francisco&key=YOUR_API_KEY

HTTPS è obbligatorio per le richieste che utilizzano una chiave API.