Comienza a usar la Verificación de aplicaciones para el Acceso con Google en iOS

En esta página, se muestra cómo habilitar la Verificación de aplicaciones en una aplicación para iOS. Cuando habilitas la app Verifica, ayudas a garantizar que solo tu app pueda acceder a OAuth 2.0 de Google extremos en nombre de tu proyecto. Consulta una descripción general de esta función.

La Verificación de aplicaciones usa App Attest para verificar que OAuth 2.0 provienen de tu app auténtica. La Verificación de aplicaciones no usa App Attest para analizar el riesgo de fraude.

Antes de comenzar

  1. Asegúrate de tener Xcode 12.5 o una versión más reciente.

  2. Integra Google Sign-in en tu aplicación para iOS con el Biblioteca de Acceso con Google.

1. Configura tu proyecto

  1. Debes tener un proyecto de Firebase para usar la Verificación de aplicaciones Acceso con Google.

    • Si tu app ya usa Firebase, utiliza el mismo proyecto.

    • Si tu app usa el Acceso con Google, pero no Firebase, ya tienes una proyecto de Google Cloud. Agrega Firebase a tu proyecto de Google Cloud de la siguiente manera: seleccionándolo cuando crees un nuevo proyecto en la Firebase console

    Consulta lo siguiente: Relación entre los proyectos de Firebase y Google Cloud

  2. Si aún no lo has hecho, agrega tus apps para iOS a tu proyecto de Firebase en la página Configuración del proyecto de Firebase console

  3. Registra tus apps para que usen la Verificación de aplicaciones mediante el proveedor de App Attest en la Sección Verificación de aplicaciones de Firebase console.

  4. Asegúrate de que todos los clientes de OAuth de tu proyecto estén vinculados a una app.

    Si tienes clientes desvinculados, verás un mensaje en la página Google Identity para iOS de la página Verificación de aplicaciones, que dice: Tienes n desvinculó clientes de OAuth que requieren una configuración adicional.

    Además, si borraste algunos clientes de OAuth después de configurarlos, En la Verificación de aplicaciones, verá un mensaje que dice: Tiene n anulaciones sin ningún cliente de OAuth que coincida. Puedes limpiar de forma segura y borrar esas anulaciones.

    Puedes vincular los clientes desvinculados a una aplicación existente o nueva desde la Página Clientes OAuth de Firebase console.

2. Agrega la biblioteca beta de Acceso con Google a tu app

  1. En tu proyecto de Xcode, configura la dependencia de Acceso con Google en la versión 7.1.0-fac-beta-1.1.0:

    SPM

    Configura la regla de dependencia de googlesignin-ios en la versión exacta: 7.1.0-fac-beta-1.1.0

    CocoaPods

    Actualiza tu 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
    

    Luego, ejecuta pod install y abre el archivo .xcworkspace creado.

  2. En Xcode, agrega la función App Attest a la app.

  3. En el archivo .entitlements de tu proyecto, configura el entorno de App Attest como production

3. Inicializa la Verificación de aplicaciones

En el método didFinishLaunchingWithOptions del delegado de la app, llama a GIDSignIn.sharedInstance.configure(completion:) Deberías llamar a este método lo antes posible en el ciclo de vida de tu app para minimizar la latencia percibida por el usuario.

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óximos pasos

Una vez que la biblioteca de la Verificación de aplicaciones esté instalada en la app, comienza a distribuir el actualizada a los usuarios.

La app cliente actualizada comenzará a enviar tokens de la Verificación de aplicaciones junto con cada envía a los extremos de autenticación de Google, pero estos requerir que los tokens sean válidos hasta que habilites la aplicación forzosa en la Verificación de aplicaciones de Firebase console.

Supervisa las métricas

Sin embargo, antes de habilitar la aplicación forzosa, debes asegurarte de que esto no afectar a tus usuarios legítimos existentes. Por otro lado, si ves uso sospechoso de los recursos de tu app, puedes habilitar la aplicación antes.

Para ayudar en esta decisión, puedes consultar Métricas de la Verificación de aplicaciones para el Acceso con Google.

Habilita la aplicación forzosa de la Verificación de aplicaciones

Cuando comprendas cómo la Verificación de aplicaciones afectará a tus usuarios y tengas todo listo para puedes habilitar la aplicación forzosa de la Verificación de aplicaciones.

Usa la Verificación de aplicaciones en entornos de depuración

Si después de registrar tu app en la Verificación de aplicaciones quieres ejecutarla, en un entorno que la Verificación de aplicaciones normalmente no clasificaría como válido, como simulador durante el desarrollo, o desde un entorno de integración continua (CI), puedes crear una compilación de depuración de la app que use el proveedor de depuración de la Verificación de aplicaciones en lugar de App Attest.

Consulta Usa la Verificación de aplicaciones mediante el proveedor de depuración.