Google Haritalar Platformu güvenlik kılavuzu

Google Haritalar Platformu API'lerini ve SDK'larını kullanan uygulama ve projelerde yetkisiz kullanımı ve ücretleri önlemek için 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ıtlayın. Buradaki en iyi uygulamalar, reklamları nasıl kısıtlayabileceğinizi 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 Kullanımda olan bir API anahtarını kısıtlıyor veya yeniden oluşturuyorsanız bölümünde verilen önerileri inceleyin.

Dijital imzalar hakkında daha fazla bilgi için Dijital İmza Kılavuzu'na göz atın.

Önerilen en iyi uygulamalar

Daha fazla güvenlik sağlamak ve yetkisiz kullanım nedeniyle faturalandırılmamak için tüm Google Haritalar Platformu API'leri, SDK'ları veya hizmetlerinde API güvenliğiyle ilgili aşağıdaki en iyi uygulamaları izleyin:

API anahtarlarınızı kısıtlama

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

Statik Web API'leri kullanan web siteleri için ek öneriler

Statik Web API'lerini kullanarak uygulamaları 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ı yeni API anahtarlarıyla gerektiği şekilde güncelleyin.

  • API anahtarınız etkin bir şekilde kötüye kullanılmıyorsa uygulamalarınızı kendi temponuzda birden fazla yeni API anahtarına taşıyabilirsiniz. Bunu yaparken yalnızca tek bir trafik türünü görünceye kadar orijinal API anahtarına dokunulmaz ki daha sonra, API anahtarlarını uygulama kısıtlamasıyla kısıtlayabilirsiniz. Daha ayrıntılı talimatlar için Birden çok API anahtarına taşıma 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ığına bakı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ın güvenliğini sağlamak 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 veya web hizmeti uygulamalarında anahtarları güncellemek ya da değiştirmek çok daha kolaydır ancak yine de dikkatli bir planlama ve hızlı çalışma gerektirebilir.

    Daha fazla bilgi için API anahtarının yetkisiz kullanımını 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ıyla kısıtlamaktır. API, SDK veya JavaScript hizmetine göre ö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ı

    Yetkilendirmek istediğiniz türlerden bir veya daha fazla uygulama kısıtlaması ekleyerek bir anahtarı kısıtlarsınız. Daha sonra, yalnızca bu kaynaklardan gelen isteklere izin verilir.

  • API kısıtlamaları API anahtarınızın kullanılabileceği Google Haritalar Platformu API'leri, SDK'ları veya hizmetlerini kısıtlayabilirsiniz. API kısıtlamaları yalnızca belirttiğiniz API'lere 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'ler listesi, bir projede etkinleştirilen tüm API'leri içerir.

API anahtarı için uygulama kısıtlaması belirleme

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Kısıtlamak istediğiniz API anahtarını seçin.

  3. API anahtarını düzenleme sayfasında, Anahtar kısıtlamaları bölümünde Uygulama kısıtlaması ayarla'yı seçin.

    API anahtarı sayfasını düzenleyin

  4. Kısıtlama türlerinden birini seçin ve kısıtlama listesine göre 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 ve http'dır.
    • 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.domain.com adresini belirtirseniz bu alan, www.domain.com/* joker karakteri olarak işlev görür ve söz konusu ana makine adındaki tüm alt yolları yetkilendirir.
    • Varsayılan olarak çoğu mevcut tarayıcı, kaynaklar arası isteklerden yolu kaldırdığı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 adresiyle eşleşmelidir. Ağ adresi dönüştürme (NAT) kullanıyorsanız bu adres genellikle makinenizin herkese açık IP adresine karşılık gelir.
    Android uygulamaları Yetkilendirmek istediğiniz her Android uygulamasının Android paketi adını (AndroidManifest.xml dosyasından) ve SHA-1 imza sertifikası dijital parmak izini ekleyin. Play Uygulama İmzalama kullanıyorsanız imzalama sertifikası parmak izini getirmek için API Sağlayıcıları ile çalışma bölümüne bakın. Kendi imzalama anahtarınızı yönetiyorsanız Uygulamanızın kendi kendine imzalamasını inceleyin 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ıyla ilgili öneriler için Önerilen uygulama Kısıtlaması bölümüne bakın.

  5. Kaydet'i seçin.

Bir API anahtarı için API kısıtlamaları belirleme

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Kısıtlamak istediğiniz API anahtarını seçin.

  3. API anahtarını düzenleme sayfasında, API kısıtlamaları altında:

    • Anahtarı kısıtla'yı seçin.

    • API'leri seçin bölümünü açın ve uygulamanızın API anahtarını kullanarak erişmesini istediğiniz API'leri veya SDK'ları seçin.

      Listelenmeyen bir API veya SDK'yı etkinleştirmeniz gerekir. Ayrıntılı bilgi için Bir veya daha fazla API'yi ya da SDK'yı etkinleştirme bölümüne bakın.

    API anahtarını düzenleyin sayfasında API'yi kısıtlama

  4. 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ı girdiğinizden 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'nın 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ıtlıyorsanız veya bir anahtar tarafından kullanılan API'leri görmek istiyorsanız API anahtarı kullanımınızı kontrol etmeniz gerekir. Bu adımlar, bir API anahtarının hangi hizmet ve API yöntemlerinde kullanıldığını gösterir. Google Haritalar Platformu hizmetleri dışında 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 uygulanacak API ve uygulama kısıtlamalarını belirlemenize yardımcı olması için Google Haritalar Platformu Cloud Console Metrik gezginini kullanabilirsiniz:

API anahtarınızı kullanan API'leri belirleme

Aşağıdaki metrik raporları, API anahtarlarınızı hangi API'lerin kullandığını belirlemenizi sağlar. Bu raporları kullanarak şunları yapabilirsiniz:

  • API anahtarlarınızın nasıl kullanıldığını öğrenin
  • Beklenmeyen kullanımı tespit et
  • Kullanılmayan bir anahtarın silinmesinin güvenli olup olmadığını doğrulamaya yardımcı olun. API anahtarını silme hakkında bilgi edinmek için Kullanılmayan API anahtarlarını silme bölümüne bakın.

API kısıtlamaları 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.

  1. Google Cloud Console'un Metrik gezgini'ne gidin.

  2. Giriş yapın ve kontrol etmek istediğiniz API anahtarları için projeyi seçin.

  3. 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 Yerleştirme API'sini kullanan API anahtarları için: Metrik Gezgini'ne gidin.

  4. Her API anahtarını inceleyin:

    1. FİLTRE EKLE'yi seçin.

    2. credential_id etiketini seçin.

    3. İncelemek istediğiniz anahtara karşılık gelen değeri seçin.

    4. Bu API anahtarının hangi API'ler için kullanıldığını not edin ve kullanımın beklendiğini onaylayın.

    5. İşlem tamamlandığında ekstra filtreyi silmek için etkin filtre satırının sonundaki Filtreyi kaldır seçin.

  5. Kalan tüm tuşlar için bu işlemi tekrarlayın.

  6. API anahtarlarınızı yalnızca kullanılan API'lerle kısıtlayın.

  7. 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çin

API anahtarınızın yalnızca kullandığı Google Haritalar Platformu hizmetlerinde kullanıldığından emin olmak için gerekli işlemleri yaptıktan ve gerekli işlemleri yaptıktan sonra, API anahtarının doğru uygulama kısıtlamalarına sahip olduğ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 başlıklı makaleyi inceleyin.

API anahtarınızda kısıtlama önerileri yoksa Metrik gezginini kullanarak bildirilen platform_type öğesine göre uygulanacak uygulama kısıtlaması türünü belirleyin:

  1. Google Cloud Console'un Metrik gezgini'ne gidin.

  2. Giriş yapın ve kontrol etmek istediğiniz API'ler için projeyi seçin.

  3. Şu Metrik gezgini sayfasına gidin: Metrik gezgini.

  4. Her API anahtarını inceleyin:

    1. FİLTRE EKLE'yi seçin.

    2. credential_id etiketini seçin.

    3. İncelemek istediğiniz anahtara karşılık gelen değeri seçin.

    4. İşlem tamamlandığında ekstra filtreyi silmek için etkin filtre satırının sonundaki Filtreyi kaldır seçin.

  5. Kalan tüm tuşlar için bu işlemi tekrarlayın.

  6. API anahtarlarınızın platform türünü belirledikten sonra söz konusu platform_type için uygulama kısıtlamasını uygulayın:

    PLATFORM_TYPE_JS
    Anahtara web sitesi kısıtlamaları uygulayın.
    PLATFORM_TYPE_ANDROID
    Anahtara Android uygulaması 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 daha fazla seçenek için Statik Web API'lerini kullanarak uygulamaları koruma bölümüne göz atın. Maps Embed API ile ilgili diğer talimatlar için maps Embed API'ye sahip web siteleri bölümüne bakın.
    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 taşıma işlemi gerçekleştirmeniz 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ırlandırır. 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ı uygulama kısıtlaması türünü kullandıkları sürece birden fazla uygulamada kısıtlanmış anahtarlar kullanabilirsiniz.

Önerilen API anahtarı kısıtlamalarını uygula

Google Cloud Console bazı proje sahipleri ve düzenleyiciler için, Google Haritalar Platformu kullanımlarına ve etkinliklerine bağlı olarak kısıtlanmamış API anahtarlarına 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örmemenizin nedenleri

  • API anahtarını Google Haritalar Platformu hizmetleri dışında bir yerde de kullanıyorsunuz. Diğer hizmetlerde kullanıldığını fark ederseniz önce şunları yapmadan öneriyi uygulamayın:

    1. Google Cloud Console Metrik gezgininde gördüğünüz API kullanımının geçerli olduğunu doğrulayın.

    2. Eksik hizmetleri, yetkilendirilecek API'ler listesine manuel olarak ekleyin.

    3. API listesine eklenen hizmetler için eksik uygulama kısıtlamalarını manuel olarak ekleyin. Diğerlerini eklemek için farklı bir türde uygulama kısıtlaması gerekiyorsa Birden çok API anahtarına taşıma bölümüne bakın.

  • API anahtarınız, istemci taraflı SDK'larda veya API'lerde kullanılmaz.

  • API anahtarını, son 60 gün içinde kullanımı görülmemiş düşük hacimli bir uygulamada veya web sitesinde kullanıyorsanız.

  • Çok kısa bir süre önce yeni bir anahtar oluşturdunuz veya mevcut bir anahtarı kısa süre önce yeni bir uygulamaya dağıttınız. Bu durumda, önerilerin güncellenmesi için birkaç gün daha beklemeniz yeterlidir.

  • API anahtarını, birbiriyle çakışan uygulama kısıtlamaları türleri 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çmeniz 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 serileri gönderdi. Bu durumda, kullanım açıklamalarda hâlâ görülebileceğinden, GRAFİK görünümünden TABLE veya BOTH (BOŞ) görünümüne geçin. Daha fazla bilgi için Grafiğin tam açıklamalarını açma/kapatma bölümüne 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.

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Varsa Önerilen kısıtlamaları uygula'yı seçin.

    Önerilen kısıtlamaları uygula

    Not: Önerilen kısıtlamalar görmüyorsanız uygun kısıtlamaları ayarlamak için Bir API anahtarı için API kısıtlamaları belirleme bölümünü inceleyin.

  3. 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ürseniz 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.

  4. Önceden doldurulmuş kısıtlamaların, API anahtarınızı kullanmayı beklediğiniz web siteleri ve uygulamalarla eşleşip eşleşmediğini bir kez daha kontrol edin.

    En İyi Uygulama: Hizmetlerinizle ilişkili olmayan tüm uygulamaları veya API kısıtlamalarını belgeleyin ve kaldırın. Bir şeyler beklenmedik bir bağımlılık nedeniyle bozulursa gerekli uygulamaları veya API'leri tekrar ekleyebilirsiniz.

    • Bir uygulamanın, web sitesinin veya API'nin önerinizde açıkça yer almadığını fark ederseniz manuel olarak ekleyin veya ö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.

  5. Uygula'yı seçin.

Bir öneri uygulandıktan sonra başvurunuz reddedilirse ne yapmalısınız?

Kısıtlama uygulandıktan sonra bir uygulamanın veya web sitesinin reddedildiğini fark ederseniz API yanıtı hata mesajına eklemeniz gereken uygulama kısıtlamasını bulun.

İstemci taraflı SDK'lar için aşağıdaki bilgilere 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:

  1. Gelecekte referans olması için mevcut kısıtlamaları belgeleyin.
  2. 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.
  3. Gerekirse destek ekibiyle iletişime geçin.

Kullanılmayan API anahtarlarını silin

Bir API anahtarını silmeden önce üretimde kullanılmadığından emin olun. Başarılı bir trafik yoksa anahtar muhtemelen 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:

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Silmek istediğiniz API anahtarını seçin.

  3. Sayfanın üst kısmına yakın bir yerdeki Sil düğmesini seçin.

  4. Kimlik bilgisini silin sayfasında Sil'i seçin.

    API anahtarı silme işleminin geçerlilik kazanması 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ı yeniden oluşturulduğunda, eski anahtarın tüm kısıtlamalarına sahip yeni bir anahtar oluşturulur. Bu işlem ayrıca 24 saatlik bir zamanlayıcı başlatır. Ardından eski API anahtarı silinir.

Bu süre boyunca hem eski hem de yeni anahtar kabul edilir. Böylece uygulamalarınızı yeni anahtarı kullanmak üzere taşıyabilirsiniz. Ancak bu süre geçtikten sonra, eski API anahtarını kullanmaya devam eden uygulamalar çalışmayı durdurur.

Bir 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ığı şekilde 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 fazla yeni (kısıtlanmış) anahtara geçiş yapın. Taşıma işlemi, taşıma işlemini kontrol etmenize ve yeni API anahtarlarına zaman çizelgesini sunmanıza 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 aşağıdaki adımları uygulayın:

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Yeniden oluşturmak istediğiniz API anahtarını açın.

  3. Sayfanın üst kısmında Anahtarı yeniden oluştur'u seçin.

  4. Anahtarı değiştir'i seçin.

Not: Gerekirse önceki sürümüne uygun şekilde yeniden oluşturulan bir anahtarı geri alabilirsiniz. Geri alma için zaman sınırı yoktur.

Yeniden oluşturulan bir anahtarı geri çekmek için

  1. Google Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasını açın.

  2. Geri çekmek istediğiniz API anahtarını açın.

  3. Önceki anahtara geri dön'ü seçin.

  4. Geri döndür iletişim kutusunda Anahtarı geri al'ı seçin.

Geri çekildikten sonra, anahtarın eski "yeni" sürümü önceki sürüme dönüşür ve bu sürüm için 24 saatlik yeni bir devre dışı bırakma zamanlayıcısı ayarlanır. Anahtarı yeniden oluşturana kadar bu iki anahtar değer arasında geçiş yapabilirsiniz.

Anahtarı yeniden oluşturursanız eski etkin olmayan anahtar değerinin üzerine yazılır.

Birden çok API anahtarına taşıma

Birden fazla uygulama için bir API anahtarı kullanmaktan her uygulama için tek bir benzersiz API anahtarına geçiş yapmak istiyorsanız aşağıdakileri yapın:

  1. Hangi uygulamalara yeni anahtar gerektiğini belirleme:

    • Tüm kodu siz kontrol ettiğiniz için en kolay güncelleme seçeneği web uygulamalarıdır. Tüm web tabanlı uygulamalarınızın 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.
  2. 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.

  3. Yeni anahtarları uygulamalarınıza ekleyin: Mobil uygulamalarda bu işlem, tüm kullanıcılarınızın yeni API anahtarını kullanarak en son uygulamaya güncellenmesine kadar 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 API istek URL'sini genellikle sunucuda oluşturursunuz. Ancak Statik Web API'leri, 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ıyla birlikte dijital imzalar kullanın. Ayrıca günlük kaç tane imzalanmamış isteğe izin vermek istediğinizi gözden geçirin 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 göz atın.

İmzalama sırrı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 taraflı uygulamalarda kullanıma sunun. İmzalama sırlarınızı korumak için aşağıdaki en iyi uygulamaları izleyin:

  • İsteklerinizi istemcide değil, sunucu tarafında imzalayın. JavaScript'te imzalama istemci tarafını yaparsanız bunu, sitenizi ziyaret eden herkese göstermiş olursunuz. Bu nedenle, dinamik olarak oluşturulan resimler için web sayfasını sunarken her zaman imzalı MapsStatic API ve Street View Static API istek URL'lerini 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 kodu ve kaynak ağacının dışında depolayın. İmzalama sırlarınızı veya diğer özel bilgilerinizi ortam değişkenlerine koyar ya da ayrı olarak depolanan dosyaları dahil edip kodunuzu paylaşırsanız imzalama gizli anahtarları paylaşılan dosyalara dahil edilmez. İmzalama gizli anahtarlarını veya diğer özel bilgileri dosyalarda 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. GitHub gibi herkese açık bir kaynak kodu yönetim sistemi kullanıyorsanız bu önlem özellikle önemlidir.

Web hizmetlerini kullanan uygulamalarda API anahtarınızı koruma

API anahtarlarını uygulamanızın kaynak kodunun 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 özellikle GitHub gibi herkese açık bir kaynak kodu yönetim sistemi kullanıyorsanız önemlidir.

Web hizmetlerini veya Statik Web API'lerini kullanarak mobil uygulamalarda API anahtarınızı ve imzalama sırrınızı koruyun

Mobil uygulamaları korumak için güvenli bir anahtar deposu veya güvenli proxy sunucu kullanın:

  • API anahtarını veya imzalama sırrını güvenli bir anahtar deposunda depolayın. Bu adım, API anahtarlarını ve diğer gizli verileri doğrudan uygulamadan kazımayı zorlaştırır.

  • Güvenli bir proxy sunucu kullanın. Proxy sunucusu, uygun Google Maps Platform API ile etkileşim için sağlam bir kaynak sağlar. Proxy sunucu kullanma hakkında daha fazla bilgi için Living Vicariously: Using Proxy Servers with Google Data API İstemci Kitaplıklarıyla bölümüne bakın.

    • Proxy sunucuda Google Haritalar Platformu isteklerinizi oluşturun. İstemcilerin proxy üzerinden rastgele API çağrıları geçirmesine izin vermeyin.

    • Proxy sunucunuzdaki Google Haritalar Platformu yanıtlarını sonradan işleyin. Müşterinin ihtiyaç duymadığı verileri filtreleyin.

API anahtarının yetkisiz kullanımını yönetme

API anahtarınızın yetkisiz kullanıldığını tespit ederseniz sorunu gidermek için aşağıdakileri yapın:

  1. Anahtarlarınızı kısıtlama: Aynı anahtarı birden fazla uygulamada kullandıysanız geçişinizi birden fazla API anahtarına geçirin ve her uygulama için ayrı API anahtarları kullanın. Daha fazla ayrıntı için bkz.:

  2. Anahtarları yalnızca kısıtlayamıyorsanız yeniden oluşturun. Devam etmeden önce API anahtarlarını yeniden oluştururken dikkatli olun bölümünü okuyun.

  3. 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ı önerilmiştir.

Önerilen API Kısıtlamaları

API kısıtlamalarıyla ilgili aşağıdaki kurallar, Google Haritalar Platformu'nun tamamı için geçerlidir:

  • API anahtarınızı aşağıdaki istisnalarla 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 kullanıyorsa anahtarınızda bunu her zaman yetkilendirin.

    • Aşağıdaki Maps JavaScript API hizmetlerinden herhangi birini de kullanıyorsanız ayrıca 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ı kullanıyorsunuz. Bu nedenle, Android için Haritalar SDK'sını ve Yerler API'sini API kısıtlamaları olarak dahil ediyorsunuz.

  • Web siteniz Maps JavaScript API Elevation Service ve Maps Static API'yi kullandığından aşağıdaki API'lerin tümü için API kısıtlamaları ekleyebilirsiniz:

    • Maps JavaScript API
    • Elevation API
    • Maps Static API

Önerilen uygulama Kısıtlaması

Maps JavaScript API veya Static Web API içeren web siteleri

Haritalar JavaScript hizmetlerini veya Statik Web API'lerini kullanan web siteleri için Websites uygulama kısıtlamasını kullanın.

Şu JavaScript hizmetlerini ve API'leri 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 Ayrıca bkz. Web hizmeti veya Statik Web API'lerini kullanarak mobil uygulamaları koruma.

Maps Embed API içeren web siteleri

Maps Embed API'yi kullanmak ücretsiz olsa da diğer hizmetlerde kötüye kullanımı önlemek için, kullanılan tüm API anahtarlarını kısıtlamanız gerekir.

En iyi uygulama: Maps Embed API kullanımı için ayrı bir API anahtarı oluşturun ve bu anahtarı yalnızca Maps Embed API ile sınırlandırın. Bu kısıtlama, anahtarın diğer herhangi bir Google hizmetinde yetkisiz kullanımını önleyerek yeterli düzeyde güvenlik sağlar.

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 yerel Android için Yerler SDK'sı ve iOS için Yerler SDK'sı kullanmayı düşünün.

Android uygulamaları

Android'deki uygulamalar için Android apps uygulama kısıtlamasını kullanın. Şu SDK'ları kullanan uygulamalar ve sunucularda 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ı yanlışlıkla sürüm kontrolüne kontrol edin.

iOS uygulamaları

iOS'teki uygulamalar için iOS apps uygulama kısıtlamasını kullanın. Şu SDK'ları kullanan uygulamalar ve sunucularda kullanın: