Mulai menggunakan App Check untuk Login dengan Google di iOS

Halaman ini menunjukkan cara mengaktifkan App Check di aplikasi iOS. Saat Anda mengaktifkan Aplikasi Periksa, Anda membantu memastikan bahwa hanya aplikasi Anda yang dapat mengakses OAuth 2.0 Google endpoint atas nama project Anda. Lihat Ringkasan fitur ini.

App Check menggunakan App Attest untuk membantu memverifikasi bahwa OAuth 2.0 berasal dari aplikasi asli Anda. App Check tidak menggunakan App Attest untuk menganalisis risiko penipuan.

Sebelum memulai

  1. Pastikan Anda memiliki Xcode 12.5 atau yang lebih baru.

  2. Integrasikan Login dengan Google ke dalam aplikasi iOS Anda, menggunakan Library Login dengan Google.

1. Menyiapkan project

  1. Anda harus memiliki project Firebase untuk menggunakan App Check Login dengan Google.

    • Jika aplikasi Anda sudah menggunakan Firebase, gunakan project yang sama.

    • Jika aplikasi Anda menggunakan Login dengan Google, tetapi tidak menggunakan Firebase, Anda sudah memiliki project Google Cloud Anda. Tambahkan Firebase ke project Google Cloud dengan memilihnya saat Anda membuat proyek baru di Firebase console

    Lihat juga: Hubungan antara project Firebase dan Google Cloud

  2. Jika belum melakukannya, tambahkan aplikasi iOS ke project Firebase Anda menggunakan halaman Project settings di Firebase console.

  3. Daftarkan aplikasi Anda untuk menggunakan App Check dengan penyedia App Attest di App Check di Firebase console.

  4. Pastikan semua klien OAuth project Anda ditautkan ke sebuah aplikasi.

    Jika Anda telah membatalkan tautan klien, Anda akan melihat pesan di Google Identity untuk iOS di halaman App Check yang bertuliskan, Anda memiliki n membatalkan tautan klien OAuth yang memerlukan penyiapan tambahan.

    Selain itu, jika Anda telah menghapus beberapa klien OAuth setelah menyiapkannya di App Check, Anda akan melihat pesan yang menyatakan, Anda memiliki n penggantian tanpa klien OAuth yang cocok. Anda dapat membersihkan data dengan aman menggunakan menghapus penggantian tersebut.

    Anda dapat menautkan klien yang dibatalkan tautannya ke aplikasi yang sudah ada atau yang baru di Klien OAuth di Firebase console.

2. Menambahkan library Login dengan Google versi Beta ke aplikasi Anda

  1. Di project Xcode Anda, tetapkan dependensi Login dengan Google ke version 7.1.0-fac-beta-1.1.0:

    SPM

    Tetapkan aturan dependensi googlesignin-ios ke versi yang tepat: 7.1.0-fac-beta-1.1.0.

    CocoaPods

    Update Podfile Anda:

    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
    

    Kemudian, jalankan pod install dan buka file .xcworkspace yang dibuat.

  2. Di Xcode, tambahkan kemampuan App Attest ke aplikasi Anda.

  3. Pada file .entitlements project Anda, tetapkan lingkungan App Attest ke production.

3. Melakukan inisialisasi App Check

Dalam metode didFinishLaunchingWithOptions delegasi aplikasi Anda, panggil GIDSignIn.sharedInstance.configure(completion:). Anda harus memanggil metode ini seawal mungkin dalam siklus proses aplikasi Anda untuk meminimalkan latensi yang dirasakan pengguna.

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

  // ...
}

Langkah berikutnya

Setelah library App Check terinstal di aplikasi Anda, mulai distribusikan aplikasi yang telah diperbarui kepada pengguna Anda.

Aplikasi klien yang telah diupdate akan mulai mengirimkan token App Check beserta setiap yang dibuatnya ke endpoint autentikasi Google, tetapi endpoint tidak akan mengharuskan token valid hingga Anda mengaktifkan penerapan di App Check bagian Firebase console.

Memantau metrik

Sebelum mengaktifkan penerapan, Anda harus memastikan bahwa melakukannya tidak akan mengganggu pengguna sah yang sudah ada. Di sisi lain, jika Anda melihat penggunaan resource aplikasi yang mencurigakan, sebaiknya aktifkan penerapan lebih cepat.

Untuk membantu membuat keputusan ini, Anda dapat melihat Metrik App Check untuk Login dengan Google.

Mengaktifkan penerapan App Check

Setelah memahami pengaruh App Check terhadap pengguna dan Anda siap melanjutkan, Anda dapat mengaktifkan penerapan App Check.

Menggunakan App Check di lingkungan debug

Jika Anda ingin menjalankan aplikasi tersebut setelah mendaftarkan aplikasi untuk App Check di lingkungan yang biasanya tidak diklasifikasikan oleh App Check sebagai valid, seperti selama pengembangan, atau dari lingkungan continuous integration (CI), Anda dapat membuat build debug aplikasi yang menggunakan penyedia debug App Check bukannya App Attest.

Lihat Menggunakan App Check dengan penyedia debug.