Importation d'utilisateurs dans des groupes d'utilisateurs à partir d'un CSV fichier - 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.

Importation d'utilisateurs dans des groupes d'utilisateurs à partir d'un CSV fichier

Lorsque vous disposez d'un magasin d'identités externe et que vous avez le temps de préparer votre groupe d'utilisateurs pour les nouveaux utilisateurs locaux, l'importation groupée d'utilisateurs à partir d'un fichier de valeurs séparées par des virgules (CSV) peut s'avérer une option peu coûteuse et peu coûteuse pour une migration vers un groupe d'utilisateurs Amazon Cognito. Une importation de CSV fichier consiste à télécharger et à remplir un fichier modèle, puis à le transmettre à votre groupe d'utilisateurs dans le cadre d'une tâche d'importation. Vous pouvez utiliser une CSV importation pour créer rapidement des utilisateurs de test. Vous pouvez également remplir le fichier par programmation avec des API demandes de lecture adressées à votre banque d'identités externe, puis analyser leurs détails et leurs attributs dans le cadre d'opérations d'écriture dans le fichier.

Le processus d'importation définit les valeurs de tous les attributs utilisateur, sauf password (mot de passe). L'importation du mot de passe n'est pas prise en charge, car les bonnes pratiques de sécurité nécessitent que les mots de passe ne soient pas disponibles sous forme de texte brut, et nous ne prenons pas en charge l'importation des hachages. Cela signifie que vos utilisateurs doivent changer leur mot de passe la première fois qu'ils se connectent. Vos utilisateurs sont dans un RESET_REQUIRED état lorsqu'ils sont importés à l'aide de cette méthode.

Vous pouvez définir les mots de passe de vos utilisateurs à l'aide d'un AdminSetUserPasswordAPIdemande qui définit le Permanent paramètre surtrue. CSVl'importation ne contribue pas au nombre d'utilisateurs actifs mensuels facturés (MAUs) de votre groupe d'utilisateurs. Cependant, des opérations de réinitialisation du mot de passe sont générées. MAUs Pour gérer les coûts liés à l'importation d'un grand nombre d'utilisateurs susceptibles de ne pas être immédiatement actifs, configurez votre application pour qu'elle invite les utilisateurs à saisir un nouveau mot de passe lorsqu'ils se connectent et reçoivent le RESET_REQUIRED défi.

Note

La date de création pour chaque utilisateur est celle où celui-ci a été importé dans le pool d'utilisateurs. La date de création n'est pas l'un des attributs importés.

Étapes pour créer une tâche d'importation utilisateur
  1. Créez un rôle Amazon CloudWatch Logs dans la console AWS Identity and Access Management (IAM).

  2. Créez le fichier .csv d'importation d'utilisateurs.

  3. Créez et exécutez la tâche d'importation d'utilisateurs.

  4. Téléchargez le fichier .csv d'importation d'utilisateurs.

  5. Démarrez et exécutez la tâche d'importation d'utilisateurs.

  6. CloudWatch À utiliser pour consulter le journal des événements.

  7. Exigez des utilisateurs importés qu'ils réinitialisent leur mot de passe.

Ressources supplémentaires

Création du IAM rôle CloudWatch Logs

Si vous utilisez Amazon Cognito CLI ouAPI, vous devez créer un CloudWatch IAM rôle. La procédure suivante explique comment créer un IAM rôle qu'Amazon Cognito peut utiliser pour écrire les résultats de votre tâche d'importation dans Logs. CloudWatch

Note

Lorsque vous créez une tâche d'importation dans la console Amazon Cognito, vous pouvez créer le IAM rôle en même temps. Lorsque vous choisissez de créer un nouveau IAM rôle, Amazon Cognito applique automatiquement la politique de confiance et IAM la politique appropriées au rôle.

Pour créer le IAM rôle CloudWatch Logs pour l'importation du groupe d'utilisateurs (AWS CLI,API)
  1. Connectez-vous à la IAM console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/iam/.

  2. Créez un nouveau IAM rôle pour un Service AWS. Pour obtenir des instructions détaillées, consultez Création d'un rôle pour un Service AWS dans le Guide de l'utilisateur AWS Identity and Access Management .

    1. Lorsque vous sélectionnez un cas d'utilisation pour votre type d'entité approuvée, choisissez n'importe quel service. Pour l'heure, Amazon Cognito ne figure pas dans les cas d'utilisation de service.

    2. Dans l'écran Add permissions (Ajouter des autorisations), choisissez Create policy (Créer une politique) et insérez la déclaration de politique suivante. Remplacez REGION avec l'ensemble Région AWS de votre groupe d'utilisateurs, par exempleus-east-1. Remplacez ACCOUNT avec votre Compte AWS identifiant, par exemple111122223333.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:REGION:ACCOUNT:log-group:/aws/cognito/*" ] } ] }
  3. Comme vous n'avez pas choisi Amazon Cognito comme entité approuvée au moment de créer le rôle, vous devez maintenant modifier manuellement la relation d'approbation du rôle. Choisissez Rôles dans le volet de navigation de la IAM console, puis choisissez le nouveau rôle que vous avez créé.

  4. Choisissez l'onglet Trust relationships.

  5. Choisissez Edit trust policy (Modifier la politique d’approbation).

  6. Collez la déclaration de politique suivante dans Edit trust policy (Modifier la politique d'approbation), en remplaçant le texte existant éventuel :

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  7. Choisissez Mettre à jour une politique.

  8. Notez le rôleARN. Vous le fournirez ARN lorsque vous créerez votre tâche d'importation.

Création du CSV fichier d'importation utilisateur

Avant de pouvoir importer vos utilisateurs existants dans votre groupe d'utilisateurs, vous devez créer un fichier de valeurs séparées par des virgules (CSV) contenant les utilisateurs que vous souhaitez importer et leurs attributs. À partir de votre groupe d'utilisateurs, vous pouvez extraire un fichier d'importation d'utilisateurs dont les en-têtes reflètent le schéma d'attributs de votre groupe d'utilisateurs. Vous pouvez ensuite insérer les informations utilisateur qui répondent aux exigences de mise en forme décrites dans Formatage du CSV fichier.

Téléchargement de l'en-tête CSV du fichier (console)

Pour télécharger le fichier d'CSVen-tête, procédez comme suit.

Pour télécharger l'en-tête CSV du fichier
  1. Accédez à la console Amazon Cognito. Il se peut que vous soyez invité à saisir vos AWS informations d'identification.

  2. Choisissez Groupes d'utilisateurs.

  3. Choisissez un groupe d'utilisateurs existant dans la liste.

  4. Sélectionnez l'onglet Utilisateurs.

  5. Dans la section Import users (Importer des utilisateurs), choisissez Create an import job (Créer une tâche d'importation).

  6. Sous Télécharger CSV, sélectionnez le lien template.csv et téléchargez le CSV fichier.

Téléchargement de l'en-tête CSV du fichier (AWS CLI)

Pour obtenir la liste des en-têtes corrects, exécutez la CLI commande suivante, où USER_POOL_ID est l'identifiant du groupe d'utilisateurs dans lequel vous allez importer des utilisateurs :

aws cognito-idp get-csv-header --user-pool-id "USER_POOL_ID"

Exemple de réponse :

{ "CSVHeader": [ "name", "given_name", "family_name", "middle_name", "nickname", "preferred_username", "profile", "picture", "website", "email", "email_verified", "gender", "birthdate", "zoneinfo", "locale", "phone_number", "phone_number_verified", "address", "updated_at", "cognito:mfa_enabled", "cognito:username" ], "UserPoolId": "USER_POOL_ID" }

Formatage du CSV fichier

Le fichier d'CSVen-tête d'importation utilisateur téléchargé ressemble à la chaîne suivante. Il comporte également les attributs personnalisés que vous avez éventuellement ajoutés à votre groupe d'utilisateurs.

cognito:username,name,given_name,family_name,middle_name,nickname,preferred_username,profile,picture,website,email,email_verified,gender,birthdate,zoneinfo,locale,phone_number,phone_number_verified,address,updated_at,cognito:mfa_enabled

Modifiez votre CSV fichier afin qu'il inclue cet en-tête et les valeurs d'attribut pour vos utilisateurs, et qu'il soit formaté conformément aux règles suivantes :

Note

Pour plus d'informations sur les valeurs d'attributs, par exemple, un format approprié pour les numéros de téléphone, consultez Utilisation des attributs utilisateur.

  • La première ligne du fichier est la ligne d'en-tête téléchargée qui contient les noms des attributs utilisateur.

  • L'ordre des colonnes du CSV fichier n'a pas d'importance.

  • Chaque ligne après la première ligne contient les valeurs d'attribut d'un utilisateur.

  • Toutes les colonnes de l'en-tête doivent être présentes, mais vous n'avez pas besoin de fournir des valeurs dans chaque colonne.

  • Les attributs suivants sont obligatoires :

    • cognito:username

    • cognito:mfa_enabled

    • email_verified ou phone_number_verified

      • Au moins l'un des attributs à vérification automatique doit avoir la valeur true pour chaque utilisateur. Un attribut à vérification automatique est une adresse e-mail ou un numéro de téléphone auxquels Amazon Cognito envoie automatiquement un code lorsqu'un nouvel utilisateur rejoint votre groupe d'utilisateurs.

      • Le groupe d'utilisateurs doit avoir au moins un attribut à vérification automatique, que ce soit email_verified ou phone_number_verified. Si le pool d'utilisateurs n'a pas d'attributs à vérification automatique, la tâche d'importation ne démarre pas.

      • Si le pool d'utilisateurs n'a qu'un seul attribut à vérification automatique, cet attribut doit être vérifié pour chaque utilisateur. Par exemple, si le groupe d'utilisateurs n'a que phone_number comme attribut à vérification automatique, la valeur de phone_number_verified doit être true pour chaque utilisateur.

      Note

      Pour pouvoir réinitialiser leur mot de passe, les utilisateurs doivent disposer d'une adresse e-mail ou d'un numéro de téléphone vérifiés. Amazon Cognito envoie un message contenant un code de réinitialisation du mot de passe à l'adresse e-mail ou au numéro de téléphone indiqué dans le CSV fichier. Si le message est envoyé au numéro de téléphone, il est envoyé par SMS message. Pour de plus amples informations, veuillez consulter Vérification des coordonnées à l’inscription.

    • email (si email_verified a la valeur true)

    • phone_number (si phone_number_verified a la valeur true)

    • Tous les attributs que vous avez marqués comme obligatoires lorsque vous avez créé le pool d'utilisateurs

  • Les valeurs d'attribut qui sont des chaînes ne doivent pas être entre guillemets.

  • Si une valeur d'attribut contient une virgule, vous devez placer une barre oblique inverse (\) devant la virgule. Cela est dû au fait que les champs d'un CSV fichier sont séparés par des virgules.

  • Le contenu du CSV fichier doit être au format UTF -8 sans marque d'ordre des octets.

  • Le champ cognito:username est obligatoire et doit être unique au sein de votre groupe d'utilisateurs. Ce peut être n'importe quelle chaîne Unicode. Cependant, elle ne peut pas comporter d'espaces ou de tabulations.

  • Les valeurs de date de naissance, si elles sont présentes, doivent être au format mm/dd/yyyy. Cela signifie, par exemple, qu'une date de naissance du 1er février 1985 doit être codée sous 02/01/1985 la forme.

  • Le champ cognito:mfa_enabled est obligatoire. Si vous avez défini l'authentification multifactorielle (MFA) comme obligatoire dans votre groupe d'utilisateurs, ce champ doit être true réservé à tous les utilisateurs. Si vous avez activé MFA cette option, ce champ doit être false réservé à tous les utilisateurs. Si vous l'avez défini MFA comme facultatif, ce champ peut être l'un true ou l'autrefalse, mais il ne peut pas être vide.

  • La longueur maximale de la ligne est de 16 000 caractères.

  • La taille maximale CSV du fichier est de 100 Mo.

  • Le nombre maximal de lignes (utilisateurs) du fichier est de 500 000. La ligne d'en-tête n'est pas comprise dans ce nombre maximal.

  • La valeur du champ updated_at doit être une heure Posix exprimée en secondes, par exemple : 1471453471.

  • Les espaces de début ou de fin d'une valeur d'attribut seront supprimés.

La liste suivante est un exemple de fichier CSV d'importation pour un groupe d'utilisateurs sans attributs personnalisés. Le schéma de votre groupe d'utilisateurs peut être différent par rapport à cet exemple. Dans ce cas, vous devez fournir des valeurs de test dans le CSV modèle que vous téléchargez depuis votre groupe d'utilisateurs.

cognito:username,name,given_name,family_name,middle_name,nickname,preferred_username,profile,picture,website,email,email_verified,gender,birthdate,zoneinfo,locale,phone_number,phone_number_verified,address,updated_at,cognito:mfa_enabled John,,John,Doe,,,,,,,johndoe@example.com,TRUE,,02/01/1985,,,+12345550100,TRUE,123 Any Street,,FALSE Jane,,Jane,Roe,,,,,,,janeroe@example.com,TRUE,,01/01/1985,,,+12345550199,TRUE,100 Main Street,,FALSE

Création et exécution de la tâche d'importation de groupe d'utilisateurs Amazon Cognito

Cette section explique comment créer et exécuter la tâche d'importation du groupe d'utilisateurs à l'aide de la console Amazon Cognito et du AWS Command Line Interface ()AWS CLI.

Importation d'utilisateurs depuis un CSV fichier (console)

La procédure suivante décrit comment importer les utilisateurs depuis le CSV fichier.

Pour importer des utilisateurs depuis le CSV fichier (console)
  1. Accédez à la console Amazon Cognito. Il se peut que vous soyez invité à saisir vos AWS informations d'identification.

  2. Choisissez Groupes d'utilisateurs.

  3. Choisissez un groupe d'utilisateurs existant dans la liste.

  4. Sélectionnez l'onglet Utilisateurs.

  5. Dans la section Import users (Importer des utilisateurs), choisissez Create an import job (Créer une tâche d'importation).

  6. Sur la page Create import job (Créer une tâche d'importation), saisissez un nom de tâche.

  7. Choisissez de créer un nouveau IAM rôle ou d'utiliser un IAM rôle existant.

    1. Si vous avez choisi Créer un nouveau IAM rôle, entrez le nom de votre nouveau rôle. Amazon Cognito crée alors automatiquement un rôle doté des autorisations et de la relation d'approbation adéquates. Le IAM principal qui crée la tâche d'importation doit être autorisé à créer des IAM rôles.

    2. Si vous avez choisi Utiliser un IAM rôle existant, choisissez-en un dans la liste sous Sélection des IAM rôles. Ce rôle doit disposer des autorisations et de la politique d'approbation décrites dans Création du IAM rôle CloudWatch Logs.

  8. Choisissez Create job (Créer une tâche) pour soumettre votre tâche, mais démarrez-la plus tard. Choisissez Create and start job (Créer et démarrer une tâche) pour soumettre votre tâche et la démarrer immédiatement.

  9. Si vous avez créé votre tâche mais que vous ne l'avez pas démarrée, vous pouvez la démarrer ultérieurement. Dans l'onglet Users (Utilisateurs), sous Import users (Importer des utilisateurs), choisissez votre tâche d'importation, puis sélectionnez Start (Démarrer). Vous pouvez également soumettre une StartUserImportJobAPIdemande à partir d'un AWS SDK.

  10. Surveillez la progression de votre tâche d'importation d'utilisateurs dans l'onglet Users (Utilisateurs) sous Import users (Importer des utilisateurs). Si votre tâche échoue, vous pouvez sélectionner la valeur Status (État). Pour plus de détails, sélectionnez Afficher les CloudWatch journaux pour plus de détails et passez en revue les éventuels problèmes dans la console CloudWatch Logs.

Importation d'utilisateurs (AWS CLI)

Les CLI commandes suivantes sont disponibles pour importer des utilisateurs dans un groupe d'utilisateurs :

  • create-user-import-job

  • get-csv-header

  • describe-user-import-job

  • list-user-import-jobs

  • start-user-import-job

  • stop-user-import-job

Pour obtenir la liste des options de ligne de commande pour ces commandes, utilisez l'option de ligne de commande help. Par exemple :

aws cognito-idp get-csv-header help

Création d'une tâche d'importation d'utilisateurs

Après avoir créé votre CSV fichier, créez une tâche d'importation utilisateur en exécutant la CLI commande suivante, où JOB_NAME est le nom que vous choisissez pour le poste, USER_POOL_ID est l'ID du groupe d'utilisateurs dans lequel les nouveaux utilisateurs seront ajoutés, et ROLE_ARN est le rôle ARN que vous avez reçu dans Création du IAM rôle CloudWatch Logs :

aws cognito-idp create-user-import-job --job-name "JOB_NAME" --user-pool-id "USER_POOL_ID" --cloud-watch-logs-role-arn "ROLE_ARN"

Le PRE_SIGNED_URL renvoyé dans la réponse est valide pendant 15 minutes. Passé ce délai, il expirera et vous devrez créer une nouvelle tâche d'importation utilisateur pour en obtenir une nouvelleURL.

Exemple de réponse :
{ "UserImportJob": { "Status": "Created", "SkippedUsers": 0, "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "JobName": "JOB_NAME", "JobId": "JOB_ID", "PreSignedUrl": "PRE_SIGNED_URL", "CloudWatchLogsRoleArn": "ROLE_ARN", "FailedUsers": 0, "CreationDate": 1470957431.965 } }

Valeurs d'état pour une tâche d'importation d'utilisateurs

Dans les réponses à vos commandes d'importation d'utilisateurs, vous verrez l'une des valeurs Status suivantes :

  • Created – La tâche a été créée, mais n'a pas démarré.

  • Pending – Un état de transition. Vous avez démarré la tâche, mais elle n'a pas encore commencé à importer les utilisateurs.

  • InProgress – La tâche a démarré et les utilisateurs sont en cours d'importation.

  • Stopping – Vous avez arrêté la tâche, mais la tâche n'a pas encore cessé d'importer les utilisateurs.

  • Stopped – Vous avez arrêté la tâche et la tâche a cessé d'importer les utilisateurs.

  • Succeeded – La tâche a été bien exécutée.

  • Failed – La tâche s'est arrêtée à la suite d'une erreur.

  • Expired – Vous avez créé une tâche, mais n'avez pas commencé la tâche au cours des 24 ou 48 heures écoulées. Toutes les données associées à la tâche ont été supprimées et la tâche ne peut pas être démarrée.

Chargement du fichier CSV

Utilisez la curl commande suivante pour télécharger le CSV fichier contenant vos données utilisateur sur le fichier présigné URL que vous avez obtenu à partir de la réponse à la create-user-import-job commande.

curl -v -T "PATH_TO_CSV_FILE" -H "x-amz-server-side-encryption:aws:kms" "PRE_SIGNED_URL"

Dans la sortie de cette commande, recherchez l'expression "We are completely uploaded and fine". Cette expression indique que le fichier a été téléchargé avec succès.

Description d'une tâche d'importation d'utilisateurs

Pour obtenir une description de votre tâche d'importation utilisateur, utilisez la commande suivante, où USER_POOL_ID est l'ID de votre groupe d'utilisateurs, et JOB_ID est l'ID de tâche qui a été renvoyé lorsque vous avez créé la tâche d'importation utilisateur.

aws cognito-idp describe-user-import-job --user-pool-id "USER_POOL_ID" --job-id "JOB_ID"
Exemple de réponse :
{ "UserImportJob": { "Status": "Created", "SkippedUsers": 0, "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "JobName": "JOB_NAME", "JobId": "JOB_ID", "PreSignedUrl": "PRE_SIGNED_URL", "CloudWatchLogsRoleArn":"ROLE_ARN", "FailedUsers": 0, "CreationDate": 1470957431.965 } }

Dans l'exemple de sortie précédent, PRE_SIGNED_URL est URL celui dans lequel vous avez chargé le CSV fichier. Le ROLE_ARN est le rôle CloudWatch Logs ARN que vous avez reçu lors de sa création.

Affichage des tâches d'importation d'utilisateurs

Pour afficher les tâches d'importation d'utilisateurs, utilisez la commande suivante :

aws cognito-idp list-user-import-jobs --user-pool-id "USER_POOL_ID" --max-results 2
Exemple de réponse :
{ "UserImportJobs": [ { "Status": "Created", "SkippedUsers": 0, "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "JobName": "JOB_NAME", "JobId": "JOB_ID", "PreSignedUrl":"PRE_SIGNED_URL", "CloudWatchLogsRoleArn":"ROLE_ARN", "FailedUsers": 0, "CreationDate": 1470957431.965 }, { "CompletionDate": 1470954227.701, "StartDate": 1470954226.086, "Status": "Failed", "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "SkippedUsers": 0, "JobName": "JOB_NAME", "CompletionMessage": "Too many users have failed or been skipped during the import.", "JobId": "JOB_ID", "PreSignedUrl":"PRE_SIGNED_URL", "CloudWatchLogsRoleArn":"ROLE_ARN", "FailedUsers": 5, "CreationDate": 1470953929.313 } ], "PaginationToken": "PAGINATION_TOKEN" }

Les tâches sont affichées par ordre chronologique, depuis la dernière créée jusqu'à la première créée. Le PAGINATION_TOKEN Une chaîne après le deuxième travail indique que cette commande de liste contient des résultats supplémentaires. Pour afficher les résultats supplémentaires, utilisez l'option --pagination-token comme suit :

aws cognito-idp list-user-import-jobs --user-pool-id "USER_POOL_ID" --max-results 10 --pagination-token "PAGINATION_TOKEN"

Démarrage d'une tâche d'importation d'utilisateurs

Pour démarrer une tâche d'importation d'utilisateurs, utilisez la commande suivante :

aws cognito-idp start-user-import-job --user-pool-id "USER_POOL_ID" --job-id "JOB_ID"

Une seule tâche d'importation peut être active à la fois par compte.

Exemple de réponse :
{ "UserImportJob": { "Status": "Pending", "StartDate": 1470957851.483, "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "SkippedUsers": 0, "JobName": "JOB_NAME", "JobId": "JOB_ID", "PreSignedUrl":"PRE_SIGNED_URL", "CloudWatchLogsRoleArn": "ROLE_ARN", "FailedUsers": 0, "CreationDate": 1470957431.965 } }

Arrêt d'une tâche d'importation d'utilisateurs

Pour arrêter une tâche d'importation d'utilisateur alors qu'elle est en cours, utilisez la commande suivante. Une fois que vous avez arrêté la tâche, elle ne peut pas être redémarrée.

aws cognito-idp stop-user-import-job --user-pool-id "USER_POOL_ID" --job-id "JOB_ID"
Exemple de réponse :
{ "UserImportJob": { "CompletionDate": 1470958050.571, "StartDate": 1470958047.797, "Status": "Stopped", "UserPoolId": "USER_POOL_ID", "ImportedUsers": 0, "SkippedUsers": 0, "JobName": "JOB_NAME", "CompletionMessage": "The Import Job was stopped by the developer.", "JobId": "JOB_ID", "PreSignedUrl":"PRE_SIGNED_URL", "CloudWatchLogsRoleArn": "ROLE_ARN", "FailedUsers": 0, "CreationDate": 1470957972.387 } }

Affichage des résultats de l'importation du groupe d'utilisateurs dans la CloudWatch console

Vous pouvez consulter les résultats de votre tâche d'importation dans la CloudWatch console Amazon.

Affichage des résultats

Les étapes suivantes expliquent comment afficher les résultats de l'importation du pool d'utilisateurs.

Pour afficher les résultats de l'importation du pool d'utilisateurs
  1. Connectez-vous à la CloudWatch console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Choisissez Logs (Journaux).

  3. Sélectionnez le pool de journaux pour vos tâches d'importation du pool d'utilisateurs. Le nom du groupe de journaux est sous la forme /aws/cognito/userpools/USER_POOL_ID/USER_POOL_NAME.

  4. Choisissez le journal pour la tâche d'importation d'utilisateurs que vous venez juste d'exécuter. Le nom du journal est sous la forme JOB_ID/JOB_NAME. Les résultats du journal font référence à vos utilisateurs par numéro de ligne. Aucune donnée utilisateur n'est écrite dans le journal. Pour chaque utilisateur, une ligne similaire à la suivante s'affiche :

    • [SUCCEEDED] Line Number 5956 - The import succeeded.

    • [SKIPPED] Line Number 5956 - The user already exists.

    • [FAILED] Line Number 5956 - The User Record does not set any of the auto verified attributes to true. (Example: email_verified to true).

Interprétation des résultats

Le statut des utilisateurs importés avec succès est défini sur « PasswordReset ».

Dans les cas suivants, l'utilisateur n'est pas importé, mais la tâche d'importation se poursuit :

  • Aucun attribut à vérification automatique n'est défini pour true.

  • Les données utilisateur ne correspondent pas au schéma.

  • L'utilisateur n'a pas pu être importé en raison d'une erreur interne.

Dans les cas suivants, la tâche d'importation échoue :

  • Le rôle Amazon CloudWatch Logs ne peut pas être assumé, ne dispose pas de la bonne politique d'accès ou a été supprimé.

  • Le pool d'utilisateurs a été supprimé.

  • Amazon Cognito ne peut pas analyser le fichier .csv.

Obligation pour les utilisateurs importés de réinitialiser leur mot de passe

Chaque utilisateur importé doit saisir un nouveau mot de passe lors de sa première connexion. La procédure suivante décrit l'expérience utilisateur dans une application personnalisée avec des utilisateurs locaux après l'importation d'un CSV fichier. Si vos utilisateurs se connectent à l'aide de l'interface utilisateur hébergée, Amazon Cognito les invite à définir un nouveau mot de passe lors de leur première connexion.

Obligation pour les utilisateurs importés de réinitialiser leur mot de passe
  1. Dans votre application, essayez de vous connecter silencieusement pour l'utilisateur actuel avec InitiateAuth à l'aide d'un mot de passe aléatoire.

  2. Amazon Cognito renvoie NotAuthorizedException quand PreventUserExistenceErrors est activé. Sinon, la valeur renvoyée est PasswordResetRequiredException.

  3. Votre application fait une ForgotPassword API demande et réinitialise le mot de passe de l'utilisateur.

    1. L'application envoie le nom d'utilisateur dans une ForgotPassword API demande.

    2. Amazon Cognito envoie un code à l'adresse e-mail ou au numéro de téléphone vérifiés. La destination dépend des valeurs que vous avez fournies pour email_verified et phone_number_verified dans votre CSV fichier. La réponse à la demande ForgotPassword indique la destination du code.

      Note

      Votre groupe d'utilisateurs doit être configuré pour vérifier les adresses e-mail ou les numéros de téléphone. Pour de plus amples informations, veuillez consulter Inscription et confirmation des comptes d’utilisateur.

    3. Votre application affiche un message demandant à votre utilisateur de vérifier l'endroit où le code a été envoyé et l'invite à saisir le code et un nouveau mot de passe.

    4. L'utilisateur entre le code et le nouveau mot de passe dans l'application.

    5. L'application envoie le code et le nouveau mot de passe dans une ConfirmForgotPassword API demande.

    6. Votre application redirige votre utilisateur vers la connexion.