사용 ExpirationSettings - Amazon Chime SDK

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

사용 ExpirationSettings

AppInstanceUser또는 a를 Channel 만들면 자동으로 삭제되도록 해당 리소스를 구성하는 ExpirationSettings 데 사용할 수 있습니다. ExpirationSettings스토리지 비용을 줄이고 resource-limit-exceeded 문제를 예방하는 데 도움이 됩니다. 예를 들어 7일이 지난 후 사용하지 않는 채널을 삭제하거나 테스트 목적으로만 호출된 AppInstanceUser를 삭제할 수 있습니다.

AppInstanceUser의 경우 사용자 생성 시간을 기준으로 만료 기간을 지정합니다. Channel의 경우 채널 생성 시간 또는 마지막 메시지 시간을 기준으로 만료 기간을 지정합니다. 후자의 경우 메시지 활동을 사용하여 자동 삭제를 사용자 지정할 수 있습니다.

중요

리소스가 만료된 후 곧바로 ExpirationSettings가 백그라운드 프로세스를 시작하여 해당 리소스를 삭제합니다. 프로세스는 일반적으로 6시간이 소요되지만 이 시간은 달라질 수 있습니다.

아직 삭제되지 않은 만료된 AppInstanceUsersChannels은 여전히 유효하고 활성 상태로 표시됩니다. 해당 항목들의 만료 설정을 업데이트하거나 제거할 수 있으며 시스템이 변경 사항을 반영합니다.

구성 ExpirationSettings

다음 섹션에서는 Channel 또는 ExpirationSettingsAppInstanceUser을 구성하는 방법에 대해 설명합니다.

리소스 생성 ExpirationSettings 시 구성

CreateAppInstanceUser또는 CreateChannelAPI를 실행할 ExpirationSettings 때 구성할 수 있습니다. ExpirationSettings 파라미터를 설정하는 경우 다음 IAM 권한을 부여해야 합니다.

  • AppInstanceUser를 생성할 때 chime:PutAppInstanceUserExpirationSettings

  • Channel을 생성할 때 chime:PutChannelExpirationSettings.

다음 예에서는 AWS CLI를 사용하여 1일 후에 AppInstanceUser 만료되는 CLI를 생성합니다.

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" }'

다음 예에서는 AWS CLI를 사용하여 메시지를 마지막으로 수신한 후 하루가 지나면 Channel 만료되는 인스턴스를 생성합니다.

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" }'

Put API를 사용하여 구성 ExpirationSettings

PutAppInstanceUserExpirationSettingsPutChannelExpirationSettingsAPI를 사용하여 생성, 업데이트 및 삭제할 수도 있습니다. ExpirationSettings

다음 예제는 AWS CLI를 사용하여 AppInstanceUser an을 업데이트하는 방법을 보여줍니다. 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" }'

다음 예제는 AWS CLI를 사용하여 채널을 삭제하는 방법을 보여줍니다. ExpirationSettings

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

AWS CloudTrail 만료된 리소스 삭제 이벤트

시스템이 만료된 리소스를 삭제한 후 ExpireAppInstanceUser 또는 ExpireChannel 이벤트를 에 보냅니다. AWS CloudTrail 이벤트 유형은 삭제된 자산의 유형에 따라 달라집니다.

다음 예시는 AppInstanceUser 이벤트를 보여줍니다.

{ "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" }