Начните использовать проверку приложений с помощью специального поставщика в веб-приложениях.

На этой странице показано, как включить 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 . SDK App Check обрабатывает кэширование токенов, поэтому всегда получайте новый токен в вашей реализации метода 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 с помощью поставщика отладки в веб-приложениях» .