Używanie Sprawdzania aplikacji z dostawcą debugowania w aplikacjach internetowych

Gdy włączysz App Check w usłudze backendu, funkcje aplikacji, które zależą od tej usługi backendu, nie będą działać w środowisku localhost ani w trybie ciągłej integracji (CI), ponieważ te środowiska nie są uznawane za prawidłowe urządzenia. Aby uruchamiać aplikację w tych środowiskach podczas programowania i testowania, musisz utworzyć kompilację debugowania aplikacji, która używa App Check dostawcy debugowania zamiast dostawcy atestów produkcyjnych.

Używanie dostawcy debugowania w środowisku localhost

Oto jak używać dostawcy debugowania podczas uruchamiania aplikacji z localhost (np. podczas lokalnego programowania):

  1. W kompilacji do debugowania włącz tryb debugowania, ustawiając self.FIREBASE_APPCHECK_DEBUG_TOKEN na true przed zainicjowaniem App Check. Przykład:

    Web

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

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. Otwórz lokalnie aplikację internetową i narzędzia dla deweloperów w przeglądarce. 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. Zarejestruj token debugowania w App Check:

    1. W konsoli Firebase otwórz kartę Zabezpieczenia > Sprawdzanie aplikacji > Aplikacje.

    2. Znajdź swoją aplikację, kliknij rozszerzone menu z trzema kropkami (), a następnie wybierz Zarządzaj tokenami debugowania.

    3. Aby zarejestrować token debugowania, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.

    Zrzut ekranu z pozycją menu Zarządzaj tokenami debugowania w konsoli Firebase

Gdy zarejestrujesz token w App Check, usługi backendowe będą go akceptować jako prawidłowy.

Ten token umożliwia dostęp do usług backendowych bez prawidłowego urządzenia, dlatego musisz go chronić. **_Nie_** przesyłaj go do publicznego repozytorium ani nie dołączaj go do kompilacji produkcyjnych aplikacji. Jeśli zarejestrowany token zostanie naruszony, natychmiast usuń go za pomocą opcji **Zarządzaj tokenami debugowania** w konsoli Firebase.

Ten token jest przechowywany lokalnie w 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żywać tokena w innej przeglądarce lub na innym komputerze, ustaw self.FIREBASE_APPCHECK_DEBUG_TOKEN na ciąg tokena zamiast true.

Używanie dostawcy debugowania w środowisku CI

Oto jak używać dostawcy debugowania w trybie ciągłej integracji (CI):

  1. W konsoli Firebase utwórz token debugowania:

    1. W konsoli Firebase otwórz kartę Zabezpieczenia > Sprawdzanie aplikacji > Aplikacje.

    2. Znajdź swoją aplikację, kliknij rozszerzone menu z trzema kropkami (), a następnie wybierz Zarządzaj tokenami debugowania.

    3. Aby utworzyć nowy token debugowania, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.

    Ten token umożliwia dostęp do usług backendowych bez prawidłowego urządzenia, dlatego musisz go chronić. **_Nie_** przesyłaj go do publicznego repozytorium ani nie dołączaj go do kompilacji produkcyjnych aplikacji. Jeśli zarejestrowany token zostanie naruszony, natychmiast usuń go za pomocą opcji **Zarządzaj tokenami debugowania** w konsoli Firebase.

    Zrzut ekranu przedstawiający pozycję menu Zarządzaj tokenami debugowania

  2. Dodaj utworzony token debugowania do bezpiecznego magazynu kluczy systemu CI (np. zaszyfrowanych tajnych danych GitHub Actions lub zaszyfrowanych zmiennych Travis CI ).

  3. W razie potrzeby skonfiguruj system CI tak, aby token debugowania był dostępny w środowisku CI jako zmienna środowiskowa. Nazwij zmienną np. APP_CHECK_DEBUG_TOKEN_FROM_CI.

  4. W kompilacji do debugowania włącz tryb debugowania, ustawiając self.FIREBASE_APPCHECK_DEBUG_TOKEN na wartość zmiennej środowiskowej tokena debugowania przed zaimportowaniem App Check. Przykład:

    Web

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

    Web

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

Gdy aplikacja będzie działać w środowisku CI, usługi backendowe będą akceptować wysyłany przez nią token jako prawidłowy.