

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.

# Dissocier des visages d’un utilisateur
<a name="disassociate-faces"></a>

Vous pouvez utiliser cette [DisassociateFaces](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DisassociateFaces.html)opération pour supprimer l'association entre un identifiant utilisateur et un identifiant facial.

**Pour associer des visages (SDK)**

1. Si vous ne l’avez pas déjà fait :

   1. Créez ou mettez à jour un utilisateur avec les autorisations `AmazonRekognitionFullAccess`. Pour de plus amples informations, veuillez consulter [Étape 1 : configurer un compte AWS et créer un utilisateur](setting-up.md#setting-up-iam).

   1. Installez et configurez AWS CLI les AWS SDK. Pour de plus amples informations, veuillez consulter [Étape 2 : configurer le AWS CLI and AWS Kits SDK](setup-awscli-sdk.md).

1. Utilisez les exemples suivants pour appeler l’opération `DisassociateFaces`.

------
#### [ Java ]

   Cet exemple Java supprime l’association entre un FaceID et un UserID avec l’opération `DisassociateFaces`.

   ```
   import java.util.Arrays;
   import java.util.List;
   
   import com.amazonaws.services.rekognition.AmazonRekognition;
   import com.amazonaws.services.rekognition.AmazonRekognitionClientBuilder;
   import com.amazonaws.services.rekognition.model.DisassociateFacesRequest;
   import com.amazonaws.services.rekognition.model.DisassociateFacesResult;
   
   
   public class DisassociateFaces {
   
       public static void main(String[] args) throws Exception {
   
   
           AmazonRekognition rekognitionClient = AmazonRekognitionClientBuilder.defaultClient();
   
           /* Replace the below configurations to allow you successfully run the example
   
              @collectionId: The collection where user and faces are stored
              @userId: The user which faces will get disassociated from
              @faceIds: The list of face IDs that will get disassociated from the given user
            */
   
           String collectionId = "MyCollection";
           String userId = "demoUser";
           String faceId1 = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
           String faceId2 = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
           List<String> faceIds = Arrays.asList(faceid1,faceid2);
   
           System.out.println("Disassociating faces from existing user: " +
                   userId);
   
           DisassociateFacesRequest request = new DisassociateFacesRequest()
                   .withCollectionId(collectionId)
                   .withUserId(userId)
                   .withFaceIds(faceIds)
   
           DisassociateFacesResult result = rekognitionClient.disassociateFaces(request);
   
           System.out.println("Successful face disassociations: " + result.getDisassociatedFaces().size());
           System.out.println("Unsuccessful face disassociations: " + result.getUnsuccessfulFaceDisassociations().size());
       }
   
   }
   ```

------
#### [ AWS CLI ]

   Cette AWS CLI commande supprime l'association entre un FaceID et un UserID lors de l'opération. `DisassociateFaces`

   ```
   aws rekognition disassociate-faces --face-ids {{list-of-face-ids}}
   --user-id {{user-id}} --collection-id {{collection-name}} --region {{region-name}}
   ```

------
#### [ Python ]

   L’exemple suivant supprime l’association entre un FaceID et un UserID avec l’opération `DisassociateFaces`.

   ```
   from botocore.exceptions import ClientError
   import boto3
   import logging
   
   logger = logging.getLogger(__name__)
   session = boto3.Session(profile_name='profile-name')
   client = session.client('rekognition')
   
   def disassociate_faces(collection_id, user_id, face_ids):
       """
       Disassociate stored faces within collection to the given user
   
       :param collection_id: The ID of the collection where user and faces are stored.
       :param user_id: The ID of the user that we want to disassociate faces from
       :param face_ids: The list of face IDs to be disassociated from the given user
   
       :return: response of AssociateFaces API
       """
       logger.info(f'Disssociating faces from user: {user_id}, {face_ids}')
       try:
           response = client.disassociate_faces(
               CollectionId=collection_id,
               UserId=user_id,
               FaceIds=face_ids
           )
           print(f'- disassociated {len(response["DisassociatedFaces"])} faces')
       except ClientError:
           logger.exception("Failed to disassociate faces from the given user")
           raise
       else:
           print(response)
           return response
   
   def main():
       face_ids = ["faceId1", "faceId2"]
       collection_id = "collection-id"
       user_id = "user-id"
       disassociate_faces(collection_id, user_id, face_ids)
   
   if __name__ == "__main__":
       main()
   ```

------

## DisassociateFaces réponse à l'opération
<a name="disassociate-faces-response"></a>

La réponse pour `DisassociateFaces` inclut le `UserStatus`, qui est le statut de la demande de dissociation, ainsi qu’une liste des `FaceIds` à dissocier. Une liste de `UnsuccessfulFaceDisassociations` est également renvoyée. Après avoir soumis une demande à DisassociateFaces, l'opération peut prendre environ une minute. Pour cette raison, le UserStatus est renvoyé, qui peut prendre les valeurs suivantes : 
+ CRÉÉ : indique que « l’utilisateur » a été créé avec succès et qu’aucun visage ne lui est associé actuellement. « Utilisateur » sera dans cet état avant qu'un appel « AssociateFaces » réussi ne soit effectué.
+ MISE À JOUR - Indique que « l'utilisateur » est mis à jour pour refléter les nouveaux associated/disassociated visages et qu'il deviendra ACTIF dans quelques secondes. Les résultats de recherche peuvent contenir « Utilisateur » dans cet état et les clients peuvent choisir de l’ignorer dans les résultats renvoyés.
+ ACTIF : indique que le nom **« utilisateur **»**** est mis à jour pour refléter tous les associated/disassociated visages et qu'il est dans un état consultable.

```
{
    "UserStatus": "UPDATING", 
    "DisassociatedFaces": [
        {
            "FaceId": "c92265d4-5f9c-43af-a58e-12be0ce02bc3"
        }
    ], 
    "UnsuccessfulFaceDisassociations": [
        {
            "Reasons": [
                "ASSOCIATED_TO_A_DIFFERENT_IDENTITY"
            ], 
            "FaceId": "f5817d37-94f6-4335-bfee-6cf79a3d806e", 
            "UserId": "demoUser1"
        }
    ]
}
```