Firebase lansman kontrol listesi

Bu belgede, bir Firebase uygulamasını üretime sunmadan önce yapılması gerekenler ve dikkat edilmesi gerekenlerle ilgili bir kontrol listesi yer almaktadır.

Yayınlamayla ilgili genel en iyi uygulamalar

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

  • Uygulamayı 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.

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

  • Uygulamanıza yeni özellikleri ve güncellemeleri güvenli ve kademeli bir şekilde yayınlamak için Firebase Remote Config aşamalı sunumları kullanın.

  • Henüz yapmadıysanız Firebase Crashlytics'ı ayarlayabilirsiniz. Bu, uygulamanızın kalitesini düşüren kararlılık sorunlarını izlemenize, önceliklerini belirlemenize ve düzeltmenize yardımcı olan hafif ve anlık bir kilitlenme raporlayıcıdır.

Fiyatlandırma planı sınırlarınızı öğ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ını ve kotaları aşmadığınızdan emin olun. Kullandıkça öde Blaze fiyatlandırma planına geçmeyi düşünebilirsiniz.

  • 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ırdığınız eşiğe yaklaştığınızda veya bu eşiği aştığınızda uygulamanızda ya da projenizde işlem yapabilmeniz için size bildirim gönderilir.

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

  • 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 Google Cloud Firebase hizmetleri ve yapılandırmaları etkinleştirilmiş bir 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 şekilde maruz kalmayı 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ı daha kolay tanımlamak için Firebase konsolunda "Prod" etiketi uygulayın.

  • Henüz yapmadıysanız bir Google Cloudkuruluş oluşturmayı ve Firebase projelerinizi bu kuruluşa eklemeyi düşünebilirsiniz.

  • Firebase projelerinize birden fazla sahip ekleyin. Özellikle projeniz bir Google Cloud kuruluşunda değilse bu işlemi yapmanız önerilir. 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. Özellikle ekip üyeleri değişiyorsa veya ayrılıyorsa bu durum daha da önem kazanı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 bilgiyi Firebase uyarılarını alma başlıklı makalede bulabilirsiniz.

    Ayrıca, 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 hizmet, üretimde kullanıldığında belirli hususları dikkate almayı gerektirebilir.

Firebase AI Logic

Google Analytics

  • Uygulamanızın kullanıma sunulmasıyla birlikte analiz verilerini toplamaya başlamak için Google Analytics için kitle koşullarını tanımlayın.

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

  • Kullanıcı özelliklerini, uygulamanızın yaşam döngüsü boyunca alakalı olacak bilgilerle sınırlayın. Oluşturabileceğiniz sayı sınırlıdır ve bu özellikler arşivlenemez.

  • Google Analytics mülkleriniz ve hesaplarınız için Google Analytics rollerinin ayarlarını inceleyin. Bu izinler, Firebase projesi IAM izinlerinden ve rollerinden ayrı olarak yönetilir.

  • Firebase konsolunun Proje ayarları bölümünde App Store kimliğinizin ve ekip kimliğinizin (gerekirse) doğru olduğundan emin olun.

App Check

  • Firebase konsolunun Proje ayarları bölümünde ekip kimliğinizin doğru olduğundan emin olun.

  • Henüz yapmadıysanız Firebase App Check özelliğini destekleyen her hizmet için zorunlu kılmaya başlayı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 izin 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.

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

  • Firebase konsolunun Proje ayarları bölümünde 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 istemci şartı olan) kullanılıyorsa SHA-1 karması gereklidir.

  • 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 (Firebase Security Rules'ye dayalı ürünler kullanıyorsanız bu özellikle ö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 bilgiyi Firebase uyarılarını alma başlıklı makalede bulabilirsiniz.

  • 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 neden meydana geldiğini ve bu konuda ne yapmanız gerektiğini anlamak için gereken süreyi hızlandırmaya yardımcı olması amacıyla Crashlytics'da yapay zeka yardımını etkinleştirmeyi düşünebilirsiniz.

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

  • Crashlytics'de 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.

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 bilgiyi Firebase uyarılarını alma başlıklı makalede bulabilirsiniz.

  • 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ın ek kapasiteye ihtiyacı olabilir.

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

Remote Config

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