

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.

# Utilisation ExpirationSettings dans la messagerie du SDK Amazon Chime
<a name="expiration"></a>

Lorsque vous créez un `AppInstanceUser` ou un`Channel`, vous pouvez l'utiliser `ExpirationSettings` pour configurer la suppression automatique de ces ressources. `ExpirationSettings`permet de réduire les coûts de stockage et de prévenir resource-limit-exceeded les problèmes. Par exemple, vous pouvez supprimer les chaînes inutilisées au bout de 7 jours ou supprimer celles `AppInstanceUser` qui n'ont été invoquées qu'à des fins de test.

Pour un`AppInstanceUser`, vous spécifiez la période d'expiration en fonction de l'heure de création de l'utilisateur. Pour un`Channel`, vous spécifiez la période d'expiration en fonction de l'heure de création de la chaîne ou de l'heure du dernier message. Ce dernier vous permet d'utiliser les activités liées aux messages pour personnaliser la suppression automatique.

**Important**  
Peu après l'expiration d'une ressource, `ExpirationSettings` lance un processus en arrière-plan pour supprimer cette ressource. Le processus prend généralement 6 heures, mais ce temps peut varier.  
Les `AppInstanceUsers` fichiers expirés et `Channels` qui n'ont pas encore été supprimés apparaissent toujours comme valides et actifs. Vous pouvez mettre à jour ou supprimer leurs paramètres d'expiration, et le système tiendra compte de vos modifications.

**Topics**
+ [Configuration ExpirationSettings](#create-expiration)
+ [AWS CloudTrail événements relatifs à la suppression de ressources expirées](#ct-events)

## Configuration ExpirationSettings
<a name="create-expiration"></a>

Les sections suivantes expliquent comment configurer `ExpirationSettings` un `AppInstanceUser` ou un`Channel`. 

### Configuration ExpirationSettings lors de la création d'une ressource
<a name="configure-on-create"></a>

Vous pouvez configurer le `ExpirationSettings` moment où vous exécutez le [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_CreateAppInstanceUser.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_CreateAppInstanceUser.html)ou [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_CreateChannel.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_CreateChannel.html) APIs. Si vous définissez le `ExpirationSettings` paramètre, vous devez accorder les autorisations IAM suivantes :
+ `chime:PutAppInstanceUserExpirationSettings`lors de la création d'un `AppInstanceUser`
+ `chime:PutChannelExpirationSettings`lors de la création d'un`Channel`.

L'exemple suivant utilise la AWS CLI pour créer un fichier `AppInstanceUser` expirant au bout d'un jour.

```
aws chime-sdk-identity create-app-instance-user \
--app-instance-arn "app_instance_arn" \
--app-instance-user-id "backend-worker" \
--name "backend-worker" \
--expiration-settings '{
            "ExpirationDays": 1,
            "ExpirationCriterion": "CREATED_TIMESTAMP"
        }'
```

L'exemple suivant utilise la AWS CLI pour créer un message `Channel` qui expire un jour après la dernière réception d'un message.

```
aws chime-sdk-messaging create-channel \
--chime-bearer "app_instance_user_arn" \
--app-instance-arn "app_instance_arn" \
--name "firstChannel" \
--expiration-settings '{
            "ExpirationDays": 1,
            "ExpirationCriterion": "LAST_MESSAGE_TIMESTAMP"
        }'
```

### Utiliser Put APIs pour configurer ExpirationSettings
<a name="configure-on-put"></a>

Vous pouvez également utiliser le [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_PutAppInstanceUserExpirationSettings.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_PutAppInstanceUserExpirationSettings.html)et [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_PutChannelExpirationSettings.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_messaging-chime_PutChannelExpirationSettings.html) APIs pour créer, mettre à jour et supprimer`ExpirationSettings`. 

L'exemple suivant vous montre comment utiliser la AWS CLI pour mettre à jour un `AppInstanceUser``ExpirationSettings`.

```
aws chime-sdk-identity put-app-instance-user-expiration-settings \
--app-instance-user-arn "app_instance_user_arn" \
--expiration-settings '{
            "ExpirationDays": 30,
            "ExpirationCriterion": "CREATED_TIMESTAMP"
        }'
```

L'exemple suivant montre comment utiliser la AWS CLI pour supprimer un canal`ExpirationSettings`.

```
aws chime-sdk-messaging put-channel-expiration-settings \
--chime-bearer "app_instance_user_arn" \
--channel-arn "channel_arn"
```

## AWS CloudTrail événements relatifs à la suppression de ressources expirées
<a name="ct-events"></a>

Une fois que le système a supprimé une ressource expirée, il envoie un `ExpireChannel` événement `ExpireAppInstanceUser` or à AWS CloudTrail. Le type d'événement dépend du type de ressource supprimée.

L'exemple suivant montre un `AppInstanceUser` événement.

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "accountId": "123456789012",
        "invokedBy": "chime.amazonaws.com"
    },
    "eventTime": "2023-03-15T00:00:00Z",
    "eventSource": "chime.amazonaws.com",
    "eventName": "ExpireAppInstanceUser",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "chime.amazonaws.com",
    "userAgent": "chime.amazonaws.com",
    "requestParameters": null,
    "responseElements": null,
    "eventID": "12345678-1234-1234-1234-123456789012",
    "readOnly": false,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS::Chime::AppInstanceUser",
            "ARN": "arn:aws:chime:us-east-1:123456789012:app-instance/app-instance-id/user/user-id"
        }
    ],
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "serviceEventDetails": {
        "reason": "AppInstanceUser deleted due to expiration settings."
    },
    "eventCategory": "Management"
}
```