Intégrer reCAPTCHA Enterprise aux applications iOS

Cette page explique comment intégrer reCAPTCHA Enterprise à votre application iOS. En raison de la diversité des appareils mobiles en termes de taille d'écran, de performances et d'interface utilisateur des applications, le test visuel reCAPTCHA (Je ne suis pas un robot) n'est pas disponible pour les applications mobiles. Pour découvrir une autre méthode de filtrage, consultez la page Configurer l'authentification multifacteur (MFA).

Avant de commencer

  1. Choisissez la meilleure méthode pour configurer reCAPTCHA Enterprise dans votre environnement et terminez la configuration.

  2. Le SDK iOS est accessible après un examen de sécurité. Contactez notre équipe commerciale pour intégrer votre site à cette fonctionnalité.

  3. Créez une clé reCAPTCHA pour la plate-forme d'application iOS.

  4. En fonction de votre méthode d'intégration, demandez à votre conseiller commercial de vous accorder l'accès à l'un des éléments suivants: le dépôt reCAPTCHA Enterprise CocoaPods, le dépôt Swift Package Manager ou le téléchargement du SDK iOS.

  5. Pour préparer votre environnement de développement, procédez comme suit :

    • Téléchargez et installez la dernière version de Xcode, puis créez une application iOS vide à affichage unique.
    • Téléchargez et installez CocoaPods.

      Le pod reCAPTCHA Enterprise est assez volumineux. Toutefois, après l'installation de reCAPTCHA Enterprise, la taille de l'IPA de l'utilisateur et celle de l'application installée sont d'environ 598 Ko et 1,786 Mo.

    • Téléchargez le SDK via CocoaPods, Swift Package Manager ou la page de téléchargement.

      CocoaPods

      1. Générez un cookie git.
      2. Créez un fichier Podfile et ajoutez les lignes suivantes à votre Podfile :

        source "https://cpdc-eap.googlesource.com/RecaptchaEnterprise.git"
        source "https://github.com/CocoaPods/Specs.git"
        
        pod "RecaptchaEnterprise", "17.0.0"
        
      3. Installez les dépendances requises en exécutant la commande pod update.

      Gestionnaire de packages Swift

      1. Dans XCode, sélectionnez File > Add Packages (Fichier > Ajouter des packages), puis saisissez l'URL suivante dans le champ Search (Rechercher) ou Enter Package URL (Saisir l'URL du package) : https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      2. Dans la boîte de dialogue XCode, saisissez le nom d'utilisateur GitHub que vous avez fourni à votre conseiller commercial pour le compte, ainsi qu'un jeton d'accès personnel créé à l'aide des instructions de GitHub. Le champ d'application du jeton d'accès personnel doit être indiqué dans la boîte de dialogue de connexion à XCode.

        Xcode installe le SDK et ses dépendances requises.

      Téléchargement direct

      Téléchargez le binaire du SDK sur la page de téléchargement du SDK iOS.

Configurer l'application

À l'aide de CocoaPods, vous pouvez écrire vos applications dans Swift ou Objective-C. Pour configurer votre application, procédez comme suit :

  1. Pour vous assurer que -ObjC est répertorié sur vos options de liaison, accédez à Cible > Paramètres de compilation > Tous > Associer et vérifiez que Other Linker Flags affiche -ObjC.

  2. Si votre application est écrite en Swift, créez un en-tête de pontage Objective-C et incluez l'importation suivante :

    #import <recaptcha/recaptcha.h>
    

Intégrer reCAPTCHA Enterprise à votre application iOS

Pour intégrer reCAPTCHA Enterprise à votre application iOS, procédez comme suit dans Xcode :

  1. Pour instancier le SDK avec la clé reCAPTCHA que vous avez créée, mettez à jour ViewController avec le code suivant :

    Swift

    let recaptchaClient = RecaptchaClient(siteKey: "reCAPTCHA_KEY_iOS")
    

    Objective-C

    RecaptchaClient *recaptchaClient = [[RecaptchaClient alloc] initWithSiteKey:@"reCAPTCHA_KEY_iOS"];
    

  2. Créez un bouton pour appeler reCAPTCHA Enterprise et déclencher le code que vous avez intégré dans ViewController :

    1. Créez un bouton dans le storyboard.
    2. Créez une action dans ViewController associée au bouton que vous avez créé.
    3. Appelez la méthode execute() pour renvoyer un jeton reCAPTCHA à l'aide de l'extrait de code suivant :

      Swift

      recaptchaClient.execute(RecaptchaAction(action: .login)) { token, error in
       if let recaptchaToken = token {
              print(recaptchaToken.recaptchaToken)
           }
            if let error = error {
              print(error)
            }
       }
      

      Objective-C

       [recaptchaClient execute: [[RecaptchaAction alloc] initWithAction: RecaptchaActionTypeLogin] onFinishedExecute: ^ (RecaptchaToken * _Nullable token, RCARecaptchaError * _Nullable error) {
      
           if (error) {
               NSLog (@ "% @", error);
           } else {
               NSLog (@ "% @", token);
           }
      
       }];
      
      

  3. Testez votre application :

    1. Pour nettoyer votre environnement de compilation Xcode, dans le menu Produit, cliquez sur Nettoyer le dossier de compilation.
    2. Pour exécuter l'application, dans le menu Produit, cliquez sur Exécuter.
    3. Dans l'application que vous avez chargée, cliquez sur le bouton reCAPTCHA que vous avez créé précédemment.
    4. Observez votre fenêtre de sortie de débogage pour obtenir un jeton reCAPTCHA (chaîne alphanumérique), qui est renvoyé si l'intégration réussit.

Référence d'API pour iOS

Contactez votre conseiller commercial pour vous accorder l'accès à la page de téléchargement du SDK iOS. La page de téléchargement du SDK iOS explique les détails du libellé de confidentialité reCAPTCHA.

Étapes suivantes