Google Haritalar Platformu güvenlik kılavuzu

Google Haritalar Platformu API'lerini ve SDK'larını kullanan uygulamalarda ve projelerde, yetkisiz kullanımı ve ödemeleri ö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. Bu en iyi uygulamalarda, bu öğeleri nasıl kısıtlayacağınız gösterilmektedir.

Uygulama ve API anahtarı kısıtlamaları uygulamanın yanı sıra belirli Google Haritalar Platformu ürünleri için geçerli olan tüm güvenlik uygulamalarını uygulayın. Örneğin, Önerilen uygulama ve API kısıtlamaları bölümündeki Maps JavaScript API'ye bakın.

API anahtarlarınız zaten kullanılıyorsa Kullanımda olan bir API anahtarını kısıtlayıp 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ılmaktan kaçınmak amacıyla tüm Google Haritalar Platformu API'leri, SDK'ları veya hizmetleri için aşağıdaki API güvenlik en iyi uygulamalarını uygulayın:

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

Her uygulama için ayrı API anahtarları kullanın

Kullanılmayan API anahtarlarını silme

API anahtarınızın kullanımını kontrol etme

API anahtarlarını yeniden oluştururken dikkatli olun

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

Statik web API'lerini kullanarak uygulamaları koruma

Web hizmetlerini kullanan uygulamalar için ek öneriler

Web hizmetlerini kullanan 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ınızın kullanımını kontrol edin. Bu adım, anahtar kullanıma sunulduktan sonra kısıtlama ekleyecekseniz özellikle önemlidir.

  • Anahtarı değiştirdikten sonra, tüm uygulamalarınızı gerektiği gibi yeni API anahtarlarıyla güncelleyin.

  • API anahtarınız aktif olarak kötüye kullanılmıyorsa uygulamalarınızı kendi hızınıza göre birden fazla yeni API anahtarına taşıyabilirsiniz. Orijinal API anahtarını, yalnızca bir tür trafik görene kadar değiştirmeden bırakın. Ardından, API anahtarlarını bir uygulama kısıtlamasıyla kısıtlayabilirsiniz. Daha fazla talimat için Birden çok API anahtarına taşıma başlıklı makaleyi inceleyin.

    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 edildiyse 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, anahtarlar müşteriler uygulamalarını güncelleyene kadar değiştirilmez. JavaScript veya web hizmeti uygulamalarındaki anahtarları güncellemek ya da değiştirmek çok daha kolaydır ancak yine de dikkatli planlama ve hızlı çalışma gerektirebilir.

    Daha fazla bilgi için API anahtarının yetkisiz kullanımını ele alma başlıklı makaleyi inceleyin.

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ı API anahtarının kullanımını belirli platformlarla (Android veya iOS uygulamaları ya da istemci tarafı uygulamalar için belirli web siteleri ya da web hizmeti REST API çağrıları gönderen sunucu tarafı uygulamalar için belirli IP adresleri veya CIDR alt ağları) sınırlayabilirsiniz.

    Yetkilendirmek istediğiniz türde bir veya daha fazla uygulama kısıtlaması ekleyerek bir anahtarı kısıtlarsınız. Bu işlemden 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'lerini, SDK'larını veya hizmetlerini kısıtlayabilirsiniz. API kısıtlamaları yalnızca belirttiğiniz API'lere ve SDK'lara istek göndermenize izin verir. Belirli 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'daki 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üzenleyin sayfasında, Anahtar kısıtlamaları bölümünde Uygulama kısıtlaması belirle'yi seçin.

    API anahtarı düzenleme sayfası

  4. Kısıtlama türlerinden birini seçin ve kısıtlama listesine göre istenen bilgileri girin.

    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ı şunlardır: https ve http.
    • Protokol şeması, ana makine adı ve isteğe bağlı bağlantı noktası da dahil olmak üzere her zaman tam yönlendiren URI'yi sağlayın (ö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'u belirtmenizin, www.domain.com/* joker karakteri gibi davrandığını ve bu ana makine adındaki tüm alt yolları yetkilendirdiğini unutmayın.
    • Mevcut tarayıcıların çoğu varsayılan olarak kaynak arası isteklerdeki yolu kaldırdığından, tam yol yönlendiricileri (ör. https://google.com/some/path) yetkilendirirken dikkatli olun.
    IP adresleri CIDR gösterimini kullanarak bir veya daha fazla IPv4 ya da 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 herkese açık IP adresine karşılık gelir.
    Android uygulamaları Yetkilendirmek istediğiniz her Android uygulamasının Android paket adını (AndroidManifest.xml dosyasından) ve SHA-1 imza sertifikası parmak izini ekleyin. Play Uygulama İmzalama'yı kullanıyorsanız imzalama sertifikası parmak izini almak için API Sağlayıcılarla Çalışma başlıklı makaleyi inceleyin. Kendi imzalama anahtarınızı yönetiyorsanız Uygulamanızı kendiniz imzalama başlıklı makaleyi inceleyin veya derleme ortamınızla ilgili talimatları inceleyin.
    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ı başlıklı makaleyi inceleyin.

  5. Kaydet'i seçin.

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

  1. Google Cloud Console'daki 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üzenleyin sayfasında, API kısıtlamaları bölümünde:

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

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

      Listede bulunmayan API veya SDK'ları etkinleştirmeniz gerekir. Ayrıntılar için Bir veya daha fazla API'yi ya da SDK'yı etkinleştirme başlıklı makaleyi inceleyin.

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

  4. Kaydet'i seçin.

    Kısıtlama, bu adımdan sonra API anahtarı tanımının bir parçası olur. API anahtarı kısıtlamalarınızı kaydetmek için uygun ayrıntıları girdiğinizden ve Kaydet'i seçtiğinizden emin olun. Daha fazla bilgi için ilgilendiğiniz API veya SDK'nın dokümanlarında API anahtarı alma kılavuzunu inceleyin.

Önerilen API kısıtlamaları için Önerilen API Kısıtlamaları başlıklı makaleyi inceleyin.

API anahtarınızın kullanımını kontrol etme

API anahtarlarını oluşturulduktan sonra kısıtlıyorsanız veya bir anahtar tarafından hangi API'lerin kullanıldığını görmek ve bunları kısıtlamak istiyorsanız API anahtarınızın kullanımını kontrol etmeniz gerekir. Bu adımlarda, API anahtarının hangi hizmetlerde ve API yöntemlerinde kullanıldığı gösterilir. Google Haritalar Platformu hizmetlerinin dışında bir kullanım görürseniz istenmeyen kullanımları önlemek için daha fazla kısıtlama eklemeniz gerekip gerekmediğini belirlemek üzere inceleme yapın. API anahtarınıza hangi API ve uygulama kısıtlamalarının uygulanacağını belirlemek için Google Haritalar Platformu Cloud Console Metrik Gezgini'ni 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örme
  • Beklenmedik kullanımları tespit etme
  • Kullanılmayan bir anahtarın silinmesinin güvenli olup olmadığını doğrulamamıza yardımcı olun. API anahtarını silme hakkında bilgi edinmek için Kullanılmayan API anahtarlarını silme başlıklı makaleyi inceleyin.

API kısıtlamalarını uygularken, yetki verilecek 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 başlıklı makaleyi inceleyin. Metrik Gezgini'ni kullanma hakkında daha fazla bilgi için Metrik Gezgini ile grafik oluşturma başlıklı makaleyi inceleyin.

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

  2. Oturum açın ve kontrol etmek istediğiniz API anahtarlarının bulunduğu projeyi seçin.

  3. API türünüzün Metrik Gezgini sayfasına gidin:

    • Maps Embed API hariç herhangi bir API kullanan API anahtarları için: Metrik gezgini sayfasına gidin.

    • Maps Embed API'yi 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 bu kullanımın beklendiğini onaylayın.

    5. İşlemi tamamladıktan sonra ek filtreyi silmek için etkin filtre satırının sonunda Filtreyi kaldır seçin.

  5. Kalan tuşlar için de 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 başlıklı makaleyi inceleyin.

Metrik Gezgini'ni 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ığını doğruladı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 önerisi yoksa Metrikler gezginini kullanarak bildirilen platform_type'ye 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'lerin bulunduğu 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. İşlemi tamamladıktan sonra ek filtreyi silmek için etkin filtre satırının sonunda Filtreyi kaldır seçin.

  5. Kalan tuşlar için de bu işlemi tekrarlayın.

  6. API anahtarlarınızın platform türünü belirledikten sonra, ilgili 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 uygulama kısıtlamaları uygulayın.
    PLATFORM_TYPE_IOS
    Anahtara iOS uygulama kısıtlamaları uygulayın.
    PLATFORM_TYPE_WEBSERVICE
    Anahtarı düzgün bir şekilde kısıtlamak için anahtardaki IP adresi kısıtlamalarını kullanmanız gerekebilir. Maps Static API ve Street View Static API ile ilgili diğer seçenekler için Statik Web API'lerini kullanarak uygulamaları koruma başlıklı makaleyi inceleyin. Maps Embed API ile ilgili daha fazla talimat için Maps Embed API'nin kullanıldığı web siteleri başlıklı makaleyi inceleyin.
    API anahtarım birden fazla platform türü kullanıyor
    Trafiğiniz yalnızca tek bir API anahtarıyla düzgün şekilde korunamaz. Birden fazla API anahtarına geçmeniz gerekiyor. Daha fazla bilgi için Birden fazla API anahtarına taşıma başlıklı makaleyi inceleyin.

Her uygulama için ayrı API anahtarları kullanın

Bu uygulama, her bir anahtarın kapsamını sınırlar. Bir API anahtarının güvenliği ihlal edilirse diğer API anahtarlarınızı güncellemeden 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ırlamalar başlıklı makaleyi inceleyin.

Güvenlik açısından uygulama başına bir API anahtarı ideal olsa da aynı uygulama kısıtlaması türünü kullanan birden fazla uygulamada kısıtlanmış anahtarları kullanabilirsiniz.

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

Google Cloud Console, bazı proje sahipleri ve düzenleyiciler için Google Haritalar Platformu kullanımlarına 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.

Önerileri görememenizin veya eksik görmenizin nedenleri

  • API anahtarını Google Haritalar Platformu dışındaki hizmetlerde de (aynı zamanda) kullanıyorsunuz. Diğer hizmetlerde kullanım görüyorsanız önce aşağıdakileri yapmadan öneriyi uygulamayın:

    1. Google Cloud Console Metrik Gezgini'nde gördüğünüz API kullanımının meşru 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. Eklediğiniz diğer uygulama kısıtlamaları için farklı bir tür gerekiyorsa Birden çok API anahtarına taşıma başlıklı makaleyi inceleyin.

  • API anahtarınız istemci tarafı SDK'larda veya API'lerde kullanılmıyor.

  • API anahtarını, son 60 gün içinde kullanılmayan, hacmi düşük bir uygulamada veya web sitesinde kullanıyorsanız.

  • Yakın zamanda yeni bir anahtar oluşturduysanız veya mevcut bir anahtarı yeni bir uygulamada yakın zamanda dağıttıysanız önerilerin güncellenmesi için birkaç gün daha beklemeniz yeterlidir.

  • API anahtarını, birbiriyle çelişen uygulama kısıtlaması türleri gerektiren birden fazla uygulamada kullanıyorsanız veya aynı API anahtarını çok fazla farklı uygulamada ya da web sitesinde kullanıyorsanız. Her iki durumda da en iyi uygulama olarak birden fazla anahtara geçmeniz gerekir. Daha fazla bilgi için Birden fazla API anahtarına geçiş başlıklı makaleyi inceleyin.

Grafiklerde görünmeyen öneriler görme nedenleriniz

  • Uygulamanız veya web siteniz yalnızca çok kısa trafik patlamaları gönderdi. Bu durumda, kullanım hâlâ açıklama bölümünde göründüğü için GRAFİK görünümünden TABLO veya İKİSİ DE'ye geçin. Daha fazla bilgi için Grafiğin tam açıklamalarını açma/kapatma başlıklı makaleyi inceleyin.

  • Trafiğiniz Maps Embed API'den geliyor. Talimatlar için API anahtarınızı kullanan API'leri belirleme başlıklı makaleyi inceleyin.

  • Uygulamadan veya web sitesinden gelen trafik, Google Cloud Console Metrik Gezgini'nde bulunan tarih aralığının dışındadır.

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

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

    Önerilen kısıtlamaları uygulama

    Not: Önerilen herhangi bir kısıtlama görmüyorsanız uygun kısıtlamaları belirlemek için API anahtarı için API kısıtlamaları belirleme başlıklı makaleyi 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 bir hizmet 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 tekrar kontrol edin.

    En İyi Uygulama: Hizmetlerinizle ilişkili olmayan uygulama veya API kısıtlamalarını belgeleyin ve kaldırın. Beklenmedik bir bağımlılık nedeniyle bir sorun oluşursa gerekli uygulamaları veya API'leri tekrar ekleyebilirsiniz.

    • Önerinizde açıkça eksik olan bir uygulama, web sitesi veya API olduğunu fark ederseniz manuel olarak ekleyin veya önerinin güncellenmesi için birkaç gün bekleyin.

    • Önerilen öneriyle ilgili daha fazla yardıma ihtiyacınız varsa destek ekibiyle iletişime geçin.

  5. Uygula'yı seçin.

Öneriyi uyguladı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ında eklemeniz gereken uygulama kısıtlamasını bulun.

İstemci tarafı SDK'lar için aşağıdakilere bakın:

Gerekli API kısıtlamalarınızı kontrol etmek için API anahtarınızı kullanan API'leri belirleme başlıklı makaleyi inceleyin.

Hangi kısıtlamaların uygulanacağını belirleyemiyorsanız:

  1. Gelecekte referans olarak kullanmak için mevcut kısıtlamaları belgeleyin.
  2. Sorunu araştırırken bunları geçici olarak kaldırın. API anahtarınızın kullanımını kontrol etme başlıklı makaledeki 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ı silme

Bir API anahtarını silmeden önce anahtarın üretimde kullanılmadığından emin olun. Başarılı trafik yoksa anahtarı silmeniz büyük olasılıkla güvenlidir. Daha fazla bilgi için API anahtarınızın kullanımını kontrol etme başlıklı makaleyi inceleyin.

API anahtarını silmek için:

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

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

  3. Sayfanın üst kısmındaki Sil düğmesini seçin.

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

    Bir API anahtarının silinmesi birkaç dakika sürer. Yayma işlemi 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ını içeren yeni bir anahtar oluşturulur. Bu işlem aynı zamanda 24 saatlik bir zamanlayıcı başlatır. Bu sürenin sonunda eski API anahtarı silinir.

Bu zaman aralığında hem eski hem de yeni anahtar kabul edilir. Bu sayede uygulamalarınızı yeni anahtarı kullanacak şekilde taşıyabilirsiniz. Ancak bu süre dolduktan 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ığı şekilde kısıtlamayı deneyin.

  • API anahtarınızın, çakışan uygulama kısıtlaması türleri nedeniyle kısıtlanması 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çin. Taşıma işlemi, taşıma ve yeni API anahtarlarına kullanıma sunma zaman çizelgesini kontrol etmenizi sağlar.

Yukarıdaki öneriler uygulanamıyorsa 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'daki 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 yeniden oluşturulmuş anahtarları önceki sürümlerine geri alabilirsiniz. Geri alma işlemi için zaman sınırı yoktur.

Yeniden oluşturulmuş bir anahtarı geri almak için:

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

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

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

  4. Geri al iletişim kutusunda Anahtarı geri al'ı seçin.

Geri alma işleminin ardından anahtarın eski "yeni" sürümü önceki sürüm olur ve anahtar için yeni bir 24 saatlik 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 devre dışı anahtar değerinin üzerine yazılır.

Birden fazla API anahtarına geçiş yapma

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

  1. Hangi uygulamaların yeni anahtarlara ihtiyacı olduğunu belirleme:

    • Tüm kodu kontrol ettiğiniz için web uygulamalarını güncellemek en kolay seçenektir. Web tabanlı uygulamalarınızın tüm anahtarlarını güncellemeyi planlayın.
    • Mobil uygulamalarda ise yeni anahtarların kullanılabilmesi için müşterilerinizin uygulamalarını güncellemesi gerekir. Bu nedenle, mobil uygulamalarda bu işlemi yapmak çok daha zordur.
  2. Yeni anahtarları oluşturup kısıtlayın: Hem bir uygulama kısıtlaması hem de en az bir API kısıtlaması ekleyin. Daha fazla bilgi için Önerilen en iyi uygulamalar başlıklı makaleyi inceleyin.

  3. Yeni anahtarları uygulamalarınıza ekleyin: Mobil uygulamalarda, tüm kullanıcılarınızın yeni API anahtarına sahip en son uygulamaya geçmesi aylar 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, 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 genellikle sunucu değil, son kullanıcı istemcisidir.

Dijital imza kullanma

En iyi uygulama olarak, API anahtarına ek olarak her zaman dijital imzalar kullanın. Ayrıca, günde kaç tane imzasız isteğe izin vermek istediğinizi 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 sırrınızı koruma

Statik web API'lerini korumak için API imzalama gizli anahtarlarınızı doğrudan koda veya kaynak ağaca yerleştirmeyin ya da istemci taraflı uygulamalarda göstermeyin. İmzalama anahtarlarınızı korumak için aşağıdaki en iyi uygulamaları uygulayın:

  • İsteklerinizi istemcide değil, sunucu tarafında imzalayın. İmza işlemini JavaScript'de istemci tarafında yaparsanız sitenizi ziyaret eden herkese gösterirsiniz. Bu nedenle, dinamik olarak oluşturulan resimler için web sayfasını yayınlarken imzalanan Maps Static API ve Street View Static API istek URL'lerinizi her zaman sunucu tarafında oluşturun. Statik web içeriği için Cloud Console Google Haritalar Platformu Kimlik Bilgileri sayfasındaki Şimdi URL imzala widget'ını kullanabilirsiniz.

  • İmzalama anahtarlarını uygulamanızın kaynak kodu ve kaynak ağacının dışında saklayın. İmzalama anahtarlarınızı veya başka gizli bilgileri ortam değişkenlerine koyarsanız ya da ayrı olarak depolanan dosyaları ekleyip kodunuzu paylaşırsanız imzalama anahtarları paylaşılan dosyalara dahil edilmez. İmzalama anahtarlarını veya diğer gizli bilgileri dosyalarda saklıyorsunuz. Bu durumda, imzalama anahtarlarınızı kaynak kod denetim sisteminiz dışında tutmak için dosyaları uygulamanızın kaynak ağacının dışında tutun. Bu önlem, özellikle GitHub gibi herkese açık bir kaynak kod yönetimi sistemi kullanıyorsanız ö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 başka bilgileri ortam değişkenlerine yerleştirirseniz ya da ayrı olarak depolanan dosyaları ekleyip kodunuzu paylaşırsanız API anahtarları paylaşılan dosyalara dahil edilmez. Bu, GitHub gibi herkese açık bir kaynak kod yönetimi sistemi kullanıyorsanız özellikle önemlidir.

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

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

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

  • Güvenli bir proxy sunucusu kullanın. Proxy sunucusu, uygun Google Haritalar Platformu API'siyle etkileşim kurmak için sağlam bir kaynak sağlar. Proxy sunucusu kullanma hakkında daha fazla bilgi için Başkalarının Yerine Yaşama: Google Data API İstemci Kitaplıklarıyla Proxy Sunucuları Kullanma başlıklı makaleyi inceleyin.

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

    • Google Haritalar Platformu yanıtlarını proxy sunucunuzda son işleme alın. İstemcinin ihtiyaç duymadığı verileri filtreleyin.

API anahtarının yetkisiz kullanımını ele alma

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ıtlayın: Aynı anahtarı birden fazla uygulamada kullandıysanız birden fazla API anahtarına geçin ve her uygulama için ayrı API anahtarları kullanın. Daha fazla bilgi için:

  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. Sorun yaşamaya devam ederseniz veya yardıma ihtiyacınız olursa destek ekibiyle iletişime geçin.

Önerilen uygulama ve API kısıtlamaları

Aşağıdaki bölümlerde, her Google Haritalar Platformu API'si, SDK'sı veya hizmeti için uygun uygulama ve API kısıtlamaları önerilmektedir.

Ö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:

  • API anahtarınızı, aşağıdaki istisnalar dışında 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 Yerler API'sini yetkilendirin.

    • Uygulamanız Maps JavaScript API'yi kullanıyorsa 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ı kullanıyorsunuz. Bu nedenle, API kısıtlamaları olarak Android için Haritalar SDK'sını ve Yerler API'sini dahil edersiniz.

  • Web siteniz Maps JavaScript API'yi, Yükseklik Hizmeti'ni ve Maps Static API'yi kullandığından aşağıdaki API'lerin tümü için API kısıtlamaları eklemeniz gerekir:

    • 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.

Aşağıdaki JavaScript hizmetlerini ve API'lerini kullanan web siteleri için kullanın:

1 Mobil uygulamalar için yerel Android için Haritalar SDK'sı ve iOS için Haritalar SDK'sı'nı kullanmayı düşünebilirsiniz.

2 Ayrıca Web hizmeti veya statik web API'lerini kullanarak mobil uygulamaları koruma başlıklı makaleyi de inceleyin.

Maps Embed API'nin kullanıldığı web siteleri

Maps Embed API'yi kullanmak ücretsiz olsa da diğer hizmetlerde kötüye kullanımı önlemek için kullanılan 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ırlayın. Bu kısıtlama, anahtarı yeterince güvence altına alarak başka bir Google hizmetinde yetkisiz kullanımını önler.

Haritalar API'sini ayrı bir API anahtarında kullanamıyorsanız Websitesuygulama kısıtlamasını kullanarak anahtarınızın güvenliğini sağlayın.

Web hizmetlerini kullanan uygulamalar ve sunucular

Web hizmetlerini kullanan uygulamalar ve sunucular için IP addressesuygulama kısıtlamasını kullanın.

Aşağıdaki API'leri kullanan uygulamalar ve sunucular için kullanın:

3 Mobil uygulamalar için yerel Android için Yerler SDK'sı ve iOS için Yerler SDK'sı'nı kullanmayı düşünebilirsiniz.

Android uygulamaları

Android'deki uygulamalar için Android apps uygulama kısıtlamasını kullanın. Aşağıdaki SDK'ları kullanan uygulamalar ve sunucular için kullanın:

Ayrıca, Secrets Gradle Plugin'i kullanarak sırlar Android Manifest'te depolamak yerine yerel bir dosyadan enjekte ederek API anahtarlarının sürüm kontrolünde yanlışlıkla kontrol edilmesini önleyin.

iOS uygulamaları

iOS'teki uygulamalar için iOS apps uygulama kısıtlamasını kullanın. Aşağıdaki SDK'ları kullanan uygulamalar ve sunucular için kullanın: