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.