Pierwsze kroki w Sprawdzaniu aplikacji pod kątem Logowania przez Google na iOS

Na tej stronie pokazujemy, jak włączyć Sprawdzanie aplikacji w aplikacji na iOS. Włączenie tej funkcji pomaga zapewnić, że tylko aplikacja ma dostęp do punktów końcowych OAuth 2.0 Google w imieniu Twojego projektu. Zobacz Omówienie tej funkcji.

Sprawdzanie aplikacji używa App Attest do weryfikowania, czy żądania OAuth 2.0 pochodzą z autentycznej aplikacji. Sprawdzanie aplikacji nie używa App Attest do analizowania ryzyka oszustwa.

Zanim zaczniesz

  1. Upewnij się, że masz Xcode 12.5 lub nowszą wersję.

  2. Zintegruj Logowanie przez Google z aplikacją na iOS za pomocą biblioteki Logowania przez Google.

1. Konfigurowanie projektu

  1. Aby korzystać ze Sprawdzania aplikacji za pomocą Logowania przez Google, musisz mieć projekt Firebase.

    • Jeśli Twoja aplikacja korzysta już z Firebase, użyj tego samego projektu.

    • Jeśli Twoja aplikacja korzysta z Logowania przez Google, ale nie z Firebase, masz już projekt Google Cloud. Dodaj Firebase do swojego projektu Google Cloud, wybierając go podczas tworzenia nowego projektu w konsoli Firebase.

    Zobacz też: Relacja między projektami Firebase a Google Cloud

  2. Dodaj aplikacje na iOS do projektu Firebase na stronie Ustawienia projektu w konsoli Firebase.

  3. Zarejestruj swoje aplikacje do korzystania ze Sprawdzania aplikacji u dostawcy App Attest w sekcji Sprawdzanie aplikacji w konsoli Firebase.

  4. Sprawdź, czy wszystkie klienty OAuth projektu są połączone z aplikacją.

    Jeśli masz rozłączone klienty, w sekcji Tożsamość Google na iOS na stronie Sprawdzanie aplikacji pojawi się komunikat o treści: Masz n odłączone klienty OAuth, które wymagają dodatkowej konfiguracji.

    Poza tym jeśli po skonfigurowaniu w Sprawdzaniu aplikacji niektóre klienty OAuth zostały usunięte, pojawi się komunikat o treści: Masz n zastąpienia bez pasującego klienta OAuth. Możesz bezpiecznie wyczyścić dane, usuwając te zastąpienia.

    Rozłączone klienty możesz łączyć z istniejącą lub nową aplikacją na stronie Klienty OAuth w konsoli Firebase.

2. Dodawanie do aplikacji biblioteki logowania przez Google w wersji beta

  1. W projekcie Xcode ustaw zależność od Google Sign-in na wersję 7.1.0-fac-beta-1.1.0:

    menedżer ds. partnera strategicznego

    Ustaw regułę zależności googlesignin-ios na dokładnie taką wersję: 7.1.0-fac-beta-1.1.0.

    CocoaPods

    Zaktualizuj urządzenie Podfile:

    source 'https://github.com/CocoaPods/Specs.git'
    source 'https://github.com/firebase/SpecsDev.git'
    
    target 'YourAppName' do
      use_frameworks!
    
      pod 'GoogleSignIn',
          :git => 'https://github.com/google/GoogleSignIn-iOS.git',
          :tag => '7.1.0-fac-beta-1.1.0'
      pod 'GoogleSignInSwiftSupport'  # If you use SwiftUI.
    end
    

    Następnie uruchom polecenie pod install i otwórz utworzony plik .xcworkspace.

  2. W Xcode dodaj do aplikacji funkcję App Attest.

  3. W pliku .entitlements swojego projektu ustaw środowisko App Attest na production.

3. Zainicjuj Sprawdzanie aplikacji

W metodzie didFinishLaunchingWithOptions delegata aplikacji wywołaj GIDSignIn.sharedInstance.configure(completion:). Aby zminimalizować opóźnienia widoczne dla użytkowników, należy wywoływać tę metodę jak najwcześniej w cyklu życia aplikacji.

import SwiftUI
import GoogleSignIn

class AppDelegate: NSObject, UIApplicationDelegate {
  func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil
  ) -> Bool {
    #if targetEnvironment(simulator)
    // Configure for debugging.
    // See: https://developers.google.com/identity/sign-in/ios/appcheck/debug-provider
    #else
    GIDSignIn.sharedInstance.configure { error in
      if let error {
        print("Error configuring `GIDSignIn` for Firebase App Check: \(error)")
      }
    }
    #endif

    return true
  }
}

@main
struct YourAppNameApp: App {
  @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

  // ...
}

Dalsze kroki

Po zainstalowaniu biblioteki Sprawdzania aplikacji rozpocznij rozpowszechnianie zaktualizowanej aplikacji wśród użytkowników.

Zaktualizowana aplikacja kliencka będzie wysyłać tokeny Sprawdzania aplikacji wraz z każdym żądaniem do punktów końcowych uwierzytelniania Google, ale punkty końcowe nie będą wymagać tokenów ważności, dopóki nie włączysz wymuszania w sekcji Sprawdzanie aplikacji w konsoli Firebase.

Monitoruj wskaźniki

Zanim jednak włączysz egzekwowanie zasad, upewnij się, że nie wpłynie to na działanie usługi dla dotychczasowych, uprawnionych użytkowników. Z drugiej strony, jeśli zauważysz podejrzane zasoby aplikacji, możesz je włączyć jak najszybciej.

Aby ułatwić sobie decyzję, przejrzyj dane dotyczące funkcji Sprawdzania aplikacji dotyczące Logowania przez Google.

Włącz wymuszanie Sprawdzania aplikacji

Gdy już dowiesz się, jak Sprawdzanie aplikacji wpłynie na Twoich użytkowników, możesz włączyć wymuszanie Sprawdzania aplikacji.

Używanie Sprawdzania aplikacji w środowiskach debugowania

Jeśli po zarejestrowaniu aplikacji w Sprawdzaniu aplikacji chcesz ją uruchomić w środowisku, którego Sprawdzanie aplikacji normalnie nie sklasyfikowałoby jako prawidłowego, np. jako symulator w trakcie programowania lub w środowisku ciągłej integracji (CI), możesz utworzyć kompilację do debugowania aplikacji, która korzysta z dostawcy debugowania Sprawdzania aplikacji, a nie przez App Attest.

Zobacz artykuł Korzystanie ze Sprawdzania aplikacji przy pomocy dostawcy debugowania.