Comece a usar o App Check para o Login do Google no iOS

Nesta página, mostramos como ativar o App Check em um app iOS. Quando você ativa o App Garante que apenas seu app possa acessar o OAuth 2.0 do Google endpoints em nome do projeto. Consulte a Visão geral desse recurso.

O App Check usa o App Attest para ajudar a verificar se o OAuth 2.0 solicitações estão vindo do seu aplicativo autêntico. O App Check não usa o App Attest para analisar o risco de fraude.

Antes de começar

  1. Verifique se você tem o Xcode 12.5 ou uma versão mais recente.

  2. Integre o Login do Google ao seu app iOS usando o Biblioteca do Login do Google.

1. Criar o projeto

  1. Você precisa ter um projeto do Firebase para usar o App Check com o App Check Login do Google.

    • Caso seu app já use o Firebase, use o mesmo projeto.

    • Caso seu app use o Login do Google, mas não o Firebase, você já tem uma projeto do Google Cloud. Adicione o Firebase ao seu projeto do Google Cloud ao selecionando-o ao criar um novo projeto Console do Firebase

    Consulte também: Relação entre projetos do Firebase e o Google Cloud

  2. Adicione seus apps iOS ao seu projeto do Firebase, caso ainda não tenha feito isso usando a página Configurações do projeto do Console do Firebase.

  3. Registre seus apps para usar o App Check com o provedor do App Attest na Seção App Check do Console do Firebase.

  4. Verifique se todos os clientes OAuth do seu projeto estão vinculados a um app.

    Se você tiver desvinculado clientes, verá uma mensagem na página Google Identity para iOS da página App Check que diz: Você tem n de clientes OAuth desvinculados que precisam de mais configurações.

    Além disso, se você tiver excluído alguns clientes OAuth depois de configurá-los, no App Check, você verá uma mensagem que diz: Você tem o n substituições sem cliente OAuth correspondente. Você pode limpar e exclui essas substituições.

    É possível vincular clientes desvinculados a um app novo ou existente na Clientes OAuth do Console do Firebase.

2. Adicionar a biblioteca Beta do Login do Google ao seu app

  1. No seu projeto do Xcode, defina a dependência do Login do Google como a versão 7.1.0-fac-beta-1.1.0:

    SPM

    Defina a regra de dependência de googlesignin-ios como a versão exata: 7.1.0-fac-beta-1.1.0.

    CocoaPods

    Atualize seu 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
    

    Em seguida, execute pod install e abra o arquivo .xcworkspace criado.

  2. No Xcode, adicione o recurso App Attest ao app.

  3. No arquivo .entitlements do projeto, defina o ambiente do App Attest como production.

3. Inicializar o App Check

No método didFinishLaunchingWithOptions do delegado do app, chame GIDSignIn.sharedInstance.configure(completion:). Você deve chamar esse método o mais cedo possível no ciclo de vida do app para minimizar a latência percebida pelo usuário.

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

  // ...
}

Próximas etapas

Depois que a biblioteca do App Check estiver instalada no seu app, comece a distribuir o atualizado para seus usuários.

O app cliente atualizado começará a enviar tokens do App Check junto com cada solicitação feita aos endpoints de autenticação do Google, mas os endpoints exigem que os tokens sejam válidos até que você ative a aplicação obrigatória no App Check do console do Firebase.

Monitorar as métricas

Antes de ativar a aplicação obrigatória, verifique se isso não interromper os usuários legítimos atuais. Por outro lado, se você estiver vendo uso suspeito dos recursos do app, ative a aplicação obrigatória mais cedo.

Para ajudar a tomar essa decisão, analise Métricas do App Check para Login do Google.

Ativar a aplicação obrigatória do App Check

Assim que você entender como o App Check vai afetar seus usuários, e se estiver tudo pronto para continue, ative a aplicação obrigatória do App Check.

Usar o App Check em ambientes de depuração

Se, depois de registrar seu app no App Check, você quiser executá-lo em um ambiente que o App Check normalmente não classificaria como válido, como um durante o desenvolvimento ou em um ambiente de integração contínua (CI), crie um build de depuração do app que use o provedor de depuração do App Check em vez do App Attest.

Consulte Usar App Check com o provedor de depuração.