เริ่มต้นใช้งาน App Check กับผู้ให้บริการที่กำหนดเองบนเว็บแอป

หน้านี้จะแสดงวิธีเปิดใช้ App Check ในเว็บแอปโดยใช้ผู้ให้บริการ App Check ที่กําหนดเอง เมื่อเปิดใช้ App Check จะเป็นการช่วยตรวจสอบว่ามีเพียงแอปของคุณเท่านั้นที่เข้าถึงทรัพยากร Firebase ของโปรเจ็กต์ได้

หากต้องการใช้ App Check กับผู้ให้บริการในตัว โปรดดูเอกสารสำหรับ App Check กับ reCAPTCHA Enterprise

ก่อนเริ่มต้น

1. เพิ่มคลัง App Check ลงในแอป

เพิ่ม Firebase ไปยังเว็บแอป หากยังไม่ได้ดำเนินการ อย่าลืมนําเข้าคลัง App Check

2. สร้างออบเจ็กต์ผู้ให้บริการ App Check

สร้างออบเจ็กต์ผู้ให้บริการ App Check สําหรับผู้ให้บริการที่กําหนดเอง ออบเจ็กต์นี้ต้องมีเมธอด getToken() ซึ่งจะรวบรวมข้อมูลใดก็ตามที่ผู้ให้บริการ App Check ที่กําหนดเองต้องการใช้เป็นหลักฐานยืนยันตัวตน และส่งไปยังบริการรับโทเค็นเพื่อแลกกับโทเค็น App Check App Check SDK จะจัดการแคชโทเค็น ดังนั้นให้รับโทเค็นใหม่เสมอในการใช้งาน getToken()

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. เริ่มต้น App Check

เพิ่มโค้ดการเริ่มต้นต่อไปนี้ลงในแอปพลิเคชันก่อนเข้าถึงบริการ 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);

ขั้นตอนถัดไป

เมื่อติดตั้งไลบรารี App Check ในแอปแล้ว ให้ทำให้ใช้งานได้

แอปไคลเอ็นต์ที่อัปเดตแล้วจะเริ่มส่งโทเค็น App Check พร้อมกับคำขอทั้งหมดที่ส่งไปยัง Firebase แต่ผลิตภัณฑ์ Firebase จะไม่กำหนดให้โทเค็นต้องถูกต้องจนกว่าคุณจะเปิดใช้การบังคับใช้ในส่วน App Check ของคอนโซล Firebase

ตรวจสอบเมตริกและเปิดใช้การบังคับใช้

อย่างไรก็ตาม ก่อนที่จะเปิดใช้การบังคับใช้ คุณควรตรวจสอบว่าการดำเนินการดังกล่าวจะไม่รบกวนผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปที่น่าสงสัย คุณอาจต้องเปิดใช้การบังคับใช้เร็วขึ้น

คุณดูเมตริก App Check ของบริการที่ใช้อยู่เพื่อช่วยในการตัดสินใจนี้ได้ ดังนี้

เปิดใช้การบังคับใช้ App Check

เมื่อเข้าใจว่า App Check จะส่งผลต่อผู้ใช้อย่างไรและพร้อมที่จะดำเนินการต่อแล้ว ให้เปิดใช้การบังคับใช้ App Check โดยทำดังนี้

ใช้ App Check ในสภาพแวดล้อมการแก้ไขข้อบกพร่อง

หากหลังจากลงทะเบียนแอปสำหรับ App Check แล้ว คุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่ปกติแล้ว App Check จะไม่จัดประเภทว่าถูกต้อง เช่น ในพื้นที่ระหว่างการพัฒนา หรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสามารถสร้างบิลด์แก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่องของ App Check แทนผู้ให้บริการยืนยันตัวตนจริง

โปรดดูหัวข้อใช้ App Check กับผู้ให้บริการแก้ไขข้อบกพร่องในเว็บแอป