Premiers pas avec App Check avec DeviceCheck sur les plates-formes Apple

Cette page explique comment activer App Check dans une application Apple à l'aide du fournisseur DeviceCheck intégré. Lorsque vous activez App Check, vous vous assurez que seule votre application peut accéder aux ressources Firebase de votre projet. Consultez la présentation de cette fonctionnalité.

Si vous souhaitez utiliser App Check avec votre propre fournisseur personnalisé, consultez la section Implémenter un fournisseur App Check personnalisé.

1. Configurer votre projet Firebase

  1. Ajoutez Firebase à votre projet Apple si ce n'est pas déjà fait.

  2. Sur le site Apple Developer, créez une clé privée DeviceCheck.

  3. Enregistrez vos applications pour qu'elles utilisent App Check avec le fournisseur DeviceCheck dans la section App Check de la console Firebase. Vous devrez fournir la clé privée que vous avez créée à l'étape précédente.

    Vous devez généralement enregistrer toutes les applications de votre projet. En effet, une fois que vous avez activé l'application pour un produit Firebase, seules les applications enregistrées peuvent accéder aux ressources backend du produit.

  4. Facultatif : Dans les paramètres d'enregistrement de l'application, définissez une valeur TTL (Time To Live) personnalisée pour les jetons App Check émis par le fournisseur. Vous pouvez définir le TTL sur une valeur comprise entre 30 minutes et sept jours. Lorsque vous modifiez cette valeur, tenez compte des compromis suivants :

    • Sécurité: des TTL plus courts offrent une sécurité renforcée, car cela réduit la période pendant laquelle un jeton fuite ou intercepté peut être utilisé de manière abusive par un pirate informatique.
    • Performances : des TTL plus courts signifient que votre application effectuera des attestations plus fréquemment. Étant donné que le processus d'attestation d'application ajoute une latence aux requêtes réseau chaque fois qu'il est exécuté, un TTL court peut avoir un impact sur les performances de votre application.
    • Quota et coût : les TTL plus courts et les réattestations fréquentes réduisent plus rapidement votre quota. Pour les services payants, cela peut entraîner des coûts plus élevés. Consultez Quotas et limites pour en savoir plus.

    La valeur TTL par défaut de 1 heure est raisonnable pour la plupart des applications. Notez que la bibliothèque App Check actualise les jetons environ la moitié de la durée de TTL.

2. Ajouter la bibliothèque App Check à votre application

  1. Ajoutez la dépendance pour App Check au fichier Podfile de votre projet:

    pod 'FirebaseAppCheck'

    Vous pouvez également utiliser Swift Package Manager à la place.

    Assurez-vous également d'utiliser la dernière version de toutes les bibliothèques clientes de service Firebase sur lesquelles vous dépendez.

  2. Exécutez pod install et ouvrez le fichier .xcworkspace créé.

Étapes suivantes

Une fois la bibliothèque App Check installée dans votre application, commencez à distribuer l'application mise à jour à vos utilisateurs.

L'application cliente mise à jour commencera à envoyer des jetons App Check avec chaque requête envoyée à Firebase, mais les produits Firebase n'exigeront pas que les jetons soient valides tant que vous n'aurez pas activé l'application dans la section App Check de la console Firebase.

Surveiller les métriques et activer l'application

Toutefois, avant d'activer l'application, vous devez vous assurer qu'elle n'entraînera pas de perturbation pour vos utilisateurs légitimes existants. En revanche, si vous constatez une utilisation suspecte de vos ressources d'application, vous pouvez activer l'application plus tôt.

Pour vous aider à prendre cette décision, vous pouvez consulter les métriques App Check des services que vous utilisez :

Activer l'application des règles App Check

Une fois que vous avez compris l'impact de App Check sur vos utilisateurs et que vous êtes prêt à continuer, vous pouvez activer l'application de App Check :

Utiliser App Check dans les environnements de débogage

Si, après avoir enregistré votre application pour App Check, vous souhaitez l'exécuter dans un environnement que App Check ne classerait normalement pas comme valide, tel qu'un simulateur pendant le développement ou à partir d'un environnement d'intégration continue (CI), vous pouvez créer un build de débogage de votre application qui utilise le fournisseur de débogage App Check au lieu d'un véritable fournisseur d'attestation.

Consultez Utiliser App Check avec le fournisseur de débogage sur les plates-formes Apple.