Google Haritalar Platformu ürünleri, API çağrılarının yalnızca uygun kimlik doğrulama kimlik bilgilerini sağlayanlar tarafından yapılmasını kısıtlayarak yetkisiz kullanıma karşı korunur. Bu kimlik bilgileri, Google faturalandırma hesabınızı projenizle ve belirli API veya SDK ile ilişkilendiren benzersiz bir alfanümerik dize olan API anahtarı biçimindedir.
Bu kılavuzda, Google Haritalar Platformu için API anahtarınızı nasıl oluşturacağınız, kısıtlayacağınız ve kullanacağınız gösterilmektedir.
Başlamadan önce
Maps JavaScript API'yi kullanmaya başlamadan önce, faturalandırma hesabı ve Maps JavaScript API'nin etkin olduğu bir projeye ihtiyacınız vardır. Daha fazla bilgi için Cloud Console'da ayarlama başlıklı makaleyi inceleyin.
API anahtarları oluşturma
API anahtarı, kullanım ve faturalandırma amacıyla projenizle ilişkili isteklerin kimliğini doğrulayan benzersiz bir tanımlayıcıdır. Projenizle ilişkilendirilmiş en az bir API anahtarınız olmalıdır.
API anahtarı oluşturmak için:
Konsol
-
Google Haritalar Platformu > Kimlik Bilgileri sayfasına gidin.
-
Kimlik bilgileri sayfasında Kimlik bilgileri oluştur > API anahtarı'nı tıklayın.
Oluşturulan API anahtarı iletişim kutusunda yeni oluşturulan API anahtarınız gösterilir. -
Kapat'ı tıklayın.
Yeni API anahtarı, Kimlik bilgileri sayfasındaki API anahtarları bölümünde listelenir.
(API anahtarını üretimde kullanmadan önce kısıtlamayı unutmayın.)
Google Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
Google Cloud SDK, Cloud SDK yükleme ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:
API anahtarlarını kısıtlama
Google, API anahtarlarınızın kullanımını yalnızca uygulamanız için gereken API'lerle sınırlandırarak kısıtlamanızı önemle tavsiye eder. API anahtarlarını kısıtlamak, uygulamanızı gereksiz isteklerden koruyarak uygulamanızın güvenliğini artırır. Daha fazla bilgi için API güvenliğiyle ilgili en iyi uygulamalar başlıklı makaleyi inceleyin.
Bir API anahtarını kısıtlamak için:
Konsol
-
Google Haritalar Platformu > Kimlik Bilgileri sayfasına gidin.
- Kısıtlama uygulamak istediğiniz API anahtarını seçin. API anahtarı mülkü sayfası görünür.
- Anahtar kısıtlamaları bölümünde aşağıdaki kısıtlamaları ayarlayın:
- Uygulama kısıtlamaları:
- Sağladığınız web siteleri listesinden gelen istekleri kabul etmek için Uygulama kısıtlamaları listesinden HTTP yönlendirenleri (web siteleri)'ni seçin.
- Bir veya daha fazla yönlendiren web sitesi belirtin. Tüm alt alan adlarını yetkilendirmek için joker karakterler kullanabilirsiniz (örneğin,
https://*.google.com
, HTTPS üzerinden erişildiğinde.google.com
ile biten tüm siteleri kabul eder). www.domain.com'u belirtmenizin, www.domain.com/* joker karakteri gibi davrandığını ve bu ana makine adındaki tüm alt yolları yetkilendirdiğini unutmayın.https://
vehttp://
yönlendiren şemalarını olduğu gibi belirtin. Diğer URL protokolleri için özel bir gösterim kullanmanız gerekir. Örneğin,file:///path/to/
değerini__file_url__//path/to/*
olarak biçimlendirin. Web sitelerini etkinleştirdikten sonra, beklentilerinizi karşıladığından emin olmak için kullanımınızı izlediğinizden emin olun. Şu protokoller desteklenir:about://
,app://
,applewebdata://
,asset://
,chrome://
,content://
,file://
,ftp://
,ionic://
,local://
,ms-appx://
,ms-appx-web://
,ms-local-stream://
,prism://
,qrc://
,res://
,saphtmlp://
. - API kısıtlamaları:
- Anahtarı kısıtla'yı tıklayın.
- API'leri seç açılır listesinden Maps JavaScript API'yi seçin. Maps JavaScript API listede yoksa etkinleştirmeniz gerekir.
- Projenizde Rehber Kitaplığı kullanılıyorsa Rehber API'yi de seçin. Benzer şekilde, projeniz JavaScript API'deki diğer hizmetleri kullanıyorsa (Directions Hizmeti, Distance Matrix Hizmeti, Elevation Hizmeti ve/veya Geocoding Hizmeti), bu listedeki ilgili API'yi de etkinleştirmeniz ve seçmeniz gerekir.
- Değişikliklerinizi tamamlamak için Kaydet'i tıklayın.
Google Cloud SDK
Mevcut anahtarları listeleyin.
gcloud services api-keys list --project="PROJECT"
Mevcut anahtardaki mevcut kısıtlamaları temizleyin.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
Mevcut anahtar için yeni kısıtlamalar belirleyin.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api-target="maps-backend.googleapis.com" --allowed-referrers="referer"
Google Cloud SDK, Cloud SDK yükleme ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:
API anahtarını isteğinize ekleme
Her Maps JavaScript API isteğine bir API anahtarı eklemeniz gerekir.
Aşağıdaki örnekte YOUR_API_KEY
değerini API anahtarınızla değiştirin.
<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>