Gemini API'ı doğrudan mobil ve web uygulamalarınızdan aradığınızda arka uç altyapınızı, kotanızı ve tescilli istemlerinizi korumak için çok katmanlı bir derinlemesine savunma yaklaşımı gerekir. Firebase AI Logic için önerilen güvenlik en iyi uygulamalarını uygulamak üzere bu kontrol listesini inceleyin.
Uygulama, cihaz ve kullanıcı doğrulaması
Gelen isteklerin, uygulamanızın orijinal cihazlarda çalışan meşru ve değiştirilmemiş örneklerinden ve orijinal kullanıcılardan geldiğini doğrulayın.
Uygulama Firebase App Check
Firebase App Check'ı zorunlu kılarak doğrudan uygulamanızdan çağrıldığında Gemini API'ın kötüye kullanımına karşı korunmasına yardımcı olun. App Check zorunlu kılındığında, gelen isteklerin orijinal uygulamanızdan ve/veya kurcalanmamış bir cihazdan geldiği doğrulanır.
App Check, Apple platformları (DeviceCheck, App Attest veya reCAPTCHA Enterprise), Android (Play Integrity veya reCAPTCHA Enterprise) ve Web (reCAPTCHA Enterprise) için onay sağlayıcıları destekler. Flutter ve Unity uygulamaları için de bu sağlayıcıların tümü desteklenir.
Temmuz 2026'nın başlarından itibaren Firebase, Firebase konsolundaki rehberli kurulum sırasında App Check için Firebase AI Logic'yi otomatik olarak zorunlu kılacak. Firebase AI Logic'ı daha önce ayarladıysanız App Check'ı açıkça zorunlu kıldığınızdan emin olun. Yerel geliştirme için App Check hata ayıklama sağlayıcısını ayarlayabilir, ardından son kullanıcılara yayınlamadan önce uygulamanızı üretim tasdik sağlayıcısına kaydedebilirsiniz.
Sınırlı kullanımlı jetonlarla tekrar oynatma korumasını etkinleştirme
App Check kurulumunun bir parçası olarak, App Check jetonlarının yalnızca bir kez kullanılabilmesi için yeniden oynatma korumasını zorunlu kılmayı düşünebilirsiniz. Bu seçenek, temel korumanın ötesinde gelişmiş koruma sunar ve uygulamanız ile kullanım alanlarınız için uygun bir koruma düzeyi belirlemenize olanak tanır.
Firebase API anahtarlarınız için kısıtlamalar ayarlama
Firebase API anahtarları, istekte bulunurken Firebase projenizi ve uygulamanızı tanımlar. API anahtarlarınızın yetkisiz kullanımını önlemek için:
Google Cloud konsolunda "Uygulama kısıtlamaları" ayarını yaparak anahtar kullanımını yalnızca uygulamanızın belirli paket kimliğinden (Apple), paket adından ve SHA-1 parmak izinden (Android) veya HTTP yönlendirenden (Web) gelen isteklerle sınırlayın.
Her anahtarın "API kısıtlamaları" izin verilenler listesini inceleyin:
- Firebase AI Logic API'sinin (
firebasevertexai.googleapis.com) izin verilenler listesinde olduğundan emin olun. - İzin verilenler listesindeki diğer API'lerin yalnızca uygulamanızın gerektirdiği belirli Firebase hizmetleri olduğundan emin olun. Kısıtlanmış Firebase anahtarları için gereken API'lerin listesine bakın.
- Firebase AI Logic API'sinin (
Firebase ile ilgili API'lerin, API anahtarlarını yalnızca Firebase projesini veya uygulamasını tanımlamak için kullandığını, API'yi çağırmak için yetkilendirme amacıyla kullanmadığını unutmayın.
İstekleri yalnızca kimliği doğrulanmış kullanıcılarla kısıtlama
Firebase AI Logic üzerinden gelen tüm isteklerin Firebase Authentication tarafından sağlanan geçerli kimlik bilgilerini içermesi için kimliği doğrulanmış kullanıcılar modunu zorunlu kılmayı düşünebilirsiniz. İstek, kimliği doğrulanmamış bir son kullanıcıdan geliyorsa 401: unauthenticated hatasıyla reddedilir.
İstem koruması ve istek güçlendirme
İstem tasarımlarınızın açığa çıkmasını önlemek için istemci derlemesini devre dışı bırakın ve kötü amaçlı kullanıcıların rastgele istemler yürütmesini engellemek için arka uçunuzu kilitleyin.
Sunucu istemi şablonlarını kullanma
İstemleri, sistem talimatlarını ve model yapılandırmalarını, ikili kod çözme işlemiyle çıkarılabilecekleri istemci uygulaması koduna sabit kodlamak yerine bulutta güvenli bir şekilde tutmak için sunucu istemi şablonlarını kullanın.
Uygulamanız yalnızca bir şablon kimliğine referans veriyor ve dinamik giriş değişkenlerini iletiyor. Sunucu istemi şablonları, uygulamanızın yeni bir sürümünü yayınlamadan istemleri güncellemenize veya modelleri isteğe bağlı olarak değiştirmenize de olanak tanır.
İstemci tarafından sağlanan şablon değişkenlerini doğrulama ve temizleme
Sunucu istemi şablonları, istem tasarımınızı korur ancak dinamik değişkenleri kabul eden şablonlar istem enjeksiyonuna karşı hassas olmaya devam edebilir. Şablonlar, kullanıcı girişi değişkenlerini son istemde birleştirdiğinden aşağıdakileri yaptığınızdan emin olun:
- Değişkenleri bir şablona aktarmadan önce istemcideki tüm kullanıcı girişlerini doğrulayın ve temizleyin (ör. karakter sınırlarını ve beklenen biçimleri zorunlu kılma).
- Şablonlarınıza, kullanıcı girişinin nasıl işleneceğiyle ilgili sınırları tanımlayan net sistem talimatları ekleyin.
Yalnızca şablon modunu zorunlu kılma
Tüm uygulama özellikleriniz sunucu istemi şablonlarını kullandığında yalnızca
şablon modunu zorunlu kılmayı düşünebilirsiniz. Bu politika uygulandığında, Firebase AI Logic, Gemini API (403: unauthorized) için tüm doğrudan, şablonlanmamış istekleri engeller. Böylece kötü niyetli kişilerin rastgele istemler göndermesi veya kotanızı kötüye kullanması önlenir.
İzleme, sınırlar ve faturalandırma
Gelen trafik ve güvenlik anormallikleri hakkında görünürlük elde edin ve projenizi beklenmedik kullanım artışlarından veya kontrolsüz maliyetlerden koruyun.
Firebase konsolunda yapay zeka kullanım takibini ayarlama
Firebase konsolunda yapay zeka kullanım takibini ayarlayarak istek sayısı, gecikme, jeton kullanımı ve hata oranları (401 kimlik doğrulama hataları ve 403 yalnızca şablon blokları dahil) gibi önemli metrikler hakkında görünürlük elde edin.
Ayrıca, Google Cloud konsolunda tek tek izlemeleri de inceleyebilirsiniz.
Sıklık sınırlamaları belirleme ve kotaları yönetme
Projenizi beklenmedik kullanım artışlarına ve cüzdanı reddetme saldırılarına karşı koruyun:
- Tek tek istemci örneklerinin aşırı kota tüketmesini önlemek için kullanıcı başına sıklık sınırlamaları belirleyin (varsayılan değer 100 RPM'dir).
- Her temel API için Google Cloud konsolunda proje kotalarını inceleyin ve yönetin.
Uyarılar ve harcama sınırları sayesinde sürpriz faturalardan kaçının
Firebase projeniz kullandıkça öde Blaze fiyatlandırma planındaysa:
Bütçe uyarıları ve harcama sınırları ayarlayın.
Sonraki adımlar
- Genel Firebase güvenlik kontrol listesini inceleyin.
- Genel Firebase AI Logic için üretim kontrol listesini inceleyin.
- Firebase AI Logic için fiyatlandırma ve maliyet yönetimi hakkında daha fazla bilgi edinin.