Halaman ini menunjukkan cara mengaktifkan App Check di aplikasi web menggunakan penyedia App Check kustom. Mengaktifkan App Check akan membantu memastikan bahwa hanya aplikasi Anda yang dapat mengakses resource Firebase project Anda.
Jika Anda ingin menggunakan App Check dengan salah satu penyedia bawaan, lihat dokumen untuk App Check dengan reCAPTCHA Enterprise.
Sebelum memulai
Tambahkan Firebase ke project JavaScript jika Anda belum melakukannya.
1. Tambahkan library App Check ke aplikasi Anda
Tambahkan Firebase ke aplikasi web jika Anda belum melakukannya. Pastikan untuk mengimpor library App Check.
2. Buat objek penyedia App Check
Buat objek penyedia App Check untuk penyedia kustom Anda. Objek ini harus memiliki metode getToken()
, yang mengumpulkan semua informasi yang diperlukan oleh penyedia App Check kustom Anda sebagai bukti keaslian, lalu mengirimkannya ke layanan akuisisi token Anda sebagai pengganti token App Check. App Check SDK menangani penyimpanan token ke dalam cache, jadi selalu dapatkan token baru dalam penerapan getToken()
Anda.
Web
import { CustomProvider } from "firebase/app-check"; const appCheckCustomProvider = new CustomProvider({ getToken: () => { return new Promise((resolve, _reject) => { // TODO: Logic to exchange proof of authenticity for an App Check token and // expiration time. // ... const appCheckToken = { token: tokenFromServer, expireTimeMillis: expirationFromServer * 1000 }; resolve(appCheckToken); }); } });
Web
const appCheckCustomProvider = { getToken: () => { return new Promise((resolve, _reject) => { // TODO: Logic to exchange proof of authenticity for an App Check token and // expiration time. // ... const appCheckToken = { token: tokenFromServer, expireTimeMillis: expirationFromServer * 1000 }; resolve(appCheckToken); }); } };
3. Lakukan inisialisasi App Check
Tambahkan kode inisialisasi berikut ke aplikasi Anda sebelum mengakses layanan Firebase:
Web
import { initializeApp } from "firebase/app"; import { initializeAppCheck } from "firebase/app-check"; const app = initializeApp({ // Your firebase configuration object }); const appCheck = initializeAppCheck(app, { provider: appCheckCustomProvider, // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. isTokenAutoRefreshEnabled: true });
Web
firebase.initializeApp({ // Your firebase configuration object }); const appCheck = firebase.appCheck(); appCheck.activate( appCheckCustomProvider, // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. true);
Langkah berikutnya
Setelah library App Check diinstal di aplikasi Anda, deploy library tersebut.
Aplikasi klien yang telah diupdate akan mulai mengirimkan token App Check beserta setiap permintaan yang dibuatnya ke Firebase. Namun, sebelum Anda mengaktifkan penerapan di bagian App Check pada Firebase console, token tersebut tidak harus valid untuk produk Firebase.
Memantau metrik dan mengaktifkan penerapan
Sebelum mengaktifkan penerapan, Anda harus memastikan bahwa tindakan tersebut tidak akan mengganggu pengguna sah yang sudah ada. Di sisi lain, jika Anda melihat penggunaan resource aplikasi yang mencurigakan, sebaiknya segera aktifkan penerapan.
Demi membantu mengambil keputusan ini, Anda dapat melihat metrik App Check untuk layanan yang Anda gunakan:
- Pantau metrik permintaan App Check untuk Realtime Database, Cloud Firestore, Cloud Storage, Authentication (beta), dan Vertex AI in Firebase.
- Pantau metrik permintaan App Check untuk Cloud Functions.
Mengaktifkan penerapan App Check
Setelah memahami pengaruh App Check terhadap pengguna dan siap melanjutkan, Anda dapat mengaktifkan penerapan App Check:
- Aktifkan penerapan App Check untuk Realtime Database, Cloud Firestore, Cloud Storage, Authentication (beta), dan Vertex AI in Firebase.
- Aktifkan penerapan App Check untuk Cloud Functions.
Menggunakan App Check di lingkungan debug
Jika Anda telah mendaftarkan aplikasi untuk App Check dan ingin menjalankan aplikasi di lingkungan yang biasanya tidak akan diklasifikasikan sebagai valid oleh App Check, seperti secara lokal selama pengembangan atau dari lingkungan continuous integration (CI), Anda dapat membuat build debug aplikasi yang menggunakan penyedia debug App Check, bukan penyedia pengesahan sungguhan.
Lihat Menggunakan App Check dengan penyedia debug di aplikasi web.