Firebase is back at Google I/O on May 10! Register now

Android'de SafetyNet ile Uygulama Kontrolü'nü kullanmaya başlayın

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

Bu sayfa, yerleşik SafetyNet sağlayıcısını kullanarak bir Android uygulamasında Uygulama Kontrolünü nasıl etkinleştireceğinizi gösterir. Uygulama Kontrolü'nü etkinleştirdiğinizde, projenizin Firebase kaynaklarına yalnızca uygulamanızın erişebilmesini sağlamaya yardımcı olursunuz. Bu özelliğin Genel Bakışına bakın.

Uygulama Kontrolü'nü kendi özel sağlayıcınızla kullanmak istiyorsanız Özel Uygulama Kontrolü sağlayıcı uygulama bölümüne bakın.

1. Firebase projenizi kurun

  1. Henüz yapmadıysanız Firebase'i Android projenize ekleyin .

  2. Firebase konsolunun Uygulama Kontrolü bölümünde SafetyNet sağlayıcısı ile Uygulama Kontrolünü kullanmak için uygulamalarınızı kaydedin. Uygulamanızın imza sertifikasının SHA-256 parmak izini sağlamanız gerekecektir.

    Bir Firebase ürünü için zorlamayı etkinleştirdiğinizde, yalnızca kayıtlı uygulamalar ürünün arka uç kaynaklarına erişebileceğinden genellikle projenizin tüm uygulamalarını kaydetmeniz gerekir.

  3. İsteğe bağlı : Uygulama kayıt ayarlarında, sağlayıcı tarafından verilen Uygulama Kontrolü belirteçleri için özel bir yaşam süresi (TTL) ayarlayın. TTL'yi 30 dakika ile 7 gün arasında herhangi bir değere ayarlayabilirsiniz. Bu değeri değiştirirken, aşağıdaki dengelere dikkat edin:

    • Güvenlik: Daha kısa TTL'ler, sızan veya ele geçirilen bir jetonun bir saldırgan tarafından suistimal edilebileceği pencereyi azalttığı için daha güçlü güvenlik sağlar.
    • Performans: Daha kısa TTL'ler, uygulamanızın tasdik işlemini daha sık gerçekleştireceği anlamına gelir. Uygulama doğrulama işlemi, her gerçekleştirildiğinde ağ isteklerine gecikme eklediğinden, kısa bir TTL uygulamanızın performansını etkileyebilir.
    • Kota ve maliyet: Daha kısa TTL'ler ve sık yeniden onaylama, kotanızı daha hızlı tüketir ve ücretli hizmetler için potansiyel olarak daha yüksek maliyetlidir. Bkz . Kotalar ve sınırlar .

    1 saatlik varsayılan TTL, çoğu uygulama için uygundur. Uygulama Kontrolü kitaplığının belirteçleri TTL süresinin yaklaşık yarısında yenilediğini unutmayın.

2. Uygulama Kontrolü kitaplığını uygulamanıza ekleyin

Modülünüzde (uygulama düzeyinde) Gradle dosyanızda (genellikle app/build.gradle ), App Check Android kitaplığının bağımlılığını bildirin:

Kotlin+KTX

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.2'
}

Java

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.2'
}

3. Uygulama Kontrolünü Başlatın

Diğer Firebase SDK'larını kullanmadan önce çalışması için uygulamanıza aşağıdaki başlatma kodunu ekleyin:

Kotlin+KTX

FirebaseApp.initializeApp(/*context=*/this)
val firebaseAppCheck = FirebaseAppCheck.getInstance()
firebaseAppCheck.installAppCheckProviderFactory(
    PlayIntegrityAppCheckProviderFactory.getInstance()
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        PlayIntegrityAppCheckProviderFactory.getInstance());

Sonraki adımlar

Uygulama Kontrolü kitaplığı uygulamanıza yüklendikten sonra, güncellenmiş uygulamayı kullanıcılarınıza dağıtmaya başlayın.

Güncellenen istemci uygulaması, Firebase'e yaptığı her istekle birlikte Uygulama Kontrolü belirteçleri göndermeye başlayacak, ancak Firebase konsolunun Uygulama Kontrolü bölümünde zorlamayı etkinleştirene kadar Firebase ürünleri, belirteçlerin geçerli olmasını gerektirmeyecektir.

Metrikleri izleyin ve yaptırımı etkinleştirin

Ancak yaptırımı etkinleştirmeden önce, bunu yapmanın mevcut yasal kullanıcılarınızı kesintiye uğratmayacağından emin olmalısınız. Öte yandan, uygulama kaynaklarınızın şüpheli bir şekilde kullanıldığını görüyorsanız yaptırımı daha erken etkinleştirmek isteyebilirsiniz.

Bu kararı vermenize yardımcı olması için, kullandığınız hizmetler için Uygulama Kontrolü ölçümlerine bakabilirsiniz:

Uygulama Kontrolü zorlamasını etkinleştir

Uygulama Kontrolü'nün kullanıcılarınızı nasıl etkileyeceğini anladığınızda ve devam etmeye hazır olduğunuzda, Uygulama Kontrolü uygulamasını etkinleştirebilirsiniz:

Hata ayıklama ortamlarında Uygulama Kontrolü kullanın

Uygulamanızı Uygulama Kontrolü için kaydettirdikten sonra, uygulamanızı Uygulama Kontrolü'nün normalde geçerli olarak sınıflandırmadığı bir ortamda, örneğin geliştirme sırasında öykünücü veya sürekli entegrasyon (CI) ortamından çalıştırmak isterseniz, şunları yapabilirsiniz: uygulamanızın gerçek bir doğrulama sağlayıcısı yerine Uygulama Kontrolü hata ayıklama sağlayıcısını kullanan bir hata ayıklama yapısı oluşturun.

Bkz . Uygulama Kontrolünü Android'de hata ayıklama sağlayıcısıyla kullanma .