Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Verifikasi token App Check dari backend khusus

Anda dapat melindungi sumber daya non-Firebase aplikasi Anda, seperti backend yang dihosting sendiri, dengan App Check. Untuk melakukannya, Anda perlu melakukan kedua hal berikut:

  • Ubah klien aplikasi Anda untuk mengirim token App Check bersama setiap permintaan ke backend Anda, seperti yang dijelaskan pada laman untuk iOS+ , Android , dan web .
  • Ubah backend Anda untuk meminta token App Check yang valid dengan setiap permintaan, seperti yang dijelaskan di halaman ini.

Sebelum kamu memulai

Jika Anda belum menginstal Node.js Admin SDK , lakukanlah.

Verifikasi token

Untuk memverifikasi token App Check di backend Anda, tambahkan logika ke endpoint API Anda yang melakukan hal berikut:

  • Periksa apakah setiap permintaan menyertakan token App Check.

  • Verifikasi token App Check menggunakan metode appCheck().verifyToken() Admin SDK.

    Jika verifikasi berhasil, verifyToken() mengembalikan token App Check yang didekodekan. Verifikasi yang berhasil menunjukkan token yang berasal dari aplikasi milik proyek Firebase Anda.

Tolak permintaan apa pun yang gagal dalam pemeriksaan. Misalnya, menggunakan middleware Express.js:

const express = require('express');
const app = express();

const firebaseAdmin = require('firebase-admin');
const firebaseApp = firebaseAdmin.initializeApp();

const appCheckVerification = async (req, res, next) => {
    const appCheckToken = req.header('X-Firebase-AppCheck');

    if (!appCheckToken) {
        res.status(401);
        return next('Unauthorized');
    }

    try {
        const appCheckClaims = await firebaseAdmin.appCheck().verifyToken(appCheckToken);

        // If verifyToken() succeeds, continue with the next middleware
        // function in the stack.
        return next();
    } catch (err) {
        res.status(401);
        return next('Unauthorized');
    }
}

app.get('/yourApiEndpoint', [appCheckVerification], (req, res) => {
    // Handle request.
});