На этой странице показано, как включить App Check в приложении Unity, используя собственный поставщик App Check . Включив App Check , вы гарантируете, что доступ к ресурсам Firebase вашего проекта будет иметь только ваше приложение.
Если вы хотите использовать App Check с поставщиками по умолчанию, см. раздел «Включение App Check с поставщиками по умолчанию в Unity» .
Прежде чем начать
Добавьте Firebase в свой проект Unity, если вы еще этого не сделали.
Реализуйте серверную логику вашего собственного поставщика App Check .
1. Добавьте библиотеку App Check в свое приложение.
Добавьте библиотеку App Check в список зависимостей, следуя инструкциям по настройке App Check.
2. Реализуйте интерфейсы App Check .
Во-первых, вам необходимо создать классы, реализующие интерфейсы IAppCheckProvider и IAppCheckProviderFactory .
В вашем классе AppCheckProvider должен быть метод GetTokenAsync() , который собирает всю необходимую информацию для подтверждения подлинности, требуемую вашим пользовательским поставщиком App Check , и отправляет её в вашу службу получения токенов в обмен на токен App Check . SDK App Check обрабатывает кэширование токенов, поэтому всегда получайте новый токен в вашей реализации метода GetTokenAsync() .
public class YourCustomAppCheckProvider : IAppCheckProvider {
public Task<AppCheckToken> GetTokenAsync() {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
AppCheckToken appCheckToken = new AppCheckToken() {
Token = tokenFromAbove,
ExpireTime = DateTime.UtcNow.AddMinutes(60)
};
return Task<AppCheckToken>.FromResult(appCheckToken);
}
};
Кроме того, реализуйте класс AppCheckProviderFactory , который будет создавать экземпляры вашей реализации AppCheckProvider :
public class YourCustomAppCheckProviderFactory : IAppCheckProviderFactory {
IAppCheckProvider CreateProvider(FirebaseApp app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
3. Инициализация App Check
Добавьте в приложение следующий код инициализации, чтобы он запускался до использования любых других SDK Firebase:
FirebaseAppCheck.SetAppCheckProviderFactory(
new YourCustomAppCheckProviderFactory());
Следующие шаги
После установки библиотеки App Check в ваше приложение, начните распространять обновленное приложение среди пользователей.
Обновленное клиентское приложение начнет отправлять токены App Check вместе с каждым запросом в Firebase, но для продуктов Firebase не потребуется, чтобы токены были действительными, пока вы не включите проверку в разделе App Check консоли Firebase.
Отслеживайте показатели и обеспечьте соблюдение требований.
Однако, прежде чем включать функцию принудительного применения, следует убедиться, что это не нарушит работу существующих законных пользователей. С другой стороны, если вы наблюдаете подозрительное использование ресурсов вашего приложения, возможно, стоит включить функцию принудительного применения раньше.
Чтобы помочь вам принять это решение, вы можете ознакомиться с показателями App Check для используемых вами сервисов:
- Отслеживайте метрики запросов App Check для Firebase AI Logic , Data Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , Google Identity for iOS, Maps JavaScript API и Places API (новая функция).
- Отслеживайте метрики запросов App Check для Cloud Functions .
Включить принудительное выполнение App Check
Когда вы поймете, как App Check повлияет на ваших пользователей, и будете готовы продолжить, вы можете включить принудительное применение App Check :
- Включите App Check ) для Firebase AI Logic , Data Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , Google Identity for iOS, Maps JavaScript API и Places API (новая функция).
- Включите принудительное применение App Check для Cloud Functions .
Используйте App Check в средах отладки.
Если после регистрации вашего приложения в App Check вы хотите запустить его в среде, которую App Check обычно не классифицирует как допустимую, например, в эмуляторе во время разработки или в среде непрерывной интеграции (CI), вы можете создать отладочную сборку вашего приложения, которая использует отладочный поставщик App Check вместо реального поставщика аттестации.
См. раздел «Использование App Check с помощью отладчика в Unity» .