Google Haritalar Platformu API'lerini ve SDK'larını kullanan uygulamalar ve projeler için yetkisiz kullanımı ve ücretleri önlemek amacıyla API anahtarları veya destekleniyorsa OAuth kullanmanız gerekir. API anahtarları kullanıyorsanız maksimum güvenlik için API anahtarlarınızı oluştururken kısıtlayabilirsiniz. Bu en iyi uygulamalar, bunların nasıl kısıtlanacağını gösterir.
Uygulama ve API anahtarı kısıtlamalarının yanı sıra belirli Google Haritalar Platformu ürünleri için geçerli olan tüm güvenlik uygulamalarını izleyin. Örneğin, aşağıdaki Önerilen uygulama ve API kısıtlamaları bölümünde Maps JavaScript API'ye bakın.
API anahtarlarınız zaten kullanılıyorsa aşağıdaki Kullanımda olan bir API anahtarını kısıtlıyor veya yeniden oluşturuyorsanız bölümündeki önerileri inceleyin.
Dijital imzalar hakkında daha fazla bilgi için Dijital İmza Kılavuzu'na bakın.
Önerilen en iyi uygulamalar
Daha fazla güvenlik için ve yetkisiz kullanım nedeniyle faturalandırılmamak üzere tüm Google Haritalar Platformu API'leri, SDK'ları veya hizmetlerinde API güvenliğiyle ilgili en iyi uygulamaları izleyin:
Tüm API anahtarı kullanımları için önerilir
Her uygulama için ayrı API anahtarları kullanma
Kullanılmayan API anahtarlarını silme
API anahtarı kullanımınızı kontrol etme
API anahtarlarını yeniden oluştururken dikkatli olun
Static Web API'lerini kullanan web siteleri için ek öneriler
Uygulamaları Statik Web API'lerini kullanarak koruma
Web hizmetlerini kullanan uygulamalar için ek öneriler
Web hizmetlerini kullanarak uygulamaları koruma
iOS ve Android mobil uygulamaları için ek öneriler
Web Hizmeti veya Statik Web API'lerini kullanarak mobil uygulamaları koruma
Kullanımdaki bir API anahtarını kısıtlıyor veya yeniden oluşturuyorsanız
API anahtarını değiştirmeden önce API anahtarı kullanımınızı kontrol edin Bu adım özellikle anahtar kullanıldıktan sonra kısıtlamalar ekliyorsanız önemlidir.
Anahtarı değiştirdikten sonra, tüm uygulamalarınızı gerektiğinde yeni API anahtarlarıyla güncelleyin.
API anahtarınızın aktif olarak kötüye kullanımı yoksa uygulamalarınızı kendi hızınıza göre birden fazla yeni API anahtarına taşıyabilirsiniz. Bu durumda, tek bir trafik türü görene kadar orijinal API anahtarına dokunulmaz. Daha sonra, API anahtarlarını uygulama kısıtlamasıyla kısıtlayabilirsiniz. Daha fazla talimat için Birden fazla API anahtarına geçiş bölümüne bakın.
Eski anahtarı kısıtlamayı veya silmeyi seçmeden önce zaman içindeki kullanımı izleyin ve belirli API'lerin, platform türlerinin ve alanların eski API anahtarından ne zaman taşındığını görün. Daha fazla bilgi için Raporlama ve izleme ile Metrikler bölümlerine bakın.
API anahtarınızın güvenliği ihlal edilmişse API anahtarınızı güvence altına almak ve kötüye kullanımı durdurmak için daha hızlı hareket etmeniz gerekir. Android ve iOS uygulamalarında, müşteriler uygulamalarını güncelleyene kadar anahtarlar değiştirilmez. JavaScript'te veya web hizmeti uygulamalarında anahtarları güncellemek veya değiştirmek çok daha basittir ancak yine de dikkatli bir planlama ve hızlı çalışma gerektirebilir.
Daha fazla bilgi için API anahtarı kullanımını yetkisiz şekilde ele alma bölümüne bakın.
API anahtarlarınızı kısıtlama
En iyi uygulama, API anahtarlarınızı her zaman bir uygulama kısıtlaması ve bir veya daha fazla API kısıtlaması ile kısıtlamaktır. API, SDK veya JavaScript hizmeti tarafından önerilen kısıtlamalar için aşağıdaki Önerilen uygulama ve API kısıtlamaları bölümüne bakın.
Uygulama kısıtlaması API anahtarının kullanımını belirli platformlarla sınırlandırabilirsiniz: Android veya iOS uygulamaları, istemci tarafı uygulamalar için belirli web siteleri veya web hizmeti REST API çağrıları yayınlayan sunucu tarafı uygulamalar için belirli IP adresleri ya da CIDR alt ağları.
Bir anahtarı, yetkilendirmek istediğiniz türlerde bir veya daha fazla uygulama kısıtlaması ekleyerek kısıtlarsınız. Sonrasında yalnızca bu kaynaklardan gelen isteklere izin verilir.
API kısıtlamaları API anahtarınızın kullanılabileceği Google Haritalar Platformu API'lerini, SDK'larını veya hizmetlerini kısıtlayabilirsiniz. API kısıtlamaları yalnızca belirttiğiniz API ve SDK'lara yapılan isteklere izin verir. Herhangi bir API anahtarı için gerektiği kadar API kısıtlaması belirtebilirsiniz. Kullanılabilir API'lerin listesi, bir projede etkinleştirilen tüm API'leri içerir.
Bir API anahtarı için uygulama kısıtlaması ayarlama
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Kısıtlamak istediğiniz API anahtarını seçin.
API anahtarını düzenleme sayfasında, Anahtar kısıtlamalar bölümünde Uygulama kısıtlaması ayarla'yı seçin.
Kısıtlama türlerinden birini seçin ve kısıtlama listesinin ardından istenen bilgileri sağlayın.
Kısıtlama türü Açıklama Web Siteleri Bir veya daha fazla yönlendiren web sitesi belirtin. - Evrensel olarak desteklenen yönlendiren URI şemaları
https
vehttp
'dir. - Protokol şeması, ana makine adı ve isteğe bağlı bağlantı noktası (ör.
https://google.com
). - Tüm alt alan adlarını yetkilendirmek için joker karakterler kullanabilirsiniz. Örneğin
https://*.google.com
,.google.com
ile biten tüm siteleri kabul eder. www.alan.com adresini belirtirseniz www.alan.com/* joker karakteri olarak işlev görür ve bu ana makine adındaki tüm alt yolları yetkilendirir. - En güncel tarayıcılar varsayılan olarak çapraz kaynak isteklerinden yolu çıkardığından, tam yol yönlendirenlerini (ör.
https://google.com/some/path
) yetkilendirirken dikkatli olun.
IP adresleri CIDR gösterimini kullanarak bir veya daha fazla IPv4 veya IPv6 adresi ya da alt ağ belirtin. IP adresleri, Google Haritalar Platformu sunucularının gözlemlediği kaynak adresle eşleşmelidir. Ağ adresi çevirisi (NAT) kullanıyorsanız bu adres genellikle makinenizin genel IP adresine karşılık gelir. Android uygulamaları Android paket adını ( AndroidManifest.xml
dosyasından) ve yetkilendirmek istediğiniz her Android uygulamasının SHA-1 imzalama sertifikası parmak izini ekleyin. Play Uygulama İmzalama'yı kullanıyorsanız imzalama sertifikası parmak izini getirmek için API Sağlayıcılarla Çalışma bölümüne bakın. Kendi imzalama anahtarınızı yönetiyorsanız Uygulamanızı kendi kendine imzalama konusuna bakın veya derleme ortamınızın talimatlarına bakın.iOS uygulamaları Yetkilendirmek istediğiniz her iOS uygulamasının paket tanımlayıcısını ekleyin. Uygulama kısıtlaması önerileri için Önerilen uygulama kısıtlaması sayfasını inceleyin.
- Evrensel olarak desteklenen yönlendiren URI şemaları
Kaydet'i seçin.
Bir API anahtarı için API kısıtlamaları ayarlama
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Kısıtlamak istediğiniz API anahtarını seçin.
API anahtarını Düzenle sayfasında, API kısıtlamaları altında:
Anahtarı kısıtla'yı seçin.
Select APIs'i (API'leri seç) açın ve uygulamanızın API anahtarını kullanarak erişmesini istediğiniz API'leri veya SDK'ları seçin.
Listede olmayan API veya SDK'ları etkinleştirmeniz gerekir. Ayrıntılar için Bir veya daha fazla API'yi ya da SDK'yı etkinleştirme bölümüne bakın.
Kaydet'i seçin.
Bu adımdan sonra kısıtlama, API anahtarı tanımının bir parçası haline gelir. Uygun ayrıntıları sağladığınızdan emin olun ve API anahtarı kısıtlamalarınızı kaydetmek için Kaydet'i seçin. Daha fazla bilgi için ilgilendiğiniz API veya SDK belgelerindeki API Anahtarı Alma kılavuzuna bakın.
Önerilen API kısıtlamaları için Önerilen API Kısıtlamaları bölümüne bakın.
API anahtarı kullanımınızı kontrol etme
API anahtarlarını oluşturulduktan sonra kısıtlarsanız veya kısıtlayabilmek için bir anahtarın hangi API'leri kullandığını görmek isterseniz API anahtarı kullanımınızı kontrol edebilirsiniz. Bu adımlar, bir API anahtarının hangi hizmetlerde ve API yöntemlerinde kullanıldığını gösterir. Google Haritalar Platformu hizmetleri dışında herhangi bir kullanım görürseniz istenmeyen kullanımı önlemek için daha fazla kısıtlama eklemeniz gerekip gerekmediğini belirlemek amacıyla araştırma yapın. API anahtarınıza hangi API ve uygulama kısıtlamalarının uygulanacağını belirlemenize yardımcı olması için Google Haritalar Platformu Cloud Console Metrikleri gezginini kullanabilirsiniz:
API anahtarınızı kullanan API'leri belirleme
Aşağıdaki metrik raporları, API anahtarlarınızı hangi API'lerin kullandığını belirlemenize olanak tanır. Bu raporları kullanarak aşağıdakileri yapabilirsiniz:
- API anahtarlarınızın nasıl kullanıldığını görün
- Beklenmeyen kullanımı tespit etme
- Kullanılmayan anahtarın silinmesinin güvenli olup olmadığını doğrulamaya yardımcı olun. API anahtarını silme hakkında bilgi için Kullanılmayan API anahtarlarını silme bölümüne bakın.
API kısıtlamalarını uygularken, yetkilendirilecek API'lerin listesini oluşturmak veya otomatik olarak oluşturulan API anahtarı kısıtlama önerilerini doğrulamak için bu raporları kullanın. Önerilen kısıtlamalar hakkında daha fazla bilgi için Önerilen kısıtlamaları uygulama bölümüne bakın. Metrik gezginini kullanma hakkında daha fazla bilgi için Metrik gezginiyle grafik oluşturma bölümüne bakın.
Google Cloud Console'da Metrik gezgini'ne gidin.
Giriş yapın ve kontrol etmek istediğiniz API anahtarları için projeyi seçin.
API türünüz için Metrik gezgini sayfasına gidin:
Haritalar Yerleştirme API'si hariç herhangi bir API kullanan API anahtarları için: Metrik gezgini sayfasına gidin.
Haritalar Embed API'yi kullanan API anahtarları için: Metrik Gezgini'ne gidin.
Her API anahtarını inceleyin:
FİLTRE EKLE'yi seçin.
credential_id
etiketini seçin.İncelemek istediğiniz anahtara karşılık gelen değeri seçin.
Bu API anahtarının hangi API'ler için kullanıldığını not edin ve kullanımın beklendiğini onaylayın.
Bittiğinde ekstra filtreyi silmek için etkin filtre satırının sonundaki Filtreyi kaldır'ı
tıklayın.
Kalan tuşlar için de aynı işlemi tekrarlayın.
API anahtarlarınızı yalnızca kullanılan API'lerle kısıtlayın.
Yetkisiz kullanım tespit ederseniz API anahtarının yetkisiz kullanımını ele alma bölümüne bakın.
Metrik gezginini kullanarak doğru uygulama kısıtlaması türünü seçme
API anahtarınızın yalnızca kullandığı Google Haritalar Platformu hizmetleri için kullanıldığından emin olmak için doğrulama yapıp gerekli işlemleri yaptıktan sonra, API anahtarında doğru uygulama kısıtlamalarının bulunduğundan da emin olun.
API anahtarınızda önerilen API anahtarı kısıtlamaları varsa bunları uygulayın. Daha fazla bilgi için Önerilen API anahtarı kısıtlamalarını uygulama bölümüne bakın.
API anahtarınızda kısıtlama önerisi yoksa Metrik gezginini kullanarak raporlanan platform_type
değerine göre uygulanacak uygulama kısıtlamasının türünü belirleyin:
Google Cloud Console'da Metrik gezgini'ne gidin.
Giriş yapın ve kontrol etmek istediğiniz API'ler için projeyi seçin.
Bu Metrik gezgini sayfasına gidin: Metrik gezgini.
Her API anahtarını inceleyin:
FİLTRE EKLE'yi seçin.
credential_id
etiketini seçin.İncelemek istediğiniz anahtara karşılık gelen değeri seçin.
Bittiğinde ekstra filtreyi silmek için etkin filtre satırının sonundaki Filtreyi kaldır'ı
tıklayın.
Kalan tuşlar için de aynı işlemi tekrarlayın.
API anahtarlarınızın platform türünü belirledikten sonra bu
platform_type
için uygulama kısıtlamasını uygulayın:PLATFORM_TYPE_JS
- Anahtara web sitesi kısıtlamaları uygulama.
PLATFORM_TYPE_ANDROID
- Anahtara Android uygulama kısıtlamaları uygulayın.
PLATFORM_TYPE_IOS
- Anahtara iOS uygulama kısıtlamaları uygulayın.
PLATFORM_TYPE_WEBSERVICE
- Anahtarı doğru şekilde kısıtlamak için anahtarda IP adresi kısıtlamalarına güvenmeniz gerekebilir. Maps Static API ve Street View Static API ile ilgili diğer seçenekler için Statik Web API'lerini kullanarak uygulamaları koruma bölümüne bakın. Maps Embed API ile ilgili diğer talimatlar için Haritalar Embed API'nin bulunduğu web siteleri.
- API anahtarım birden fazla platform türü kullanıyor
- Trafiğiniz tek bir API anahtarıyla düzgün bir şekilde korunamaz. Birden fazla API anahtarına geçiş yapmanız gerekiyor. Daha fazla bilgi için Birden çok API anahtarına taşıma bölümüne bakın.
Her uygulama için ayrı API anahtarları kullanın
Bu uygulama her anahtarın kapsamını sınırlar. Bir API anahtarının güvenliği ihlal edilirse diğer API anahtarlarınızı güncellemenize gerek kalmadan etkilenen anahtarı silebilir veya yeniden oluşturabilirsiniz. Proje başına en fazla 300 API anahtarı oluşturabilirsiniz. Daha fazla bilgi için API anahtarlarıyla ilgili sınırlar bölümüne bakın.
Uygulama başına bir API anahtarı güvenlik amacıyla ideal olsa da aynı tür uygulama kısıtlaması olduğu sürece kısıtlanmış anahtarları birden fazla uygulamada kullanabilirsiniz.
Önerilen API anahtarı kısıtlamalarını uygula
Google Cloud Console, bazı proje sahipleri ve düzenleyicilerine, Google Haritalar Platformu kullanım ve etkinliklerine göre kısıtlanmamış API anahtarları için belirli API anahtarı kısıtlamaları önerir.
Varsa öneriler, Google Haritalar Platformu Kimlik Bilgileri sayfasında önceden doldurulmuş seçenekler olarak görünür.
Öneri veya eksik öneri görememenizin nedenleri
API anahtarını Google Haritalar Platformu hizmetleri dışında başka hizmetlerde de kullanıyorsunuzdur. Diğer hizmetlerde kullanım görürseniz önce aşağıdakileri yapmadan öneriyi uygulamayın:
Google Cloud Console Metrik gezgininde gördüğünüz API kullanımının geçerli olduğunu doğrulayın.
Eksik hizmetleri, yetkilendirilecek API'ler listesine manuel olarak ekleyin.
API listesine eklenen hizmetler için eksik uygulama kısıtlamalarını manuel olarak ekleyin. Eklediğiniz diğer öğeler farklı türde uygulama kısıtlamaları gerektiriyorsa Birden fazla API anahtarına taşıma bölümüne bakın.
API anahtarınız, istemci tarafı SDK'larda veya API'lerde kullanılmaz.
API anahtarını, son 60 gün içinde kullanılmamış düşük hacimli bir uygulama veya web sitesinde kullanıyorsanız.
Çok kısa süre önce yeni bir anahtar oluşturdunuz veya kısa süre önce mevcut bir anahtarı yeni bir uygulamada dağıttınız. Bu durumda önerilerin güncellenmesi için birkaç gün daha beklemeniz yeterlidir.
API anahtarını, çakışan türde uygulama kısıtlamaları gerektiren birden fazla uygulamada kullanıyorsunuz veya aynı API anahtarını çok sayıda farklı uygulamada ya da web sitesinde kullanıyorsunuz. Her iki durumda da, en iyi uygulama olarak birden fazla anahtara geçiş yapmanız gerekir. Daha fazla bilgi için Birden çok API anahtarına taşıma bölümüne bakın.
Grafiklerde görünmeyen öneriler görmenizin nedenleri
Uygulamanız veya web siteniz yalnızca çok kısa trafik patlamaları gönderdi. Bu durumda, kullanım hâlâ açıklamada görüneceği için GRAFİK görünümünden TABLO'yu veya BOTH'u görüntülemek üzere geçiş yapın. Daha fazla bilgi için Grafiğin tüm göstergelerini açma/kapatma konusuna bakın.
Trafiğiniz Maps Embed API'den gelir. Talimatlar için API anahtarınızı kullanan API'leri belirleme bölümüne bakın.
Uygulamadan veya web sitesinden gelen trafik, Google Cloud Console Metrik gezgininde bulunan tarih aralığının dışında.
Önerilen kısıtlamaları uygulamak için
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Varsa Önerilen kısıtlamaları uygula'yı seçin.
Not: Önerilen kısıtlama görmüyorsanız uygun kısıtlamaları ayarlamak için API anahtarı için API kısıtlamaları ayarlama bölümüne bakın.
API anahtarının hangi hizmetlerde kullanıldığını doğrulamak için API kullanımını kontrol et'i seçin. Google Haritalar Platformu hizmetleri dışında hizmetler görüyorsanız yukarıdaki öneri adımlarını manuel olarak incelemek için duraklatın. Önerilen API anahtarı kısıtlamalarını uygulama bölümünün başındaki sorun giderme adımlarına bakın.
Önceden doldurulmuş kısıtlamaların, API anahtarınızı kullanmayı beklediğiniz web siteleri ve uygulamalarla eşleştiğinden emin olun.
En İyi Uygulama: Hizmetlerinizle ilişkili olmayan tüm uygulama veya API kısıtlamalarını belgeleyip kaldırın. Beklenmedik bir bağımlılık nedeniyle bir şey bozulursa gerekli uygulamaları veya API'leri tekrar ekleyebilirsiniz.
Önerinizde bir uygulama, web sitesi veya API'nin açıkça eksik olduğunu fark ederseniz bunu manuel olarak ekleyin ya da önerinin güncellenmesi için birkaç gün bekleyin.
Önerdiğiniz öneriyle ilgili daha fazla yardıma ihtiyacınız olursa destek ekibiyle iletişime geçin.
Uygula'yı seçin.
Öneri uygulandıktan sonra başvurunuz reddedilirse ne yapmalısınız?
Bir uygulamanın veya web sitesinin kısıtlama uygulandıktan sonra reddedildiğini fark ederseniz API yanıtı hata mesajına eklemeniz gereken uygulama kısıtlamasını arayın.
İstemci tarafı SDK'lar için aşağıya bakın:
- Haritalar JavaScript API uygulamaları: Tarayıcı hata ayıklama konsolunu görün
- Android uygulamaları: Android Debug Bridge (adb) veya Logcat'i kullanın
- iOS uygulamaları: Günlük Mesajlarını Görüntüleme konusuna bakın
Gerekli API kısıtlamalarınızı kontrol etmek için API anahtarınızı kullanan API'leri belirleme bölümüne bakın.
Hangi kısıtlamaların uygulanacağını belirleyemiyorsanız:
- Gelecekte referans olması için mevcut kısıtlamaları belgeleyin.
- Sorunu araştırırken bunları geçici olarak kaldırın. API anahtarı kullanımınızı kontrol etme bölümündeki adımları uygulayarak zaman içindeki kullanımınızı kontrol edebilirsiniz.
- Gerekirse destek ekibiyle iletişime geçin.
Kullanılmayan API anahtarlarını sil
Bir API anahtarını silmeden önce, anahtarın üretimde kullanılmadığından emin olun. Başarılı trafik yoksa anahtar büyük olasılıkla güvenle silinebilir. Daha fazla bilgi için API anahtarı kullanımınızı kontrol etme bölümüne bakın.
Bir API anahtarını silmek için:
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Silmek istediğiniz API anahtarını seçin.
Sayfanın üst kısmındaki Sil düğmesini seçin.
Kimlik bilgisini sil sayfasında Sil'i seçin.
API anahtarının silinmesi birkaç dakika sürer. Yayılım tamamlandıktan sonra, silinen API anahtarını kullanan tüm trafik reddedilir.
API anahtarlarınızı yeniden oluştururken dikkatli olun
Bir API anahtarının yeniden oluşturulması, eski anahtarın tüm kısıtlamalarına sahip yeni bir anahtar oluşturur. Bu işlem ayrıca 24 saatlik bir zamanlayıcı başlatır, ardından eski API anahtarı silinir.
Bu süre zarfında hem eski hem de yeni anahtar kabul edilir. Bu sayede uygulamalarınızı yeni anahtarı kullanacak şekilde taşıyabilirsiniz. Ancak bu süre geçtikten sonra, eski API anahtarını kullanmaya devam eden uygulamalar çalışmayı durdurur.
API anahtarını yeniden oluşturmadan önce:
Öncelikle, API anahtarlarınızı API anahtarlarınızı kısıtlama bölümünde açıklandığı gibi kısıtlamayı deneyin.
Çakışan uygulama kısıtlama türleri nedeniyle API anahtarınızı kısıtlamak mümkün değilse Birden fazla API anahtarına taşıma bölümünde açıklandığı gibi birden çok yeni (kısıtlanmış) anahtara geçiş yapın. Taşıma işlemi, yeni API anahtarlarına taşıma ve geçiş zaman çizelgesini kontrol etmenize olanak tanır.
Önceki öneriler mümkün değilse ve yetkisiz kullanımı önlemek için API anahtarınızı yeniden oluşturmanız gerekiyorsa şu adımları uygulayın:
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Yeniden oluşturmak istediğiniz API anahtarını açın.
Sayfanın üst kısmından Anahtarı yeniden oluştur'u seçin.
Anahtarı değiştir'i seçin.
Not: Gerekirse önceki sürümünde yeniden oluşturulan anahtarları geri alabilirsiniz. Geri alma için herhangi bir süre sınırı yoktur.
Yeniden oluşturulan bir anahtarı geri çekmek için
Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.
Geri almak istediğiniz API anahtarını açın.
Önceki anahtara geri dön'ü seçin.
Geri al iletişim kutusunda Anahtarı geri al'ı seçin.
Geri alma yapıldığında anahtarın önceki "yeni" sürümü, önceki sürüm olur ve bunun için 24 saatlik yeni bir devre dışı bırakma zamanlayıcısı ayarlanır. Anahtarı tekrar oluşturana kadar bu iki anahtar değeri arasında geçiş yapabilirsiniz.
Anahtarı tekrar oluşturursanız eski etkin olmayan anahtar değerinin üzerine yazılır.
Birden fazla API anahtarına taşıma
Birden fazla uygulamada tek bir API anahtarı kullanmaktan her uygulamada tek bir benzersiz API anahtarına geçiş yapmak için aşağıdakileri yapın:
Hangi uygulamaların yeni anahtara ihtiyacı olduğunu belirleyin:
- Kodun tamamını siz kontrol ettiğiniz için web uygulamaları en kolay güncellenir. Web tabanlı uygulamalarınızın tüm anahtarlarını güncellemeyi planlayın.
- Yeni anahtarların kullanılabilmesi için müşterilerinizin uygulamalarını güncellemeleri gerektiğinden mobil uygulamalar çok daha zordur.
Yeni anahtarlar oluşturma ve kısıtlama: Hem uygulama kısıtlaması hem de en az bir API kısıtlaması ekleyin. Daha fazla bilgi için Önerilen en iyi uygulamalar bölümüne bakın.
Uygulamalarınıza yeni anahtarlar ekleme: Mobil uygulamalarda bu işlem, tüm kullanıcılarınız yeni API anahtarını kullanarak en son uygulamaya güncelleme yapmak için birkaç ay sürebilir.
Statik Web API'lerini kullanarak uygulamaları koruma
Maps Static API ve Street View Static API gibi statik Web API'leri, web hizmeti API çağrılarına benzer.
Her ikisini de basit bir HTTPS REST API kullanarak çağırırsınız ve genellikle API istek URL'sini sunucuda oluşturursunuz. Ancak Statik Web API'leri bir JSON yanıtı döndürmek yerine, oluşturulan HTML koduna yerleştirebileceğiniz bir resim oluşturur. Daha da önemlisi, Google Haritalar Platformu hizmetini çağıran sunucu değil, genellikle son kullanıcı istemcisidir.
Dijital imza kullanma
En iyi uygulama olarak her zaman API anahtarına ek olarak dijital imzalar kullanın. Ayrıca, günlük olarak izin vermek istediğiniz imzalanmamış istek sayısını inceleyin ve imzasız istek kotalarınızı buna göre ayarlayın.
Dijital imzalar hakkında daha fazla bilgi için Dijital İmza Kılavuzu'na bakın.
İmzalama gizli anahtarınızı koruyun
Statik Web API'lerini korumak için API imzalama gizli anahtarlarınızı doğrudan koda veya kaynak ağacına yerleştirmeyin ya da istemci tarafı uygulamalarda açığa çıkarmayın. İmzalama gizli anahtarlarınızı korumak için şu en iyi uygulamaları izleyin:
İsteklerinizi istemcide değil, sunucu tarafında imzalayın. İmzalama istemci tarafını JavaScript'te yaparsanız bunu sitenizi ziyaret eden herkese açık hale getirirsiniz. Bu nedenle, dinamik olarak oluşturulan resimler için web sayfasını sunarken her zaman imzalı Maps Static API ve Street View Static API istek URL'lerinizi sunucu tarafında oluşturun. Statik web içeriği için Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasındaki Şimdi URL imzalayın widget'ını kullanabilirsiniz.
İmzalama gizli anahtarlarını uygulamanızın kaynak kodunun ve kaynak ağacının dışında saklayın. İmzalama gizli anahtarlarınızı veya başka özel bilgileri ortam değişkenlerine ya da ayrı olarak depolanan dosyaları dahil edip daha sonra kodunuzu paylaşırsanız imzalama gizli anahtarları paylaşılan dosyalara dahil edilmez. Dosyalarda imzalama gizli anahtarları veya başka gizli bilgiler depoluyorsanız imzalama gizli anahtarlarınızı kaynak kodu kontrol sisteminizin dışında tutmak için dosyaları uygulamanızın kaynak ağacının dışında tutun. Bu önlem, GitHub gibi herkese açık bir kaynak kodu yönetim sistemi kullanıyorsanız özellikle önemlidir.
Web hizmetlerini kullanan uygulamalarda API anahtarınızı koruma
API anahtarlarını uygulamanızın kaynak kodu veya kaynak ağacının dışında depolayın. API anahtarlarınızı veya diğer bilgileri ortam değişkenlerine koyar ya da ayrı olarak depolanan dosyaları dahil edip kodunuzu paylaşırsanız API anahtarları paylaşılan dosyalara dahil edilmez. Bu, GitHub gibi herkese açık bir kaynak kodu yönetim sistemi kullanıyorsanız özellikle önemlidir.
Web hizmetlerini veya Statik Web API'lerini kullanarak mobil uygulamalardaki API anahtarınızı ve imzalama gizli anahtarınızı koruyun
Mobil uygulamaları korumak için güvenli bir anahtar deposu veya güvenli proxy sunucusu kullanın:
API anahtarını veya imzalama gizli anahtarını güvenli bir anahtar deposunda depolayın. Bu adım, API anahtarlarını ve diğer özel verileri doğrudan uygulama üzerinden kazımayı zorlaştırır.
Güvenli bir proxy sunucusu kullanın. Proxy sunucu, uygun Google Haritalar Platformu API'si ile etkileşim için sağlam bir kaynak sağlar. Proxy sunucu kullanma hakkında daha fazla bilgi için Hayatı Kolaylaştırma: Google Veri API'si İstemci Kitaplıklarıyla Proxy Sunucuları Kullanma bölümüne bakın.
Proxy sunucuda Google Haritalar Platformu isteklerinizi oluşturun. İstemcilerin, proxy üzerinden rastgele API çağrıları aktarmasına izin vermeyin.
Google Haritalar Platformu yanıtlarını proxy sunucunuzda sonradan işleyin. İstemcinin ihtiyaç duymadığı verileri filtreleyin.
API anahtarının yetkisiz kullanımını ele alma
API anahtarınızın yetkisiz bir şekilde kullanıldığını tespit ederseniz sorunu çözmek için aşağıdakileri yapın:
Anahtarlarınızı kısıtlayın: Aynı anahtarı birden fazla uygulamada kullandıysanız birden fazla API anahtarına geçiş yapın ve her uygulama için ayrı API anahtarları kullanın. Daha fazla bilgi için şu bölümlere bakın:
Yalnızca onları kısıtlayamıyorsanız yeniden oluşturun. Devam etmeden önce API anahtarlarını yeniden oluştururken dikkatli olun bölümünü okuyun.
Hâlâ sorun yaşıyorsanız veya yardıma ihtiyacınız varsa destek ekibiyle iletişime geçin.
Önerilen uygulama ve API kısıtlamaları
Aşağıdaki bölümlerde, her bir Google Haritalar Platformu API'si, SDK'sı veya hizmeti için uygun uygulama ve API kısıtlamaları gösterilmektedir.
Önerilen API Kısıtlamaları
API kısıtlamalarıyla ilgili aşağıdaki yönergeler, Google Haritalar Platformu'nun tamamı için geçerlidir:
Aşağıdaki istisnalar haricinde, API anahtarınızı yalnızca kullandığınız API'lerle kısıtlayın:
Uygulamanız Android için Yerler SDK'sını veya iOS için Yerler SDK'sını kullanıyorsa Places API'yi yetkilendirin.
Uygulamanız Maps JavaScript API'yi kullanıyorsa bu API'yi anahtarınızda her zaman yetkilendirin.
Aşağıdaki Maps JavaScript API hizmetlerinden herhangi birini de kullanıyorsanız aşağıdaki API'leri de yetkilendirmeniz gerekir:
Hizmet API kısıtlaması Directions Hizmeti, Maps JavaScript API Directions API Distance Matrix Hizmeti, Maps JavaScript API Distance Matrix API Elevation Hizmeti, Maps JavaScript API Elevation API Geocoding Hizmeti, Maps JavaScript API Geocoding API Yerler Kitaplığı, Maps JavaScript API Places API
Bazı örnekler:
Android için Haritalar SDK'sını ve Android için Yerler SDK'sını kullandığınız için Android için Haritalar SDK'sını ve Places API'yi API kısıtlamaları olarak eklersiniz.
Web siteniz Maps JavaScript API Elevation Service'i ve Maps Static API'yi kullandığından aşağıdaki API'lerin tümü için API kısıtlamaları eklersiniz:
- Maps JavaScript API
- Elevation API
- Maps Static API
Önerilen uygulama kısıtlaması
Maps JavaScript API veya Static Web API içeren web siteleri
Maps JavaScript hizmetlerini veya Static Web API'lerini kullanan web siteleri için Websites
uygulama kısıtlamasını kullanın.
Şu JavaScript hizmetlerini ve API'larını kullanan web siteleri için kullanın:
1 Mobil uygulamalarda, yerel Android için Haritalar SDK'sını ve iOS için Haritalar SDK'sını kullanabilirsiniz.
2 Web hizmetini veya Statik Web API'lerini kullanarak mobil uygulamaları koruma bölümüne de bakın.
Maps Embed API bulunan web siteleri
Maps Embed API'nin kullanımı ücretsiz olsa da diğer hizmetlerin kötüye kullanımını engellemek için kullanılan tüm API anahtarlarını kısıtlamanız gerekir.
En iyi uygulama: Maps Embed API için ayrı bir API anahtarı oluşturun ve bu anahtarı yalnızca Maps Embed API ile kısıtlayın. Bu kısıtlama, anahtarı yeterince güvenli hale getirerek diğer Google hizmetlerinde yetkisiz kullanımını önler.
Maps Embed API kullanımınızı ayrı bir API anahtarına ayıramıyorsanız Websites
uygulama kısıtlamasını kullanarak anahtarınızı güvenli hale getirin.
Web hizmetlerini kullanan uygulamalar ve sunucular
Web hizmetlerini kullanan uygulamalar ve sunucular için IP addresses
uygulama kısıtlamasını kullanın.
Şu API'leri kullanan uygulamalar ve sunucular için kullanın:
3 Mobil uygulamalarda Android için Yerler SDK'sını ve iOS için Yerler SDK'sını kullanabilirsiniz.
Android uygulamaları
Android'deki uygulamalar için Android apps
uygulama kısıtlamasını kullanın.
Şu SDK'ları kullanan uygulamalar ve sunucular için kullanın:
Ayrıca, gizli anahtarları Android Manifest'te depolamak yerine yerel bir dosyadan eklemek için Secrets Gradle Eklentisi'ni kullanarak API anahtarlarının sürüm kontrolüne yanlışlıkla kontrol edilmesini önleyin.
iOS uygulamaları
iOS'teki uygulamalar için iOS apps
uygulama kısıtlamasını kullanın.
Şu SDK'ları kullanan uygulamalar ve sunucular için kullanın:
İlgili Bilgiler
- Google Haritalar Platformu kullanımınızı kotalarla optimize etme (video)
- Google Haritalar Platformu için API anahtarları oluşturma ve kısıtlama (video)
- API anahtarlarını kısıtlama
- Statik Haritalar ve Street View API'lerini kullanırken API anahtarlarının güvenliğini sağlama
- Google Haritalar platformu için en iyi 15 uygulama