Google maps javascript api key, bir çok websitede kullanılan ve çok gelişmiş harita özelliklerini websitenize eklemenizi sağlayan bir servis. Google geçmişte bu servisi çok cömert kotalarda ücretsiz olarak paylaşıyordu, ama artık ücretsiz limitlerini bariz bir şekilde düşürdü. Bu yazının yazıldığı tarihte kabaca aylık 10000 kullanımdan sonra ücretlendirme başlıyor. Google maps javascript api key, client tarafında çalıştığı için tüm ziyaretçilerle paylaşılması gereken public bir anahtar. Bu nedenle de güvenliğini sağlamak oldukça zor. Bu yazımızda öncelikle google maps javascript api key nasıl oluşturulur unu inceleyeceğiz, sonrasında ise bu key’i nasıl daha güvenli hale getirebiliriz, sürpriz faturalarla karşılaşmamak için ne yapmamız gerekir bunlardan bahsedeceğiz.
Google Maps Javascript API Key Oluşturma Rehberi
Adım adım takip ederek öncelikle google maps javascript api key oluşturamayı birlikte inceleyelim. Öncelikle bir Google Cloud Console hesabına sahip olmaız gerekiyor. Sonrasında bu hesaba bir billing yani ödeme hesabı eklemeliyiz.
Google Cloud Console Hesabı
Hesabı oluşturmak için https://console.cloud.google.com/welcome adresini ziyaret ediyoruz. Ardından google hesabı ile giriş yaparak. Sözleşmeyi onaylıyoruz.

Ardından menüden API & Services‘e tıklıyoruz ve alt menüden Library‘e tıklıyoruz. Ardından karşımıza bu şekilde bir ekran çıkacak:

Arama bölümüne: Maps JavaScript API yazıyoruz ve sonuçlardan “Maps JavaScript API”ı seçip tıklıyoruz. Ve detay sayfasından Enable‘i tıklıyoruz. Servisi aktif ediyoruz.
Kullanmak istediğiniz başka servsiler varsa onları da enable etmeniz gerekiyor.
Ardından Enable’e basınca bizi bu şekilde bir sayfaya yönelndirecek ve bizden hesap & ödeme bilgilerimizi isteyecek.
Doğru bir şekilde bilgilerinizi girin.

Key Oluşturma
Hesabınızı doğru bir şekilde oluşturduktan sonra tekrardan: API & Services > Lirary > Google Maps Javascript API sayfasına gidiyoruz. Manage butonuna tıklıyoruz.
Sol menüde Keys & Credentials bizi bekliyor.

Açılan sayfada üstteki menüden maps javascipt api seçiyoruz ve ardından

Create Credentials > API key seçiyoruz.

Sağ tarafta bir ekran açılıyor ve bizim api ayarlarını girmemizi istiyor.
BU KISIM ÇOK ÖNEMLİ
Name: sitenizin adını yazabilirsiniz.
Application restrictions: bu çok önemli, burada websites seçiyoruz ve başka websitelerin kullanımına izin vermemiş oluyoruz.
Website restrictions: burada izin verdiğimiz websitelerini giriyoruz. Add’e tıklayarak.
API restrictions: burası da çok önemli default olarak tüm api servislerine izin veriyor, biz sadece google maps javascript api’a izin vermeliyiz. Yani kullanmadıklarımızın hepsinin tikini kaldırıyoruz.
Kısıtlama ve website adımı şu şekilde görünecek. Bu kısımda eğer tam emin olamadıysanız profesyonel destek alabilirsiniz.

Bu işlemleri gerçekleştirdikten sonra aşağıdaki gibi api key belirecek, kopyalayıp kullanabilirsiniz.

Kota ve Güvenlik
Önceki adımlarda zaten kullanım kısıtlaması uyguladık ve sadece bizim websitemizde kullanılmasını sağladık. Şimdi sırada kota ayarları var.
Google Maps Javascript API Key’e Nasıl Kullanım Kotası Koyacağız?
Buraya kadar her şey güzel ama bir sorunumuz var, google servisleri default olarak limitsiz kullanıma izin veriyor, kart bakiyeniz yetersiz olsa da tutarı sizden tahsil ediyor. Bunu önlemek için servislere öncelikle google cloud console dan limit koymanız çok önemli.
Kota Ayarları
Yukarıdaki şekilde maps javascript api key oluşturduktan sonra tekrardan
APIs & Services > Library > Maps Javascript API Key > Manage > Keys & Credentials yolunu takip ederek sayfamıza geliyoruz.

Sol menüden Quotas‘a tıklıyoruz. Yukarıdan Maps Javascript API Key’i tekrar seçiyoruz.
Aşağıdaki gibi tüm kullanım kotalarını görebilirsiniz. Hepsinin yanındaki üç noktaya tıklayarak. Özellikle Unlimited olanlar için yeni limitler giriyoruz.

Benim örneğimde zaten limitli olduğu için 1000 yazıyor hepsinde.
Buraya kadar geldiyseniz bir çok yönden api anahtarınızın kötüye kullanılmasını engellemiş oldunuz.
Tabi buna ek olarak da Billing > Billing Account > Budgets & alerts kullanarak da herhangi bir istenmedik durumda bildirim almanızı sağlayabilirsiniz.

