UygulamaTest← Bloga dön
Android Güvenliği

Android + Firebase Uygulama Güvenliği: Yayın Öncesi 12 Maddelik Kontrol Listesi

Firebase ile hızlı uygulama geliştirmek mümkün olduğu için güvenlik sınırlarını gözden kaçırmak kolaylaşabilir. Oysa Authentication, Firestore, Storage, reklam ve üçüncü taraf SDK’ların her biri ayrı bir veri akışı oluşturabilir. Yayın öncesi küçük bir güvenlik listesi hazırlamak, canlıya çıktıktan sonra pahalı düzeltmeler yapmaktan daha güvenlidir.

UygulamaTest Editörlüğü · Yayınlandı: 6 Ekim 2026 · Güncellendi: 6 Ekim 2026

1. İstemciyi güvenilir kabul etmeyin

Android uygulamasındaki butonlar, menüler ve ekran kontrolleri kullanıcı deneyimini yönetir; erişim yetkisini belirleyen asıl sınır değildir. Kritik kararları Firebase Security Rules ve gerekiyorsa sunucu tarafı doğrulamaya taşıyın.

2. Firebase Authentication ve rol modeli

Oturum açmış kullanıcıyı UID ile ilişkilendirin. Yönetici ve normal kullanıcı arasındaki farkı istemciden gelen bir “isAdmin=true” alanına bağlamayın. Rol bilgisinin nasıl yönetildiğini ve nasıl doğrulandığını açıkça tasarlayın.

3. Firestore erişimlerini küçültün

Uygulamanın ihtiyacı olmayan belgeleri istemciye açmayın. Koleksiyon ve alt koleksiyonları kullanım senaryolarına göre sınırlandırın. Mümkün olduğunca kullanıcıların kendi verisine veya gerçekten ihtiyaç duyduğu ortak verilere erişmesini sağlayın.

4. Rules ile veri yazma alanlarını kontrol edin

Kullanıcıların `role`, `createdAt` veya sistem tarafından yönetilen başka alanları değiştirmesine izin vermeyin. Veri tipleri ve geçerli durumlar için doğrulama koşulları ekleyin.

5. Loglarda hassas veri bırakmayın

Geliştirme sırasında loglanan e-posta, token, kişisel not veya hassas Firestore alanlarını production sürümünden temizleyin. Hata ayıklama kolaylığı için eklenen logların veri sızıntısına dönüşmemesine dikkat edin.

6. API anahtarları konusunda doğru beklenti

Web veya mobil istemcide görünen Firebase yapılandırma değerlerinin “gizli anahtar” gibi düşünülmemesi gerekir. Asıl koruma erişim yetkileri, Security Rules, Authentication, App Check ve sunucu tarafı sır yönetimi gibi katmanlarla sağlanır.

7. App Check’i değerlendirin

Firebase dokümantasyonu, uygun senaryolarda yalnızca uygulamanızın Firebase kaynaklarına erişmesine yardımcı olmak için App Check kullanımını önerir. Uygulamanızın tehdit modeline ve kullandığınız Firebase ürünlerine göre değerlendirin.

8. Hesap silme akışını test edin

Kullanıcı hesabı silindiğinde Authentication, Firestore ve Storage verilerinin hangilerinin kaldırıldığını belirleyin. Google Play’de hesap oluşturan uygulamalar için hesap silme gereksinimleri ayrıca dikkate alınmalıdır.

9. Üçüncü taraf SDK’ları listeleyin

Reklam, analiz, crash ve ödeme SDK’larının veri işleme davranışlarını inceleyin. Yeni bir SDK eklemek Data Safety ve gizlilik metnini tekrar değerlendirme gerektirebilir.

10. Hata akışlarını güvenli hale getirin

Kullanıcıya stack trace veya dahili servis bilgileri göstermeyin. Hata mesajlarını kullanıcıya anlaşılır, geliştiriciye ise log üzerinden teşhis edilebilir biçimde ayırın.

11. Security Rules testleri yazın

Yetkisiz okuma, yetkisiz yazma, kullanıcılar arası veri erişimi, admin işlemleri ve silme gibi temel senaryoları test edin. Kuralların yalnızca uygulama ekranlarında değil doğrudan Firestore istekleri üzerinden de doğru çalıştığını doğrulayın.

12. Yayın sonrası da devam edin

Güvenlik tek seferlik bir yayın öncesi görevi değildir. Yeni özellik, yeni SDK veya yeni veri alanı eklediğinizde veri akışını ve kuralları yeniden inceleyin. Firebase yapılandırması değiştiğinde de aynı kontrolü tekrarlayın.


Resmi kaynaklar

Bu içerik bilgilendirme amacıyla hazırlanmıştır. Google Play, Android ve Firebase gereksinimleri zaman içinde değişebilir. Yayın veya politika kararı vermeden önce ilgili resmi dokümantasyonun güncel sürümünü kontrol edin.

İlgili rehberler