I prodotti Google Maps Platform sono protetti dall'uso non autorizzato attraverso la limitazione delle chiamate API a quelli che forniscono le credenziali di autenticazione appropriate. Si tratta di credenziali sotto forma di Una chiave API, una stringa alfanumerica univoca che associa il tuo account di fatturazione Google al tuo progetto e con l'API o l'SDK specifici.
Questa guida illustra come creare, limitare e utilizzare la tua chiave API per Google Maps Platform.
Prima di iniziare
Prima di iniziare a utilizzare l'API Maps JavaScript, devi avere un progetto con un account di fatturazione e API Maps JavaScript attivata. Per scoprire di più, consulta l'articolo Configurazione nella console Cloud.
Creazione di chiavi API
La chiave API è un identificatore univoco che autentica le richieste associate al tuo progetto per per scopi di utilizzo e fatturazione. Devi avere almeno una chiave API associata al tuo progetto.
Per creare una chiave API:
Console
-
Vai a Google Maps Platform > Credenziali.
-
Nella pagina Credenziali, fai clic su Crea credenziali > chiave API.
Nella finestra di dialogo Chiave API creata viene visualizzata la chiave API appena creata. -
Fai clic su Chiudi.
La nuova chiave API è indicata nella pagina Credenziali, nella sezione Chiavi API.
Ricordati di limitare l'API prima di utilizzarla in produzione).
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
Scopri di più sugli SDK Google Cloud , Installazione di Cloud SDK e i seguenti comandi:
Limita chiavi API
Google consiglia vivamente di limitare le chiavi API limitandone l'utilizzo alle sole chiavi le API necessarie per la tua applicazione. La limitazione delle chiavi API rafforza la sicurezza dell'applicazione per proteggerlo da richieste ingiustificate. Per ulteriori informazioni, vedi Best practice per la sicurezza delle API.
Per limitare una chiave API:
Console
-
Vai a Google Maps Platform > Credenziali.
- Seleziona la chiave API per la quale vuoi impostare una limitazione. Viene visualizzata la pagina delle proprietà della chiave API.
- In Limitazioni delle chiavi, imposta le seguenti restrizioni:
- Restrizioni delle applicazioni:
- Per accettare le richieste dall'elenco di siti web da te forniti, seleziona HTTP referer (siti web) dall'elenco App limitazioni.
- Specifica uno o più siti web referrer. Puoi utilizzare il carattere jolly
per autorizzare tutti i sottodomini (ad esempio,
https://*.google.com
accetta tutti i siti che terminano con.google.com
se si accede tramite HTTPS). Tieni presente che se specifichi www.dominio.com, funge da carattere jolly www.dominio.com/* e autorizza tutti i percorsi secondari di quel nome host. Specifica gli schemi di referrerhttps://
ehttp://
così come sono. Per altri protocolli URL, è necessario utilizzare una rappresentazione speciale. Per ad esempio, formattafile:///path/to/
come__file_url__//path/to/*
. Dopo aver attivato i siti web, monitora l'utilizzo per verificare corrisponda alle tue aspettative. Sono supportati i seguenti protocolli:about://
,app://
,applewebdata://
asset://
,chrome://
,content://
file://
,ftp://
,ionic://
local://
,ms-appx://
,ms-appx-web://
,ms-local-stream://
,prism://
,qrc://
,res://
,saphtmlp://
. - Restrizioni delle API:
- Fai clic su Limita chiave.
- Seleziona API Maps JavaScript dal menu a discesa Seleziona API. Se l'API Maps JavaScript non è in elenco, devi attivala.
- Se il progetto utilizza la libreria di Places, seleziona anche API Places. Analogamente, se il progetto utilizza altri servizi nell'API JavaScript (Servizio indicazioni stradali, Servizio di matrice delle distanze, Servizio di elevazione e/o servizio di geocodifica), devi anche abilitare e selezionare l'API corrispondente in questo elenco.
- 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 per la chiave esistente.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
Imposta nuove limitazioni per la chiave esistente.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api-target="maps-backend.googleapis.com" --allowed-referrers="referer"
Scopri di più sugli SDK Google Cloud , Installazione di Cloud SDK e i seguenti comandi:
Aggiungi la chiave API alla richiesta
Devi includere una chiave API in ogni richiesta API Maps JavaScript.
Nell'esempio seguente, sostituisci YOUR_API_KEY
con il tuo
chiave API.
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "weekly", // Use the 'v' parameter to indicate the version to use (weekly, beta, alpha, etc.). // Add other bootstrap parameters as needed, using camel case. }); </script>