Firebase AI Logic'i kullanmayla ilgili güvenlik kontrol listesi

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

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:

Sonraki adımlar