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 symulatorze lub na urządzeniu podczas programowania albo 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.
Używanie dostawcy debugowania w środowisku programistycznym
Aby użyć dostawcy debugowania podczas interaktywnego uruchamiania aplikacji (np. w trakcie jej tworzenia):
W kompilacji debugowania przed użyciem jakichkolwiek usług backendu Firebase utwórz i ustaw App Check fabrykę dostawcy debugowania:
Swift
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
Objective-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
Włącz rejestrowanie debugowania w projekcie Xcode (wersja 11.0 lub nowsza):
- Kliknij Product (Produkt) > Scheme (Schemat) > Edit scheme (Edytuj schemat).
- W menu po lewej stronie kliknij Run (Uruchom), a następnie wybierz kartę Arguments (Argumenty).
- W sekcji Arguments Passed on Launch (Argumenty przekazywane przy uruchamianiu) dodaj
-FIRDebugEnabled
.
Uruchom aplikację. Lokalny token debugowania zostanie zarejestrowany, gdy pakiet SDK spróbuje wysłać żądanie do backendu. Przykład:
[Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token: 123a4567-b89c-12d3-e456-789012345678
W sekcji App Check w konsoli Firebase wybierz Zarządzaj tokenami debugowania w menu aplikacji. Następnie zarejestruj token debugowania, za pomocą którego zalogowano się w poprzednim kroku.
Po zarejestrowaniu tokena usługi backendu Firebase będą go akceptować jako prawidłowy.
Ten token umożliwia dostęp do zasobów Firebase bez prawidłowego urządzenia, dlatego musisz zachować go w tajemnicy. Nie przesyłaj go do publicznego repozytorium, a jeśli zarejestrowany token zostanie naruszony, natychmiast go unieważnij w Firebasekonsoli.
Używanie dostawcy debugowania w środowisku CI
Aby użyć dostawcy debugowania w środowisku ciągłej integracji (CI), wykonaj te czynności:
W sekcji App Check w konsoli Firebase wybierz Zarządzaj tokenami debugowania w menu aplikacji. Następnie utwórz nowy token debugowania. Będzie on potrzebny w następnym kroku.
Ten token umożliwia dostęp do zasobów Firebase bez prawidłowego urządzenia, dlatego musisz zachować go w tajemnicy. Nie przesyłaj go do publicznego repozytorium, a jeśli zarejestrowany token zostanie naruszony, natychmiast go unieważnij w Firebasekonsoli.
Dodaj utworzony token debugowania do bezpiecznego magazynu kluczy systemu CI (np. zaszyfrowane klucze tajne w GitHub Actions lub zaszyfrowane zmienne w Travis CI).
W razie potrzeby skonfiguruj system CI, aby udostępnić token debugowania w środowisku CI jako zmienną środowiskową. Nadaj zmiennej nazwę, np.
APP_CHECK_DEBUG_TOKEN_FROM_CI
.W Xcode dodaj do schematu testowania zmienną środowiskową o nazwie
FIRAAppCheckDebugToken
i wartości np.$(APP_CHECK_DEBUG_TOKEN)
.Skonfiguruj skrypt testu CI, aby przekazywał token debugowania jako zmienną środowiskową. Przykład:
xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \ APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
W kompilacji debugowania przed użyciem jakichkolwiek usług backendu Firebase utwórz i ustaw App Check fabrykę dostawcy debugowania:
Swift
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
Objective-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
Gdy aplikacja działa w środowisku CI, usługi backendu Firebase akceptują wysyłany przez nią token jako prawidłowy.