Configurer un exemple d'application Android avec Flutter - Amazon Cognito

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configurer un exemple d'application Android avec Flutter

Dans ce didacticiel, vous allez créer une application mobile dans Android Studio dans laquelle vous pouvez émuler un appareil et tester l'inscription, la confirmation et la connexion des utilisateurs. Cet exemple d'application crée un client mobile de base pour groupes d'utilisateurs Amazon Cognito pour Android dans Flutter. Si vous avez déjà de l'expérience dans le développement d'applications mobiles avec Flutter, téléchargez l'exemple d' GitHubapplication sur.

La capture d'écran suivante montre l'application s'exécutant sur un appareil Android virtuel.

Capture d'écran de la page d'inscription pour un exemple d'application Android virtualisée.

La procédure de création d'un groupe d'utilisateurs vous permet de configurer un groupe d'utilisateurs qui fonctionne avec l'exemple d'application. Vous pouvez ignorer cette étape si votre groupe d'utilisateurs répond aux exigences suivantes :

  • Les utilisateurs peuvent se connecter avec leur adresse e-mail. Options de connexion au groupe d'utilisateurs de Cognito : e-mail.

  • Les noms d'utilisateur ne distinguent pas les majuscules et minuscules. Exigences relatives au nom d'utilisateur : l'option Mettre le nom d'utilisateur en majuscules et minuscules n'est pas sélectionnée.

  • L'authentification multifactorielle (MFA) n'est pas requise. Application de la MFA : MFA optionnelle.

  • Votre groupe d'utilisateurs vérifie les attributs pour la confirmation du profil utilisateur par e-mail. Attributs à vérifier : envoyer un message électronique, vérifier l'adresse e-mail.

  • L'adresse e-mail est le seul attribut obligatoire. Attributs obligatoires : e-mail.

  • Les utilisateurs peuvent s'inscrire eux-mêmes dans votre groupe d'utilisateurs. Auto-enregistrement : l'option Activer l'auto-enregistrement est sélectionnée.

  • Le client d'application initial est un client public qui permet de se connecter avec un nom d'utilisateur et un mot de passe. Type d'application : client public, flux d'authentification :ALLOW_USER_PASSWORD_AUTH.

Création d'un nouveau groupe d'utilisateurs
  1. Accédez à la console Amazon Cognito. Si vous y êtes invité, entrez vos AWS informations d'identification.

  2. Cliquez sur le bouton Créer un groupe d'utilisateurs. Vous devrez peut-être sélectionner les groupes d'utilisateurs dans le volet de navigation de gauche pour afficher cette option.

  3. Dans le coin supérieur droit de la page, choisissez Créer un groupe d'utilisateurs pour lancer l'assistant de création de groupe d'utilisateurs.

  4. Dans Configurer l'expérience de connexion, vous pouvez choisir les fournisseurs d'identité (IdPs) que vous utiliserez avec ce groupe d'utilisateurs. Pour plus d’informations, consultez Ajout de la connexion du groupe d'utilisateurs via un tiers.

    1. Sous Fournisseurs d'authentification, pour les types de fournisseurs, assurez-vous que seul le groupe d'utilisateurs Cognito est sélectionné.

    2. Pour les options de connexion au groupe d'utilisateurs de Cognito, sélectionnez Nom d'utilisateur. Ne sélectionnez aucune exigence supplémentaire en matière de nom d'utilisateur.

    3. Conservez toutes les autres options par défaut et choisissez Next.

  5. Dans Configurer les exigences de sécurité, vous pouvez choisir votre politique de mot de passe, vos exigences en matière d'authentification multifactorielle (MFA) et les options de restauration du compte utilisateur. Pour plus d’informations, consultez Utiliser les fonctions de sécurité des groupes d’utilisateurs Amazon Cognito.

    1. Pour la politique de mot de passe, vérifiez que le mode de politique de mot de passe est défini sur les valeurs par défaut de Cognito.

    2. Sous Authentification multifactorielle, pour l'application de l'authentification MFA, sélectionnez MFA optionnel.

    3. Pour les méthodes MFA, choisissez les applications d'authentification et les messages SMS.

    4. Pour la restauration du compte utilisateur, vérifiez que l'option Activer la restauration du compte en libre-service est sélectionnée et que le mode de livraison des messages de récupération du compte utilisateur est défini sur E-mail uniquement.

    5. Conservez toutes les autres options par défaut et choisissez Next.

  6. Dans Configurer l'expérience d'inscription, vous pouvez déterminer comment les nouveaux utilisateurs vérifieront leur identité lors de leur inscription en tant que nouvel utilisateur, et quels attributs doivent être obligatoires ou facultatifs lors du processus d'inscription des utilisateurs. Pour plus d’informations, consultez Gestion des utilisateurs dans votre groupe d'utilisateurs.

    1. Vérifiez que l'option Activer l'enregistrement automatique est sélectionnée. Ce paramètre ouvre votre groupe d'utilisateurs afin que n'importe qui puisse s'inscrire sur Internet. Ceci est destiné aux besoins de l'exemple d'application, mais appliquez ce paramètre avec prudence dans les environnements de production.

    2. Sous Vérification et confirmation assistées par Cognito, vérifiez que la case Autoriser Cognito à envoyer automatiquement des messages pour vérifier et confirmer est cochée.

    3. Vérifiez que les attributs à vérifier sont définis sur Envoyer un message électronique, vérifier l'adresse e-mail.

    4. Sous Vérification des modifications d'attributs, vérifiez que les options par défaut sont sélectionnées : Conserver la valeur d'attribut d'origine lorsqu'une mise à jour est en attente est sélectionnée, et les valeurs d'attribut actives lorsqu'une mise à jour est en attente sont définies sur Adresse e-mail.

    5. Sous Attributs obligatoires, vérifiez que les attributs obligatoires basés sur les sélections précédentes affichent le courrier électronique.

      Important

      Pour cet exemple d'application, votre groupe d'utilisateurs ne doit pas définir phone_number comme attribut obligatoire. Si phone_number est affiché comme attribut obligatoire, passez en revue et mettez à jour vos choix précédents :

      • MFA optionnel, e-mail uniquement pour le mode de livraison des messages de récupération du compte utilisateur

      • Envoyer un message électronique, vérifier l'adresse e-mail pour les attributs à vérifier

    6. Conservez toutes les autres options par défaut et choisissez Next.

  7. Dans Configurer la livraison des messages, vous pouvez configurer l'intégration avec Amazon Simple Email Service et Amazon Simple Notification Service pour envoyer des e-mails et des SMS à vos utilisateurs pour l'inscription, la confirmation du compte, le MFA et le rétablissement du compte. Pour plus d’informations, consultez Paramètres d'e-mail pour les groupes d'utilisateurs Amazon Cognito et Paramètres des SMS pour les groupes d'utilisateurs Amazon Cognito.

    1. Pour le fournisseur de messagerie, choisissez Envoyer un e-mail avec Cognito et utilisez l'expéditeur d'e-mail par défaut fourni par Amazon Cognito. Ce paramètre pour un faible volume d'e-mails est suffisant pour tester les applications. Vous pouvez revenir après avoir vérifié une adresse e-mail auprès d'Amazon Simple Email Service (Amazon SES) et choisi Envoyer un e-mail avec Amazon SES.

    2. Pour les SMS, sélectionnez Créer un nouveau rôle IAM et entrez un nom de rôle IAM. Cela crée un rôle qui autorise Amazon Cognito à envoyer des SMS.

    3. Conservez toutes les autres options par défaut et choisissez Next.

  8. Dans Intégrer votre application, vous pouvez nommer votre groupe d'utilisateurs, configurer l'interface utilisateur hébergée et créer un client d'application. Pour plus d’informations, consultez Ajouter un client d'application avec l'interface utilisateur hébergée. Les exemples d'applications n'utilisent pas l'interface utilisateur hébergée.

    1. Sous Nom du groupe d'utilisateurs, entrez un nom de groupe d'utilisateurs.

    2. Ne sélectionnez pas Utiliser l'interface utilisateur hébergée par Cognito.

    3. Sous Client d'application initial, vérifiez que le type d'application est défini sur Client public.

    4. Sous Secret client, vérifiez que l'option Ne pas générer de secret client est sélectionnée.

    5. Saisissez un nom de client d’application.

    6. Développez les paramètres avancés du client de l'application. Ajoutez ALLOW_USER_PASSWORD_AUTH à la liste des flux d'authentification.

    7. Conservez toutes les autres options par défaut et choisissez Next.

  9. Passez en revue vos choix dans l'écran Révision et création et modifiez les sélections selon vos besoins. Lorsque vous êtes satisfait de la configuration de votre groupe d'utilisateurs, choisissez Create user pool pour continuer.

  10. Sur la page Groupes d'utilisateurs, choisissez votre nouveau groupe d'utilisateurs.

  11. Sous Vue d'ensemble du groupe d'utilisateurs, notez l'ID de votre groupe d'utilisateurs. Vous fournirez cette chaîne lorsque vous créerez votre exemple d'application.

  12. Choisissez l'onglet Intégration des applications et localisez la section Clients et analyses des applications. Sélectionnez votre nouveau client d'application. Notez votre numéro de client.

Création d’une application

Pour créer un exemple d'application Android
  1. Installez le studio Android et les outils de ligne de commande.

  2. Dans Android Studio, installez le plugin Flutter.

  3. Créez un nouveau projet Android Studio à partir du contenu du cognito_flutter_mobile_app répertoire de cet exemple d'application.

    1. Modifiez assets/config.json et remplacez <<YOUR USER POOL ID>> et << YOUR CLIENT ID>> par les identifiants du groupe d'utilisateurs et du client d'application que vous avez créés précédemment.

  4. Installez Flutter.

    1. Ajoutez Flutter à votre variable PATH.

    2. Acceptez les licences à l'aide de la commande suivante.

      flutter doctor --android-licenses

    3. Vérifiez votre environnement Flutter et installez les composants manquants.

      flutter doctor

      1. Si des composants sont manquants, lancez-vous flutter doctor -v pour savoir comment résoudre le problème.

    4. Accédez au répertoire de votre nouveau projet Flutter et installez les dépendances.

      1. Exécutez flutter pub add amazon_cognito_identity_dart_2.

    5. Exécutez flutter pub add flutter_secure_storage.

  5. Créez un appareil Android virtuel.

    1. Dans l'interface graphique d'Android Studio, créez un nouvel appareil à l'aide du gestionnaire de périphériques.

    2. Dans la CLI, exécutezflutter emulators --create --name android-device.

  6. Lancez votre appareil Android virtuel.

    1. Dans l'interface graphique d'Android Studio, sélectionnez l' icône de démarrage à côté de votre appareil virtuel.

    2. Dans la CLI, exécutezflutter emulators --launch android-device.

  7. Lancez votre application sur votre appareil virtuel.

    1. Dans l'interface graphique d'Android Studio, sélectionnez l' icône de déploiement.

    2. Dans la CLI, exécutezflutter run.

  8. Accédez à votre appareil virtuel en cours d'exécution dans Android Studio.

  9. Inscrivez un nouvel utilisateur avec une adresse e-mail valide.

  10. Récupérez le code de confirmation contenu dans votre e-mail. Entrez le code de confirmation dans l'application.

  11. Connectez-vous à l'aide de votre nom d'utilisateur et de votre mot de passe.