Firebase lansman kontrol listesi

Bu belgede, bir Firebase uygulamasını üretim ortamında kullanıma sunmadan önce yapılması gerekenler ve dikkat edilmesi gereken noktalarla ilgili bir kontrol listesi yer almaktadır.

Yayınlama ile ilgili genel en iyi uygulamalar

  • Üretime dağıtmadan önce Firebase Local Emulator Suite'da (desteklenen ürünler için) tüm değişikliklerinizi test ettiğinizden emin olun. Kapsamlı testler maliyetli hataları önlemeye yardımcı olabilir.

  • Zorunlu kılma işlemini, destekleyen her hizmet için başlatın. Firebase App Check App Check, yalnızca gerçek uygulamalarınızın arka uç hizmetlerinize ve kaynaklarınıza erişebilmesini sağlar.

  • Firebase'in genel güvenlik kontrol listesini inceleyin.

  • Yeni özellikleri ve güncellemeleri uygulamanıza güvenli ve kademeli bir şekilde yayınlamak için Firebase Remote Config kullanıma sunma özelliğini kullanın.

  • Henüz yapmadıysanız Firebase Crashlytics'ı ayarlamayı düşünebilirsiniz. Bu, uygulamanızın kalitesini düşüren kararlılık sorunlarını izlemenize, önceliklendirmenize ve düzeltmenize yardımcı olan hafif bir anlık kilitlenme raporu aracıdır.

Fiyatlandırma planınızın sınırlarını öğrenme ve bütçe uyarıları ayarlama

  • Üretime geçtikten sonra, özellikle ücretsiz Spark planını kullanıyorsanız kullanım sınırlarına ve kotalara ulaşmadığınızdan emin olun. Kullandıkça öde Blaze fiyatlandırma planına geçebilirsiniz.

  • Projeniz için bütçe uyarıları oluşturun.

    • Bütçe uyarılarının bütçe sınırları olmadığını unutmayın. Yapılandırılmış eşiğinize yaklaştığınızda veya bu eşiği aştığınızda uygulamanızda ya da projenizde işlem yapabilmeniz için size iletişim gönderen bir uyarı gösterilir.

    • Uyarılar karşısında faturalandırmayı devre dışı bırakacak işlevler gibi gelişmiş uyarılar ve işlemler ayarlamayı düşünebilirsiniz.

    • Firebase AI Logic, Firebase App Hosting, Cloud Functions for Firebase ve Firebase Extensions hizmetlerini kullanıyorsanız harcama sınırları belirlemenizi önemle tavsiye ederiz. Bu sınırlar, projeniz ilgili hizmet için belirlenen bütçeye ulaştığında geçerli hizmeti duraklatır.

  • Kullanımınızı ürüne özel kontrol panellerinde veya Firebase konsolundaki merkezi Kullanım ve faturalandırma kontrol panelinde izleyin.

Firebase projelerinizin ve uygulamalarınızın en iyi uygulamalara uygun olduğundan emin olun.

İster tek bir geliştirici ister kurumsal düzeyde bir ekip olun, Firebase projelerinizin, uygulamalarınızın ve kaynaklarınızın korunmasını, güvenliğini ve ekibinizdeki değişikliklerle birlikte gelişebilmesini sağlamanız önemlidir.

Firebase projesinin aslında Firebase hizmetleri ve yapılandırmaları etkinleştirilmiş bir Google Cloud proje olduğunu unutmamak önemlidir. Bu nedenle, Google Cloud'un önerdiği birçok en iyi uygulama Firebase için de geçerlidir.

  • Geliştirme, test ve üretim için farklı Firebase projeleri kullanın.

    Üretim uygulamanızla ilişkili projeye beklenmedik erişimi sınırlamaya çalışın. Geliştirme iş akışlarını ayarlama hakkında daha fazla bilgi edinin.

  • Özellikle üretim uygulamanızla ilişkili proje olmak üzere önemli projelerinizi koruyun.

    • Yanlışlıkla proje silinmesine karşı koruma sağlamak için proje ipoteklerini kullanın.

    • Üretim ortamınızı tanımlamayı kolaylaştırmak için Firebase konsolunda "Prod" etiketi uygulayın.

  • Henüz yapmadıysanız bir Google Cloudkuruluş oluşturup Firebase projelerinizi bu kuruluşa ekleyebilirsiniz.

  • Firebase projelerinize birden fazla sahip ekleyin. Bu özellikle projeniz bir Google Cloud kuruluşunda değilse önemlidir. Firebase projesi için ne zaman ve nasıl sahip atanacağı hakkında daha fazla bilgi edinin.

  • Proje üyelerini (diğer adıyla "sorumlular") tek tek eklemek yerine Google Grupları olarak ekleyin.

    Grupları kullanmak, ekip üyelerine toplu olarak rol atamayı ve Firebase projenize kimlerin erişebileceğini yönetmeyi kolaylaştırır. Bu durum, özellikle ekip üyelerinin değiştiği veya ayrıldığı durumlarda faydalıdır.

  • Her proje üyesine (diğer adıyla "asıl") Firebase projelerinize ve kaynaklarınıza uygun düzeyde erişim izni verin. Daha fazla bilgiyi Firebase IAM ile proje erişimini yönetme başlıklı makalede bulabilirsiniz.

  • Geçerli her proje üyesinin (diğer adıyla "sorumlu") belirli ürünler veya proje durumu (ör. faturalandırma planı değişiklikleri ya da kota sınırları) hakkında uyarı almak için tercihlerini ayarladığından emin olun. Daha fazla bilgi için Firebase uyarılarını alma başlıklı makaleyi inceleyin.

    Belirli veya ek proje üyelerinin bildirim almasını istiyorsanız projenizin "önemli kişilerini" isteğe bağlı olarak özelleştirebilirsiniz. Bu özellik, özellikle faturalandırma, yasal ve ürün değişiklikleriyle ilgili bildirimlerin yalnızca proje sahibine değil, diğer kullanıcılara da gönderilmesini sağlamak için kullanışlıdır.

  • Firebase API anahtarlarınızı yalnızca anahtarın API izin verilenler listesinde olması gereken API'lerle kısıtlayın. Ayrıca, Firebase'in güvenlik kontrol listesindeki API anahtarlarıyla ilgili bilgilere de göz atın.

Uygulamanızda kullanılan belirli hizmetleri hazırlama

Uygulamanızda kullanılan her ürün ve hizmetin, üretimde kullanıldığında dikkate alınması gereken belirli noktaları olabilir.

Firebase AI Logic

Google Analytics

App Check

  • Firebase konsolunun proje ayarlarında ekip kimliğinizin doğru olduğundan emin olun.

  • Henüz yapmadıysanız zorunlu kılmayı Firebase App Check destekleyen her hizmet için başlatın. App Check, yalnızca gerçek uygulamalarınızın arka uç hizmetlerinize ve kaynaklarınıza erişebilmesini sağlar.

Authentication

  • Kullanmadığınız sağlayıcıları (özellikle anonim kimlik doğrulama) devre dışı bırakın.

  • Uygulamanızda Google ile oturum açma özelliği kullanılıyorsa OAuth kullanıcı rızası ekranınızı kişiselleştirin.

  • Authentication e-posta gönderme hizmeti için alanınızı ve göndereninizi özelleştirin.

  • Identity Platform SMS doğrulama hizmetlerini kullanıyorsanız Firebase App Check'ı zorunlu kılmaya başlayın ve uygulamanızı SMS kötüye kullanımından korumak için SMS bölge politikası yapılandırın.

  • Sık karşılaşılan Authentication hatalar için Apple platformlarında hata işlemeyi uygulayın.

  • Firebase konsolunun Proje ayarları bölümüne uygulamanızın imzalama sertifikası için bir yayın SHA-1 karması ekleyin. Uygulamanızda telefon numarasıyla oturum açma veya Google ile oturum açma (OAuth istemcisi gerektirir) kullanılıyorsa SHA-1 karması zorunludur.

  • Yetkisiz kullanımı önlemek için alanlarınızda erişim denetimi ekleyin. Özellikle, Firebase konsolunun Authentication bölümünde üretim alanınıza erişime izin verin (özellikle Firebase Security Rules'ye dayalı ürünler kullanıyorsanız önemlidir).

Cloud Firestore

Cloud Messaging

Cloud Storage

Crashlytics

  • Geçerli her proje üyesinin (diğer adıyla "sorumlu") Crashlytics veya proje durumu (ör. faturalandırma planı değişiklikleri ya da kota sınırları) hakkında uyarı almak için tercihlerini ayarladığından emin olun. Daha fazla bilgi için Firebase uyarılarını alma başlıklı makaleyi inceleyin.

  • Verilerinizi BigQuery SQL ile analiz edebilmek veya verileri kendi araçlarınızla kullanmak için dışa aktarabilmek üzere Crashlytics verilerinin BigQuery'e aktarılmasını etkinleştirmeyi düşünün.

  • (yalnızca yerel Android ve iOS) Bir kilitlenmenin nedenini anlamanız ve bu konuda ne yapmanız gerektiğini belirlemeniz için gereken süreyi hızlandırmaya yardımcı olması amacıyla Crashlytics'da yapay zeka yardımını etkinleştirmeyi düşünebilirsiniz.

  • Yayın derlemeleri için dSYM dosyasını yükleyerek Crashlytics'da kullanın. Xcode'un dSYM'leri otomatik olarak işleyebildiğinden ve dosyaları yükleyebildiğinden emin olun.

  • Crashlytics'te kullanılmak üzere sürüm derlemeleri için ProGuard eşlemesi yükleyin. Yükleme işlemi Firebase CLI kullanılarak yapılabilir.

  • Android uygulamanızın durumu hakkında daha kapsamlı bir görünüm elde etmek için Firebase'i Google Play'e bağlayın. Örneğin, uygulamanızın kilitlenme raporlarını Google Play kanala göre filtreleyebilirsiniz. Bu sayede, kontrol panelinizi belirli derlemelere daha iyi odaklayabilirsiniz.

  • Android'i hedefleyen ve IL2CPP kullanan derlemeler için, kod veya yapılandırma değişiklikleri olup olmadığına bakılmaksızın, sembollerini kullanmak istediğiniz her derleme çalıştırması için yerel sembolleri yüklediğinizden emin olun.

  • Dynamic Links hizmetinin desteği sonlandırıldı. Bu nedenle, hizmetten taşınmanızı öneririz. Daha fazla bilgiyi desteği sonlandırmayla ilgili SSS bölümünde bulabilirsiniz.

Firebase ML

Performance Monitoring

  • Geçerli her proje üyesinin (diğer adıyla "sorumlu") Performance Monitoring veya proje durumu (ör. faturalandırma planı değişiklikleri ya da kota sınırları) hakkında uyarı almak için tercihlerini ayarladığından emin olun. Daha fazla bilgi için Firebase uyarılarını alma başlıklı makaleyi inceleyin.

  • Verilerinizi BigQuery SQL ile analiz edebilmek veya verileri kendi araçlarınızla kullanmak için dışa aktarabilmek üzere Performance Monitoring verilerinin BigQuery'e aktarılmasını etkinleştirmeyi düşünün.

Realtime Database

  • İstem dışı veri erişimini önlemek için Realtime Database Security Rules yapılandırın.

  • Ölçeklendirmeye hazır olduğunuzdan emin olun. Realtime Database, çoğu uygulama için yeterli büyüklükte bir varsayılan kotaya sahiptir ancak bazı uygulamalar ek kapasiteye ihtiyaç duyabilir.

  • Proguard kurallarınızı Realtime Database ile çalışacak şekilde yapılandırın.

Remote Config

  • Deneysel Remote Config kuralların, sürümünüzü kullananları etkilemediğinden ve uygulamanızda uygun sunucu ile uygulama içi varsayılanların dağıtıldığından emin olun.

  • Önceki sürümler uyumsuz hale gelirse veya desteği sonlandırılırsa kullanıcıları uygulamalarını güncellemeye yönlendirebilmek ya da zorunlu tutabilmek için Remote Config içinde minimum_version parametresini yapılandırmayı düşünebilirsiniz.