Lihat yang baru dari Firebase di Google I/O 2022. Pelajari lebih lanjut

Mulai menggunakan App Check di aplikasi Flutter

Halaman ini menunjukkan cara mengaktifkan App Check di aplikasi Flutter, menggunakan penyedia default: Play Integrity di Android, Device Check di platform Apple, dan reCAPTCHA v3 di web. Saat mengaktifkan App Check, Anda membantu memastikan bahwa hanya aplikasi Anda yang dapat mengakses sumber daya Firebase proyek Anda. Lihat Ikhtisar fitur ini.

1. Siapkan proyek Firebase Anda

  1. Instal dan inisialisasi FlutterFire jika Anda belum melakukannya.

  2. Daftarkan aplikasi Anda untuk menggunakan App Check dengan penyedia Play Integrity, Device Check, dan reCAPTCHA di bagian Project Settings > App Check di Firebase console.

    Anda biasanya perlu mendaftarkan semua aplikasi proyek Anda, karena setelah Anda mengaktifkan penerapan untuk produk Firebase, hanya aplikasi terdaftar yang dapat mengakses sumber daya backend produk.

  3. Opsional : Dalam pengaturan pendaftaran aplikasi, atur waktu-untuk-langsung (TTL) khusus untuk token Pemeriksaan Aplikasi yang dikeluarkan oleh penyedia. Anda dapat mengatur TTL ke nilai apa pun antara 30 menit dan 7 hari. Saat mengubah nilai ini, perhatikan pengorbanan berikut:

    • Keamanan: TTL yang lebih pendek memberikan keamanan yang lebih kuat, karena mengurangi jendela di mana token yang bocor atau dicegat dapat disalahgunakan oleh penyerang.
    • Performa: TTL yang lebih pendek berarti aplikasi Anda akan melakukan pengesahan lebih sering. Karena proses pengesahan aplikasi menambahkan latensi ke permintaan jaringan setiap kali dilakukan, TTL singkat dapat memengaruhi kinerja aplikasi Anda.
    • Kuota dan biaya: TTL yang lebih pendek dan pengesahan ulang yang sering menghabiskan kuota Anda lebih cepat, dan untuk layanan berbayar, berpotensi lebih mahal. Lihat Kuota & batas .

    TTL default masuk akal untuk sebagian besar aplikasi. Perhatikan bahwa pustaka App Check menyegarkan token kira-kira setengah dari durasi TTL.

2. Tambahkan perpustakaan App Check ke aplikasi Anda

  1. Dari root proyek Flutter Anda, jalankan perintah berikut untuk menginstal plugin:

    flutter pub add firebase_app_check
    
  2. Setelah selesai, bangun kembali aplikasi Flutter Anda:

    flutter run
    

3. Inisialisasi Pemeriksaan Aplikasi

Tambahkan kode inisialisasi berikut ke aplikasi Anda agar dapat berjalan sebelum Anda menggunakan layanan Firebase seperti Storage, tetapi setelah memanggil 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(
    webRecaptchaSiteKey: '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,
  );
  runApp(App());
}

Langkah selanjutnya

Setelah pustaka App Check dipasang di aplikasi Anda, mulailah mendistribusikan aplikasi yang diperbarui kepada pengguna Anda.

Aplikasi klien yang diperbarui akan mulai mengirimkan token App Check bersama dengan setiap permintaan yang dibuatnya ke Firebase, tetapi produk Firebase tidak akan mengharuskan token valid sampai Anda mengaktifkan penerapan di bagian App Check di Firebase console.

Pantau metrik dan aktifkan penegakan

Namun, sebelum Anda mengaktifkan penegakan, Anda harus memastikan bahwa hal itu tidak akan mengganggu pengguna sah Anda yang sudah ada. Di sisi lain, jika Anda melihat penggunaan sumber daya aplikasi yang mencurigakan, Anda mungkin ingin mengaktifkan penegakan lebih cepat.

Untuk membantu membuat keputusan ini, Anda dapat melihat metrik Pemeriksaan Aplikasi untuk layanan yang Anda gunakan:

Aktifkan penegakan Pemeriksaan Aplikasi

Saat Anda memahami bagaimana App Check akan memengaruhi pengguna Anda dan Anda siap untuk melanjutkan, Anda dapat mengaktifkan penerapan App Check:

Gunakan App Check di lingkungan debug

Jika, setelah Anda mendaftarkan aplikasi untuk App Check, Anda ingin menjalankan aplikasi di lingkungan yang biasanya tidak diklasifikasikan sebagai valid oleh App Check, seperti emulator selama pengembangan, atau dari lingkungan continuous integration (CI), Anda dapat buat build debug aplikasi Anda yang menggunakan penyedia debug App Check alih-alih penyedia pengesahan nyata.

Lihat Menggunakan Pemeriksaan Aplikasi dengan penyedia debug di aplikasi Flutter .