Zacznij korzystać ze Sprawdzania aplikacji od dostawcy niestandardowego w C++

Na tej stronie dowiesz się, jak włączyć App Check w aplikacji w C++ przy użyciu własnego dostawcy App Check. Gdy włączysz App Check, masz pewność, że tylko Twoja aplikacja będzie mieć dostęp do zasobów Firebase w projekcie.

Jeśli chcesz używać App Check z domyślnymi dostawcami, przeczytaj artykuł Włączanie App Check z domyślnymi dostawcami za pomocą C++.

Zanim zaczniesz

1. Dodawanie biblioteki App Check do aplikacji

Dodaj bibliotekę Sprawdzania aplikacji do zestawu zależności, postępując zgodnie z instrukcjami konfiguracji.

2. Zaimplementuj interfejsy App Check

Najpierw musisz utworzyć klasy, które implementują interfejsy AppCheckProvider i AppCheckProviderFactory.

Twoja klasa AppCheckProvider musi mieć metodę GetToken(), która zbiera wszelkie informacje wymagane przez niestandardowego dostawcę App Check jako dowód autentyczności i wysyła je do usługi uzyskiwania tokenów w zamian za token App Check. Pakiet SDK App Check obsługuje buforowanie tokenów, więc w implementacji funkcji GetToken() zawsze pobieraj nowy token.

class YourCustomAppCheckProvider : public AppCheckProvider {
  void GetToken(std::function<void(AppCheckToken, int, const std::string&)>
      completion_callback) {
    // Logic to exchange proof of authenticity for an App Check token and
    //   expiration time.
    // ...

    // Create AppCheckToken object.
    AppCheckToken appCheckToken;
    appCheckToken.token = token;
    appCheckToken.expire_time_millis = expireTime;

    completion_callback(appCheckToken, 0, "");

    // Or, if needing to return an error
    //completion_callback({}, error_code, "Error description");
  }
};

Zaimplementuj też klasę AppCheckProviderFactory, która tworzy instancje implementacji AppCheckProvider:

class YourCustomAppCheckProviderFactory : public AppCheckProviderFactory {
  AppCheckProvider* CreateProvider(App* app) {
    // Create and return an AppCheckProvider object.
    return new YourCustomAppCheckProvider(app);
  }
}

3. Zainicjuj App Check

Dodaj do aplikacji poniższy kod inicjalizacji, aby był uruchamiany przed użyciem innych pakietów SDK Firebase:

firebase::app_check::AppCheck::SetAppCheckProviderFactory(
    YourCustomAppCheckProviderFactory::GetInstance());

Dalsze kroki

Po zainstalowaniu biblioteki App Check w aplikacji zacznij rozpowszechniać zaktualizowaną aplikację wśród użytkowników.

Zaktualizowana aplikacja kliencka zacznie wysyłać tokeny App Check wraz z każdym żądaniem wysyłanym do Firebase, ale usługi Firebase nie będą wymagać, aby tokeny były ważne, dopóki nie włączysz egzekwowania w sekcji App Check konsoli Firebase.

Monitorowanie danych i włączanie egzekwowania

Zanim jednak włączysz egzekwowanie, upewnij się, że nie zakłóci to działania obecnych, legalnych użytkowników. Jeśli jednak zauważysz podejrzane wykorzystanie zasobów aplikacji, możesz włączyć egzekwowanie wcześniej.

Aby podjąć decyzję, możesz sprawdzić dane App Check dotyczące usług, z których korzystasz:

Włączanie wymuszania App Check

Gdy zrozumiesz, jak App Check wpłynie na Twoich użytkowników, i będziesz gotowy(-a) do kontynuowania, możesz włączyć egzekwowanie App Check:

Używanie App Check w środowiskach debugowania

Jeśli po zarejestrowaniu aplikacji w App Check chcesz uruchomić ją w środowisku, które App Check zwykle nie klasyfikuje jako prawidłowe, np. w emulatorze podczas programowania lub w środowisku ciągłej integracji (CI), możesz utworzyć wersję debugowania aplikacji, która zamiast prawdziwego dostawcy atestów używa dostawcy debugowania App Check.

Zobacz Używanie funkcji App Check z dostawcą debugowania w C++.