Pierwsze kroki z funkcją Sprawdzanie aplikacji w aplikacjach Flutter

Z tej strony dowiesz się, jak włączyć Sprawdzanie aplikacji w aplikacji Flutter przy użyciu dostawcy domyślny: Play Integrity na Androidzie, Sprawdzanie urządzeń na platformach Apple; reCAPTCHA w wersji 3 w przeglądarce. Włączenie Sprawdzania aplikacji pozwala upewnić się, dostęp do zasobów Firebase projektu ma tylko Twoja aplikacja. Zobacz Omówienie tej funkcji.

1. Skonfiguruj projekt Firebase

  1. Zainstaluj i zainicjuj FlutterFire, jeśli jeszcze tego nie zrobiłeś. jeśli już to zrobili.

  2. Zarejestruj swoje aplikacje, aby używać Sprawdzania aplikacji za pomocą dostawców Play Integrity, Sprawdzanie urządzenia i reCAPTCHA w Ustawienia projektu > Sprawdzanie aplikacji w konsoli Firebase.

    Zwykle konieczne jest zarejestrowanie wszystkich aplikacji związanych z projektem, ponieważ włączenie egzekwowania zasad w przypadku usługi Firebase, tylko zarejestrowane aplikacje będą mogły na dostęp do zasobów backendu usługi.

  3. Opcjonalnie: w ustawieniach rejestracji aplikacji ustaw niestandardowy czas życia danych (TTL) tokenów Sprawdzania aplikacji wystawionych przez dostawcę. Możesz ustawić wartość TTL na dowolną wartość z zakresu od 30 minut do 7 dni. Zmieniając tę wartość, pamiętaj o tych wadach:

    • Bezpieczeństwo: krótsze wartości TTL zapewniają silniejsze zabezpieczenia, ponieważ zmniejszają okno, w którym ujawniony lub przechwycony token może zostać wykorzystany przez atakującego.
    • Wydajność: krótsze wartości TTL oznaczają większą wydajność atestu aplikacji często. Ponieważ proces poświadczania aplikacji zwiększa opóźnienie sieci. żądań przy każdym wykonaniu, krótki czas TTL może wpływać na wydajność Twojej aplikacji.
    • Limit i koszt: krótsze wartości TTL i częsta ponowna atestacja powodują wyczerpywanie się przyśpieszać limity, a w przypadku usług płatnych może to być wyższe. Zobacz Limity i .

    Domyślna wartość TTL jest rozsądny w przypadku większości aplikacji. Pamiętaj, że biblioteka Sprawdzania aplikacji jest odświeżana. tokeny z mniej więcej połowę czasu TTL.

2. Dodawanie biblioteki Sprawdzania aplikacji do aplikacji

  1. Aby zainstalować wtyczkę, w katalogu głównym projektu Flutter uruchom to polecenie:

    flutter pub add firebase_app_check
    
  2. Po zakończeniu ponownie skompiluj aplikację Flutter:

    flutter run
    

3. Inicjowanie Sprawdzania aplikacji

Dodaj ten kod inicjowania do swojej aplikacji, aby uruchamiała się przed korzystać z dowolnych usług Firebase, takich jak Storage, ale po wywołaniu 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());
}

Dalsze kroki

Gdy zainstalujesz w aplikacji bibliotekę Sprawdzanie aplikacji, zacznij rozpowszechniać zaktualizowane aplikacje.

Zaktualizowana aplikacja kliencka zacznie wysyłać tokeny Sprawdzania aplikacji i wysyła żądania do Firebase, ale usługi Firebase nie będą wymagać tokenów będzie ważne do momentu włączenia wymuszania w sekcji Sprawdzanie aplikacji konsoli Firebase.

Monitorowanie wskaźników i włączanie wymuszania

Zanim jednak włączysz wymuszanie, upewnij się, że nie zakłócać działanie istniejących prawidłowych użytkowników. Z drugiej strony, jeśli widzisz podejrzane wykorzystanie zasobów aplikacji, warto włączyć wymuszanie szybciej.

W podjęciu tej decyzji mogą pomóc dane funkcji Sprawdzanie aplikacji używanych usług:

Włącz wymuszanie Sprawdzania aplikacji

Gdy zrozumiesz, jak Sprawdzanie aplikacji wpłynie na Twoich użytkowników, możesz zacząć możesz włączyć wymuszanie Sprawdzania aplikacji:

Używanie Sprawdzania aplikacji w środowiskach debugowania

Jeśli po zarejestrowaniu aplikacji w Sprawdzaniu aplikacji chcesz ją uruchomić w środowisku, którego Sprawdzanie aplikacji zwykle nie sklasyfikowałoby jako prawidłowe, np. za pomocą emulatora w trakcie programowania lub w ramach integracji ciągłej (CI) możesz utworzyć kompilację do debugowania aplikacji wykorzystującą dostawca debugowania Sprawdzania aplikacji zamiast prawdziwego dostawcy atestu;

Zapoznaj się z artykułem na temat używania Sprawdzania aplikacji z dostawcą debugowania w aplikacjach Flutter.