Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Android'de Play Integrity 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 Play Integrity 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ğe Genel Bakış'a bakın.

Şu anda yerleşik Play Integrity sağlayıcısı yalnızca Google Play tarafından dağıtılan Android uygulamalarını desteklemektedir. Play Integrity'nin Play dışı özelliklerini kullanmak veya Uygulama Kontrolü'nü kendi özel sağlayıcınızla kullanmak için bkz. Özel bir Uygulama Kontrolü sağlayıcısı uygulama .

1. Firebase projenizi kurun

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

  2. Play Integrity API'sini etkinleştirin:

    1. Google Play Console'da uygulamanızı seçin veya henüz yapmadıysanız ekleyin.

    2. Sürüm bölümünde, Kurulum > Uygulama bütünlüğü öğesine tıklayın.

    3. Integrity API sayfasında, Projeyi bağla 'yı tıklayın, ardından Google Cloud projeleri listesinden Firebase projenizi seçin.

      Burada seçtiğiniz proje, uygulamanızı kaydettirdiğiniz projeyle aynı Firebase projesi olmalıdır (bir sonraki adıma bakın).

  3. Firebase konsolunun Uygulama Kontrolü bölümündeki Play Integrity sağlayıcısı ile Uygulama Kontrolü'nü kullanmak için uygulamalarınızı kaydedin. Uygulamanızın imzalama 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.

  4. İsteğe bağlı : Uygulama kaydı 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 ödünleşimlerin farkında olun:

    • Güvenlik: Daha kısa TTL'ler daha güçlü güvenlik sağlar çünkü sızdırılmış veya ele geçirilmiş bir belirtecin bir saldırgan tarafından kötüye kullanılabileceği pencereyi azaltır.
    • Performans: Daha kısa TTL'ler, uygulamanızın daha sık doğrulama 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 sık yeniden doğrulama, kotanızı daha hızlı tüketir ve ücretli hizmetler için potansiyel olarak daha pahalıya mal olur. Kotalar ve sınırlar konusuna bakın.

    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 (app-level) Gradle dosyanızda (genellikle <project>/<app-module>/build.gradle ), App Check Android kitaplığının bağımlılığını ekleyin. Kitaplık sürümü oluşturmayı kontrol etmek için Firebase Android BoM'yi kullanmanızı öneririz.

Java

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:31.1.0')

    // Add the dependency for the App Check library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-appcheck-playintegrity'
}

Firebase Android BoM'yi kullanarak uygulamanız her zaman Firebase Android kitaplıklarının uyumlu sürümlerini kullanır.

(Alternatif) BoM kullanmadan Firebase kitaplık bağımlılıkları ekleyin

Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

Uygulamanızda birden fazla Firebase kitaplığı kullanıyorsanız kitaplık sürümlerini yönetmek için BoM'yi kullanmanızı şiddetle tavsiye ettiğimizi unutmayın; bu, tüm sürümlerin uyumlu olmasını sağlar.

dependencies {
    // Add the dependency for the App Check library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-appcheck-playintegrity:16.1.0'
}

Kotlin+KTX

dependencies {
    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:31.1.0')

    // Add the dependency for the App Check library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-appcheck-playintegrity'
}

Firebase Android BoM'yi kullanarak uygulamanız her zaman Firebase Android kitaplıklarının uyumlu sürümlerini kullanır.

(Alternatif) BoM kullanmadan Firebase kitaplık bağımlılıkları ekleyin

Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

Uygulamanızda birden fazla Firebase kitaplığı kullanıyorsanız kitaplık sürümlerini yönetmek için BoM'yi kullanmanızı şiddetle tavsiye ettiğimizi unutmayın; bu, tüm sürümlerin uyumlu olmasını sağlar.

dependencies {
    // Add the dependency for the App Check library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation 'com.google.firebase:firebase-appcheck-playintegrity:16.1.0'
}

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:

Java

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

Kotlin+KTX

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

Sonraki adımlar

Uygulama Kontrolü kitaplığı uygulamanıza yüklendikten sonra, güncellenen 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 ürünleri, Firebase konsolunun Uygulama Kontrolü bölümünde zorlamayı etkinleştirene kadar belirteçlerin geçerli olmasını gerektirmeyecek.

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

Ancak, yaptırımı etkinleştirmeden önce, bunu yapmanın mevcut meşru 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 hizmetlere ilişkin Uygulama Kontrolü metriklerine bakabilirsiniz:

Uygulama Kontrolü yaptırımı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ü yaptırımını etkinleştirebilirsiniz:

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

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

Android'de Hata Ayıklama Sağlayıcısı ile Uygulama Denetimini Kullanma konusuna bakın.