Création du fichier csv d'importation d'utilisateurs
Avant que vous ne puissiez importer les utilisateurs existants dans votre groupe d'utilisateurs, vous devez créer un fichier .csv
qui fait office d'entrée. Pour ce faire, téléchargez les informations d'en-tête du fichier .csv
d'importation d'utilisateurs, puis modifiez le fichier de manière à respecter les exigences de mise en forme présentées dans Mise en forme du fichier csv.
Téléchargement de l'en-tête du fichier csv (Console)
-
Accédez à la console Amazon Cognito
, choisissez Gérer les groupes d'utilisateurs, puis sélectionnez le groupe d'utilisateurs dans lequel vous souhaitez importer les utilisateurs. -
Sélectionnez l'onglet Utilisateurs.
-
Choisissez Import users (Importer des utilisateurs).
-
Choisissez Télécharger un en-tête CSV pour obtenir un fichier
.csv
contenant la ligne d'en-tête que vous devez inclure dans votre fichier.csv
.
Téléchargement de l'en-tête du fichier csv (AWS CLI)
Pour obtenir la liste des en-têtes corrects, exécutez la commande de CLI, où USER_POOL_ID
est l'identifiant du groupe d'utilisateurs vers lequel vous allez importer les 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
" }
Mise en forme du fichier csv
L'en-tête du fichier .csv
téléchargé d'importation des utilisateurs se présente comme suit :
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
Vous devrez modifier votre fichier .csv
de telle sorte qu'il contienne cet en-tête et les valeurs d'attribut de vos utilisateurs et qu'il soit mis en forme selon les règles suivantes.
Pour plus d'informations sur les valeurs d'attributs, par exemple, un format approprié pour les numéros de téléphone, consultez Attributs de groupe d'utilisateurs.
-
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 dans le fichier
.csv
n'importe pas. -
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
-
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
-
-
Le groupe d'utilisateurs doit avoir au moins un attribut à vérification automatique, que ce soit email_verified ou phone_number_verified. Au moins l'un des attributs à vérification automatique doit avoir la valeur
true
pour chaque utilisateur. 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 êtretrue
pour chaque utilisateur.Note Pour que les utilisateurs réinitialisent leur mot de passe, ils doivent avoir un e-mail ou 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 spécifiés dans le fichier
.csv
. Si le message est envoyé au numéro de téléphone, il est envoyé par SMS. -
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. La raison en est que les champs d'un fichier
.csv
sont séparés par des virgules. -
Le contenu du fichier
.csv
doit être au format UTF-8 sans marque d'ordre d'octet. -
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.
-
La valeur birthdate, si elle est présente, doit être au format
mm/jj/aaaa
. Cela signifie, par exemple, que la date du 1er février 1985 doit être codée sous la forme02/01/1985
. -
Le champ cognito:mfa_enabled est obligatoire. Si vous avez défini l'authentification multi-facteur (MFA, Multi-Factor Authentication) comme obligatoire dans votre pool d'utilisateurs, ce champ doit avoir la valeur
true
pour tous les utilisateurs. Si vous avez désactivé l'authentification MFA, ce champ doit avoir la valeurfalse
pour tous les utilisateurs. Si vous avez défini l'authentification MFA comme facultative, ce champ peut êtretrue
oufalse
, mais ne peut pas être vide. -
La longueur maximale de la ligne est de 16 000 caractères.
-
La taille maximale du fichier
.csv
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.
Voici un exemple de fichier .csv
complet d'importation 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