Używanie Sprawdzania aplikacji przy pomocy dostawcy debugowania

Jeśli po zarejestrowaniu aplikacji w Sprawdzaniu aplikacji chcesz ją uruchomić w środowisku, którego Sprawdzanie aplikacji zwykle nie sklasyfikowałoby jako prawidłowe, takich jak symulator w fazie programowania lub w trybie ciągłej integracji (CI), możesz utworzyć kompilację do debugowania aplikacji wykorzystującą Dostawca debugowania Sprawdzania aplikacji zamiast App Attest.

Użyj dostawcy debugowania w symulatorze

Korzystanie z dostawcy debugowania podczas interaktywnego uruchamiania aplikacji w symulatorze (np. podczas programowania):

  1. Wyszukaj klucz interfejsu iOS API dla swojego projektu na stronie Dane logowania. strony Interfejsy API & Usługi w konsoli Google Cloud.

  2. W kompilacji do debugowania skonfiguruj Sprawdzanie aplikacji tak, aby używało dostawcy debugowania. Za musisz podać klucz interfejsu API otrzymany w poprzednim kroku.

    #if targetEnvironment(simulator)
    GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in
      if let error {
        print("Error configuring `GIDSignIn` for App Check: \(error)")
      }
    }
    #else
    // Configure App Check for production.
    #endif
    
  3. Uruchom aplikację. Gdy zostanie zarejestrowany lokalny token debugowania w konsoli Xcode, pakiet SDK próbuje wysłać żądanie do backendu. Na przykład:

    <Warning> [AppCheckCore][I-GAC004001] App Check debug token:
    '123a4567-b89c-12d3-e456-789012345678'.
    
  4. W sekcji Sprawdzanie aplikacji w konsoli Firebase wybierz Zarządzaj tokenami debugowania na rozszerzone menu. Następnie zarejestruj token debugowania zapisany w poprzednim krok po kroku.

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

Gdy zarejestrujesz token, punkty końcowe OAuth 2.0 Google będą go akceptować jako w Twoim projekcie.

Ponieważ token ten umożliwia dostęp do punktów końcowych uwierzytelniania bez urządzenia, należy zadbać o ich prywatność. Nie zlecaj repozytorium publiczne, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, unieważnij go. od razu w konsoli Firebase.

Używanie dostawcy debugowania w środowisku CI

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

  1. W sekcji Sprawdzanie aplikacji w konsoli Firebase wybierz Zarządzaj tokenami debugowania na rozszerzone menu. Następnie utwórz nowy token debugowania. Potrzebny będzie token kolejny krok.

    Ponieważ ten token umożliwia dostęp do punktów końcowych uwierzytelniania bez prawidłowe urządzenie, należy zadbać o ich prywatność. Nie zlecaj repozytorium publiczne, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, unieważnij go. od razu w konsoli Firebase.

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

  2. Dodaj utworzony przed chwilą token debugowania do bezpiecznego magazynu kluczy systemu CI (na przykład zaszyfrowane obiekty tajne w działaniach GitHub lub zaszyfrowane zmienne Travis CI).

  3. W razie potrzeby skonfiguruj system CI, aby udostępnić token debugowania w środowisku CI jako zmienna środowiskowa. Nazwij zmienną np. APP_CHECK_DEBUG_TOKEN_FROM_CI.

  4. W Xcode dodaj do schematu testowania zmienną środowiskową z nazwą FIRAAppCheckDebugToken i w podobny sposób $(APP_CHECK_DEBUG_TOKEN) jako wartość.

  5. Skonfiguruj skrypt testowy CI tak, aby przekazywał token debugowania jako środowisko . Na przykład:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. Wyszukaj klucz interfejsu iOS API dla swojego projektu na stronie Dane logowania. strony Interfejsy API & Usługi w konsoli Google Cloud.

  7. W kompilacji do debugowania skonfiguruj Sprawdzanie aplikacji tak, aby używało dostawcy debugowania. Za musisz podać klucz interfejsu API otrzymany w poprzednim kroku.

    #if targetEnvironment(simulator)
    GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in
      if let error {
        print("Error configuring `GIDSignIn` for App Check: \(error)")
      }
    }
    #else
    // Configure App Check for production.
    #endif
    

Gdy aplikacja działa w środowisku CI, punkty końcowe OAuth 2.0 Google wysyłanego przez niego tokena jako prawidłowego dla projektu.