Korzystaj z funkcji App Check z dostawcą debugowania w aplikacjach internetowych

Jeśli po zarejestrowaniu aplikacji do kontroli aplikacji chcesz uruchomić aplikację w środowisku, którego kontrola aplikacji normalnie nie sklasyfikowałaby jako ważne, na przykład lokalnie podczas opracowywania lub ze środowiska ciągłej integracji (CI), możesz utworzyć kompilacja debugowania Twojej aplikacji, która używa dostawcy debugowania sprawdzania aplikacji zamiast prawdziwego dostawcy zaświadczeń.

Użyj dostawcy debugowania na localhost

Aby użyć dostawcy debugowania podczas uruchamiania aplikacji z localhost (na przykład podczas programowania), wykonaj następujące czynności:

  1. W kompilacji debugowania włącz tryb debugowania, ustawiając self.FIREBASE_APPCHECK_DEBUG_TOKEN na true przed zainicjowaniem sprawdzania aplikacji. Na przykład:

    Modułowy interfejs API sieci Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    Internetowy interfejs API z przestrzenią nazw

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. Odwiedź swoją aplikację internetową lokalnie i otwórz narzędzie programistyczne przeglądarki. W konsoli debugowania zobaczysz token debugowania:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. W sekcji Sprawdzanie aplikacji w konsoli Firebase wybierz Zarządzaj tokenami debugowania z przepełnionego menu aplikacji. Następnie zarejestruj token debugowania, który zarejestrowałeś w poprzednim kroku.

    Zrzut ekranu przedstawiający element menu Zarządzaj tokenami debugowania

Po zarejestrowaniu tokena usługi zaplecza Firebase zaakceptują go jako ważny.

Ponieważ ten token umożliwia dostęp do zasobów Firebase bez ważnego urządzenia, ważne jest, aby zachować go jako prywatny. Nie przesyłaj go do publicznego repozytorium, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, natychmiast odwołaj go w konsoli Firebase.

Ten token jest przechowywany lokalnie w Twojej przeglądarce i będzie używany za każdym razem, gdy będziesz korzystać z aplikacji w tej samej przeglądarce na tym samym komputerze. Jeśli chcesz użyć tokenu w innej przeglądarce lub na innym komputerze, ustaw self.FIREBASE_APPCHECK_DEBUG_TOKEN na ciąg tokenu zamiast true .

Użyj dostawcy debugowania w środowisku CI

Aby użyć dostawcy debugowania w środowisku ciągłej integracji (CI), wykonaj następujące czynności:

  1. W sekcji Sprawdzanie aplikacji w konsoli Firebase wybierz Zarządzaj tokenami debugowania z przepełnionego menu aplikacji. Następnie utwórz nowy token debugowania. W następnym kroku będziesz potrzebować tokena.

    Ponieważ ten token umożliwia dostęp do zasobów Firebase bez ważnego urządzenia, ważne jest, aby zachować go jako prywatny. Nie przesyłaj go do publicznego repozytorium, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, natychmiast odwołaj go w konsoli Firebase.

    Zrzut ekranu przedstawiający element menu Zarządzaj tokenami debugowania

  2. Dodaj właśnie utworzony token debugowania do bezpiecznego magazynu kluczy systemu CI (na przykład zaszyfrowane klucze GitHub Actions lub zaszyfrowane zmienne Travis CI).

  3. W razie potrzeby skonfiguruj swój system CI, aby token debugowania był dostępny w środowisku CI jako zmienna środowiskowa. Nazwij zmienną na przykład APP_CHECK_DEBUG_TOKEN_FROM_CI .

  4. W kompilacji debugowania włącz tryb debugowania, ustawiając self.FIREBASE_APPCHECK_DEBUG_TOKEN na wartość zmiennej środowiskowej tokenu debugowania przed zaimportowaniem Sprawdzania aplikacji. Na przykład:

    Modułowy interfejs API sieci Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    Internetowy interfejs API z przestrzenią nazw

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

Gdy Twoja aplikacja działa w środowisku CI, usługi zaplecza Firebase zaakceptują wysłany token jako prawidłowy.