

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.

# Gestion et recherche de comptes d'utilisateur
<a name="how-to-manage-user-accounts"></a>

Les groupes d'utilisateurs peuvent contenir des millions d'utilisateurs. Travailler avec un ensemble de données de cette taille représente un défi pour les administrateurs. Amazon Cognito dispose d'outils permettant de rechercher et de modifier les profils utilisateur. Les meilleures méthodes pour trouver des utilisateurs sont le menu **Utilisateurs** de la console Amazon Cognito et avec. [ListUsers](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ListUsers.html) Parmi les méthodes permettant de récupérer des informations sur les utilisateurs, ce sont les options qui n'ont pas d'impact sur les coûts, contrairement à, par exemple, [AdminGetUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminGetUser.html).

Cette section du guide contient des informations sur la recherche et la mise à jour de profils d'utilisateurs dans un groupe d'utilisateurs.

## Affichage des attributs utilisateur
<a name="manage-user-accounts-viewing-user-attributes"></a>

Utilisez la procédure suivante pour consulter les attributs d'un utilisateur dans la console Amazon Cognito.

**Pour consulter les attributs d'un utilisateur**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Si vous y êtes invité, entrez vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et sélectionnez un utilisateur dans la liste.

1. Sur la page des détails de l'utilisateur, sous **Attributs utilisateur**, vous pouvez voir quels attributs sont associés à l'utilisateur.

## Réinitialisation du mot de passe d'un utilisateur
<a name="manage-user-accounts-reset-user-password"></a>

Utilisez la procédure suivante pour réinitialiser le mot de passe d'un utilisateur dans la console Amazon Cognito.

**Pour réinitialiser le mot de passe d'un utilisateur**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Si vous y êtes invité, entrez vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et sélectionnez un utilisateur dans la liste.

1. Sur la page des détails de l'utilisateur, choisissez **Actions**, **Réinitialiser le mot de passe**.

1. Dans **Réinitialiser le mot de passe**, vérifiez les informations et, lorsque vous êtes prêt, choisissez **Réinitialiser**.

   Cette action entraîne immédiatement l'envoi d'un code de confirmation à l'utilisateur et désactive le mot de passe actuel de l'utilisateur en changeant l'état de l'utilisateur en `RESET_REQUIRED`. Le code de (**réinitialisation du mot de passe**) est valide pendant 1 heure.

## Activer, désactiver et supprimer des comptes utilisateurs
<a name="manage-user-accounts-enable-disable"></a>

Vous pouvez supprimer les profils utilisateur inutilisés ou, si vous souhaitez empêcher temporairement l'accès, les désactiver. Les utilisateurs peuvent supprimer leurs propres comptes, mais seuls les administrateurs du groupe d'utilisateurs peuvent activer et désactiver les comptes utilisateurs.

**Effet de la suppression**  
Les utilisateurs ne peuvent pas se connecter avec des comptes utilisateur supprimés et pour y accéder à nouveau, ils doivent s'inscrire ou être créés à nouveau.

**Effet de la désactivation des comptes**  
[Lorsque vous désactivez un compte utilisateur, Amazon Cognito invalide automatiquement toutes les sessions authentifiées, désactive le compte utilisateur pour la connexion et révoque ses jetons d'accès et d'actualisation.](token-revocation.md) Amazon Cognito renvoie un message `invalid_request` d'erreur `User is not enabled` lorsqu'un utilisateur essaie de se connecter à un compte que vous avez désactivé. Ce comportement ne change pas avec les [paramètres de divulgation de l'existence des utilisateurs](cognito-user-pool-managing-errors.md) pour le client de l'application. Vous pouvez désactiver les comptes utilisateurs locaux et les profils locaux des comptes utilisateurs fédérés. Lorsque les utilisateurs se connectent à l'aide de la connexion gérée ou de l'interface utilisateur hébergée classique, que vous désactivez leur compte, puis qu'ils essaient de se reconnecter avec le cookie du navigateur qui maintient leur session authentifiée, Amazon Cognito les redirige vers la page de connexion.

**Effet de l'activation des comptes**  
Les utilisateurs peuvent se connecter immédiatement aux comptes une fois que vous les avez activés. Les comptes utilisateurs sont activés par défaut. Les attributs et mots de passe des utilisateurs restent les mêmes qu'avant la désactivation de leur compte. Les jetons que votre application a révoqués, que vous ayez désactivé le compte utilisateur ou révoqué séparément le jeton d'actualisation, restent non valides une fois que vous avez activé le compte utilisateur qui détenait le jeton.

------
#### [ Delete a user account (console) ]

**Pour supprimer un compte utilisateur**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Si vous y êtes invité, entrez vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et sélectionnez le bouton radio à côté du nom d'utilisateur d'un utilisateur dans la liste.

1. Sélectionnez **Delete (Supprimer)**.

1. Choisissez **Désactiver l'accès utilisateur**.

1. Sélectionnez **Delete (Supprimer)**.

------
#### [ Delete a user account (API) ]

Les utilisateurs peuvent supprimer leurs comptes à l'aide de l' access-token-authorized[DeleteUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DeleteUser.html)API en libre-service. Voici un exemple de corps de `DeleteUser` demande.

```
{
   "AccessToken": "{{eyJra456defEXAMPLE}}"
}
```

Les administrateurs peuvent supprimer des comptes utilisateurs à l'aide de l'opération d'[AdminDeleteUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminDeleteUser.html)API autorisée par l'IAM. Voici un exemple de corps de `AdminDeleteUser` demande.

```
{
   "Username": "{{testuser}}",
   "UserPoolId": "{{us-west-2_EXAMPLE}}"
}
```

------
#### [ Disable a user account (console) ]

**Pour désactiver un compte utilisateur**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Si vous y êtes invité, entrez vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et sélectionnez le nom d'utilisateur d'un utilisateur dans la liste.

1. Sur la page des informations de l'utilisateur, choisissez **Actions**, **Désactiver l'accès utilisateur**.

1. Dans la boîte de dialogue créée, choisissez **Désactiver**.

------
#### [ Disable a user account (API) ]

Les administrateurs peuvent désactiver les comptes utilisateurs à l'aide de l'opération d'[AdminDisableUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminDisableUser.html)API autorisée par l'IAM. Voici un exemple de corps de `AdminDisableUser` demande.

```
{
   "Username": "{{testuser}}",
   "UserPoolId": "{{us-west-2_EXAMPLE}}"
}
```

------
#### [ Enable a user account (console) ]

**Pour activer un compte utilisateur**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Si vous y êtes invité, entrez vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et sélectionnez le nom d'utilisateur d'un utilisateur dans la liste.

1. Sur la page des détails de l'utilisateur, choisissez **Actions**, **Activer l'accès utilisateur**.

1. Dans la boîte de dialogue que cela crée, choisissez **Activer**.

------
#### [ Enable a user account (API) ]

Les administrateurs peuvent activer les comptes utilisateurs avec l'opération d'[AdminEnableUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminEnableUser.html)API autorisée par l'IAM. Voici un exemple de corps de `AdminEnableUser` demande.

```
{
   "Username": "{{testuser}}",
   "UserPoolId": "{{us-west-2_EXAMPLE}}"
}
```

------

## Recherche d'attributs utilisateur
<a name="manage-user-accounts-searching-user-attributes"></a>

Si vous avez déjà créé un groupe d'utilisateurs, vous pouvez effectuer des recherches dans le volet **Users (Utilisateurs)** d' AWS Management Console. Vous pouvez également utiliser l'[ListUsers API](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ListUsers.html) Amazon Cognito, qui accepte un paramètre de **filtre**.

Vous pouvez rechercher les attributs standard suivants, mais pas les attributs personnalisés.
+ username (sensible à la casse)
+ email
+ phone\_number
+ name
+ given\_name
+ family\_name
+ preferred\_username
+ cognito:user\_status (appelé **Status** dans la console) (non sensible à la casse)
+ statut (appelé **Enabled** dans la console) (sensible à la casse)
+ sub

**Note**  
Vous pouvez également répertorier les utilisateurs avec un filtre côté client. Le filtre côté serveur ne correspond pas à plus d'un attribut. Pour la recherche avancée, utilisez un filtre côté client avec le `--query`paramètre de `list-users` dans le AWS Command Line Interface. Lorsque vous utilisez un filtre côté client, ListUsers renvoie une liste paginée de zéro utilisateur ou plus. Vous pouvez recevoir plusieurs pages consécutives ne contenant aucun résultat. Répétez la requête avec chaque jeton de pagination renvoyé jusqu'à ce que vous receviez une valeur de jeton de pagination NULL, puis passez en revue le résultat combiné.  
Pour plus d'informations sur le filtrage côté serveur et côté client, consultez la section Filtrage de la [AWS CLI sortie dans le guide](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html) de l'utilisateur. AWS Command Line Interface 

## Recherche d'utilisateurs à l'aide du AWS Management Console
<a name="cognito-user-pools-manage-user-accounts-searching-for-users-using-console"></a>

Si vous avez déjà créé un groupe d'utilisateurs, vous pouvez effectuer des recherches dans le volet **Users (Utilisateurs)** d' AWS Management Console.

AWS Management Console les recherches sont toujours des recherches par préfixe (« commence par »).

**Pour rechercher un utilisateur dans la console Amazon Cognito**

1. Accédez à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home). Il se peut que vous soyez invité à saisir vos AWS informations d'identification.

1. Choisissez **Groupes d'utilisateurs**.

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

1. Choisissez le menu **Utilisateurs** et entrez le nom d'utilisateur dans le champ de recherche. Notez que certaines valeurs d'attribut sont sensibles à la casse (**Nom d'utilisateur**, par exemple).

   Vous pouvez également trouver des utilisateurs en ajustant le filtre de recherche pour réduire le périmètre aux autres propriétés de l'utilisateur, comme **Adresse de messagerie**, **Numéro de téléphone**, ou **Nom**.

## Recherche d'utilisateurs via l'API `ListUsers`
<a name="cognito-user-pools-searching-for-users-using-listusers-api"></a>

 [Pour rechercher des utilisateurs depuis votre application, utilisez l'API Amazon CognitoListUsers .](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ListUsers.html) Cette API utilise les paramètres suivants : 
+  `AttributesToGet` : tableau de chaînes, où chaque chaîne correspond au nom d'un attribut à renvoyer pour chaque utilisateur dans les résultats de recherche. Pour récupérer tous les attributs, n'incluez pas de paramètre `AttributesToGet` ni de demande `AttributesToGet` avec une valeur de la chaîne littérale `null`.
+  `Filter` : chaîne de filtrage représentée sous la forme "`AttributeName` `Filter-Type` "`AttributeValue`"". Les guillemets utilisés dans la chaîne de filtrage doivent être précédés d'une barre oblique inverse (`\`). Par exemple, `"family_name = \"Reddy\""`. Si la chaîne de filtrage est vide, `ListUsers` renvoie tous les utilisateurs du groupe. 
  +  `AttributeName` : nom de l'attribut à rechercher. Vous pouvez uniquement rechercher un attribut à la fois. 
**Note**  
Vous pouvez ne rechercher que des attributs standard. mais pas les attributs personnalisés. La raison en est que seuls les attributs indexés peuvent être explorés et que les attributs personnalisés ne peuvent pas être indexés.
  +  `Filter-Type` : pour une correspondance exacte, utilisez `=` (par exemple, `given_name = "Jon"`). Pour une correspondance sur le préfixe (« commence par »), utilisez `^=` (par exemple, `given_name ^= "Jon"`). 
  +  `AttributeValue` : valeur d'attribut qui doit correspondre pour chaque utilisateur.
+  `Limit` : nombre maximum d'utilisateurs à renvoyer.
+  `PaginationToken` : jeton permettant d'obtenir plus de résultats à partir d'une recherche précédente. Amazon Cognito fait expirer le jeton de pagination au bout d'une heure.
+  `UserPoolId` : ID du groupe d'utilisateurs sur lequel la recherche doit porter.

Toutes les recherches sont sensible à la casse. Les résultats de recherche sont triés en fonction de l'attribut dénommé par la chaîne `AttributeName`, dans l'ordre croissant.

## Exemples d'utilisation de l'API `ListUsers`
<a name="cognito-user-pools-searching-for-users-listusers-api-examples"></a>

L'exemple suivant renvoie tous les utilisateurs et inclut tous les attributs.

```
{
    "AttributesToGet": null,
    "Filter": "",
    "Limit": 10,
    "UserPoolId": "us-east-1_samplepool"
}
```

L'exemple suivant renvoie tous les utilisateurs dont le numéro de téléphone commence par « \+1312 », et inclut tous les attributs.

```
{
    "AttributesToGet": null,
    "Filter": "phone_number ^= \"+1312\"",
    "Limit": 10,
    "UserPoolId": "us-east-1_samplepool"
}
```

L'exemple suivant retourne les 10 premiers utilisateurs dont le nom de famille est « Reddy ». Pour chaque utilisateur, les résultats de recherche incluent son nom, son numéro de téléphone et son adresse e-mail. Si le groupe d'utilisateurs compte plus de 10 utilisateurs correspondants, la réponse inclut un jeton de pagination.

```
{
    "AttributesToGet": [
        "given_name", 
        "phone_number", 
        "email"
    ],
    "Filter": "family_name = \"Reddy\"",
    "Limit": 10,
    "UserPoolId": "us-east-1_samplepool"
}
```

Si l'exemple précédent renvoie un jeton de pagination, l'exemple suivant renvoie les 10 utilisateurs suivants qui correspondent à la même chaîne de filtrage.

```
{
    "AttributesToGet": [
        "given_name", 
        "phone_number", 
        "email"
    ],
    "Filter": "family_name = \"Reddy\"",
    "Limit": 10,
    "PaginationToken": "pagination_token_from_previous_search",
    "UserPoolId": "us-east-1_samplepool"
}
```