Flutter uygulamalarında Uygulama Kontrolü'nü kullanmaya başlama

Bu sayfada, Flutter uygulamasında Uygulama Kontrolü'nün varsayılan sağlayıcılar: Android'de Play Integrity, Apple platformlarında Cihaz Kontrolü ve Web'de reCAPTCHA s3. Uygulama Kontrolü'nü etkinleştirerek projenizin Firebase kaynaklarına yalnızca uygulamanız erişebilir. Bkz. Bu özelliğe genel bakış.

1. Firebase projenizi oluşturun

  1. Henüz yapmadıysanız FlutterFire'ı yükleme ve başlatma olabilir.

  2. Play Integrity, Cihaz Kontrolü ve reCAPTCHA sağlayıcılarıyla Uygulama Kontrolü'nü kullanmak için uygulamalarınızı Proje Ayarları > Uygulama Kontrolü bölümündeki talimatları uygulayın.

    Genellikle projenizdeki tüm uygulamaları kaydetmeniz gerekir çünkü bir kez bir Firebase ürünü için zorunlu kılmayı etkinleştirdiğinizde, yalnızca kayıtlı uygulamalar arka uç kaynaklarına erişmek için kullanılabilir.

  3. İsteğe bağlı: Uygulama kayıt ayarlarında özel bir geçerlilik süresi ayarlayın. (TTL) - sağlayıcı tarafından verilen Uygulama Kontrolü jetonları için. TTL'yi 30 dakika ile 7 gün arasında herhangi bir değere ayarlayabilirsiniz. Bu değeri değiştirirken, dikkate almanız gerekir:

    • Güvenlik: Daha kısa TTL'ler daha güçlü güvenlik sağlar, çünkü bir jetonun sızdırıldığı veya ele geçirildiği bir pencerenin ele alacağız.
    • Performans: Daha kısa TTL'ler, uygulamanızın onay sürecini daha fazla yapacağı anlamına gelir. alabilir. Uygulama onay işlemi, ağa gecikmeyi eklediğinden her gerçekleştirildiğinde kısa bir TTL, performansı etkileyebilir. en iyi yoludur.
    • Kota ve maliyet: Daha kısa TTL'ler ve sık yapılan yeniden onay süreleri daha hızlı sunmamızı sağlar ve ücretli hizmetler için maliyeti daha yüksek olabilir. Bkz. Kotalar ve kontrol edin.

    Varsayılan TTL çoğu uygulama için makul bir değerdir. Uygulama Kontrolü kitaplığının yenilendiğini unutmayın jeton sayısını TTL'nin yaklaşık yarısına kadar uzatabilirsiniz.

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

  1. Flutter projenizin kök dizininden aşağıdaki komutu çalıştırarak eklentiyi yükleyin:

    flutter pub add firebase_app_check
    
  2. Ardından Flutter uygulamanızı yeniden derleyin:

    flutter run
    

3. Uygulama Kontrolü'nü Başlat

Siz yüklemeden önce çalışması için aşağıdaki ilk kullanıma hazırlama kodunu uygulamanıza ekleyin Storage gibi Firebase hizmetlerini kullanıyor ancak Firebase.initializeApp();

import 'package:flutter/material.dart';
import 'package:firebase_core/firebase_core.dart';

// Import the firebase_app_check plugin
import 'package:firebase_app_check/firebase_app_check.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  await FirebaseAppCheck.instance.activate(
    // You can also use a `ReCaptchaEnterpriseProvider` provider instance as an
    // argument for `webProvider`
    webProvider: ReCaptchaV3Provider('recaptcha-v3-site-key'),
    // Default provider for Android is the Play Integrity provider. You can use the "AndroidProvider" enum to choose
    // your preferred provider. Choose from:
    // 1. Debug provider
    // 2. Safety Net provider
    // 3. Play Integrity provider
    androidProvider: AndroidProvider.debug,
    // Default provider for iOS/macOS is the Device Check provider. You can use the "AppleProvider" enum to choose
        // your preferred provider. Choose from:
        // 1. Debug provider
        // 2. Device Check provider
        // 3. App Attest provider
        // 4. App Attest provider with fallback to Device Check provider (App Attest provider is only available on iOS 14.0+, macOS 14.0+)
    appleProvider: AppleProvider.appAttest,
  );
  runApp(App());
}

Sonraki adımlar

Uygulama Kontrolü kitaplığı uygulamanıza yüklendikten sonra, uygulamayı kullanıcılarınıza güncelleyin.

Güncellenen istemci uygulaması, Firebase'e istek gönderir, ancak Firebase ürünleri için jeton gerekmez Firebase konsolu.

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

Ancak, zorunlu kılmayı etkinleştirmeden önce, bu işlemin Mevcut güvenli kullanıcılarınızı kesintiye uğratabilir. Öte yandan, benzer bir Uygulama kaynaklarınızın şüpheli kullanımı durumunda, zorunlu kılma ayarını etkinleştirerek gerekir.

Bu kararı vermenize yardımcı olmak için hizmetler:

Uygulama Kontrolü'nün zorunlu kılınmasını etkinleştir

Uygulama Kontrolü'nün kullanıcılarınızı nasıl etkileyeceğini anladığınızda Devam ederseniz Uygulama Kontrolü'nün zorunlu kılınmasını etkinleştirebilirsiniz:

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

Uygulamanızı Uygulama Kontrolü'ne kaydettikten sonra Uygulama Kontrolü'nün normalde geçerli olarak sınıflandıramadığı bir ortamda bulunması Örneğin, geliştirme sırasında emülatör veya sürekli entegrasyon (CI) aracılığıyla uygulamanızın hata ayıklama derlemesini oluşturmak için Gerçek bir onay sağlayıcısı yerine Uygulama Kontrolü hata ayıklama sağlayıcısı

Flutter uygulamalarında hata ayıklama sağlayıcısıyla Uygulama Kontrolü'nü kullanma başlıklı makaleye göz atın.