Types de notification d'événements et destinations associées - Amazon Simple Storage Service

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.

Types de notification d'événements et destinations associées

Amazon S3 prend en charge plusieurs types et destinations de notifications d'événements. Vous pouvez spécifier le type d'événement et la destination lors de la configuration de vos notifications. Une seule destination peut être spécifiée pour chaque notification d'événement. Les notifications d'événements Amazon S3 envoient une entrée d'événement pour chaque message de notification.

Destinations d'événements prises en charge

Amazon S3 peut envoyer des messages de notification d'événement vers les types de destination suivants :

  • Sujets relatifs à Amazon Simple Notification Service (AmazonSNS)

  • Files d'attente Amazon Simple Queue Service (AmazonSQS)

  • AWS Lambda

  • Amazon EventBridge

Cependant, un seul type de destination peut être spécifié pour chaque notification d'événement.

Note

Vous devez autoriser Amazon S3 à publier des messages sur un SNS sujet Amazon ou une SQS file d'attente Amazon. Vous devez également autoriser Amazon S3 à appeler une AWS Lambda fonction en votre nom. Pour obtenir des instructions sur la façon d'accorder ces autorisations, consultez Octroi d'autorisations pour la publication de messages de notification d'événement vers une destination.

SNSRubrique Amazon

Amazon SNS est un service de messagerie push flexible et entièrement géré. Vous pouvez utiliser ce service pour envoyer des messages en mode Push vers des appareils mobiles ou des services distribués. AvecSNS, vous pouvez publier un message une seule fois et le délivrer une ou plusieurs fois. Actuellement, Standard n'SNSest autorisé qu'en tant que destination de notification d'événements S3, alors qu'SNSFIFOil n'est pas autorisé.

Amazon coordonne et gère à la SNS fois l'envoi et la distribution de messages aux points de terminaison ou aux clients abonnés. Vous pouvez utiliser la SNS console Amazon pour créer un SNS sujet Amazon auquel vos notifications peuvent être envoyées.

Le sujet doit se trouver dans le même Région AWS que celui de votre compartiment Amazon S3. Pour savoir comment créer un SNS sujet Amazon, consultez Getting started with Amazon SNS dans le manuel Amazon Simple Notification Service Developer Guide et sur le site Amazon SNS FAQ.

Avant de pouvoir utiliser le SNS sujet Amazon que vous avez créé comme destination de notification d'événement, vous devez disposer des éléments suivants :

  • Le nom de la ressource Amazon (ARN) pour le SNS sujet Amazon

  • Un abonnement à une SNS rubrique Amazon valide. Grâce à elle, les abonnés à un sujet sont avertis lorsqu'un message est publié sur votre SNS sujet Amazon.

SQSFile d'attente Amazon

Amazon SQS propose des files d'attente hébergées fiables et évolutives pour stocker les messages lorsqu'ils circulent entre ordinateurs. Vous pouvez utiliser Amazon SQS pour transmettre n'importe quel volume de données sans que d'autres services soient toujours disponibles. Vous pouvez utiliser la SQS console Amazon pour créer une SQS file d'attente Amazon à laquelle vos notifications peuvent être envoyées.

La SQS file d'attente Amazon doit être identique à Région AWS celle de votre compartiment Amazon S3. Pour savoir comment créer une SQS file d'attente Amazon, consultez Qu'est-ce qu'Amazon Simple Queue Service et Getting started with Amazon SQS dans le guide du développeur Amazon Simple Queue Service.

Avant de pouvoir utiliser la SQS file d'attente Amazon comme destination de notification d'événement, vous devez disposer des éléments suivants :

  • Le nom de la ressource Amazon (ARN) pour la SQS file d'attente Amazon

Note

Les files d'attente Amazon Simple Queue Service FIFO (premier entré, premier sorti) ne sont pas prises en charge en tant que destination de notification d'événements Amazon S3. Pour envoyer une notification concernant un événement Amazon S3 à une SQS FIFO file d'attente Amazon, vous pouvez utiliser Amazon EventBridge. Pour plus d’informations, consultez Activation d'Amazon EventBridge.

Fonction Lambda

Vous pouvez l'utiliser AWS Lambda pour étendre d'autres AWS services avec une logique personnalisée ou créer votre propre backend qui fonctionne en termes d' AWS échelle, de performances et de sécurité. Lambda vous permet de créer des applications discrètes et axées sur les événements qui ne s'exécutent que lorsque vous en avez besoin. Vous pouvez également l'utiliser pour faire évoluer ces applications automatiquement de quelques requêtes par jour à des milliers de secondes.

Lambda peut exécuter du code personnalisé en réponse aux événements de compartiment Amazon S3 : vous chargez votre code personnalisé dans Lambda et créez ce qu'on appelle une fonction Lambda. Lorsqu'Amazon S3 détecte un événement d'un type spécifique, il peut le publier AWS Lambda et appeler votre fonction dans Lambda. En réponse, Lambda exécute votre fonction. Un type d'événement qu'il peut détecter, par exemple, est un événement créé par un objet.

Vous pouvez utiliser la AWS Lambda console pour créer une fonction Lambda qui utilise l' AWS infrastructure pour exécuter le code en votre nom. La fonction Lambda doit être située dans la même Région que votre compartiment S3. Vous devez également connaître le nom ou le numéro ARN d'une fonction Lambda pour configurer la fonction Lambda comme destination de notification d'événement.

Avertissement

Lorsque votre notification écrit dans le compartiment qui déclenche la notification, cela peut provoquer une boucle d'exécution. Par exemple, si le compartiment déclenche une fonction Lambda chaque fois qu'un objet est chargé et que la fonction charge un objet dans le compartiment, elle se déclenche elle-même indirectement. Afin d'éviter cela, utilisez deux compartiments ou configurez le déclencheur pour qu'il s'applique uniquement à un préfixe utilisé pour les objets entrants.

Pour plus d'informations et un exemple d'utilisation des notifications Amazon S3 avec AWS Lambda, consultez la section Utilisation AWS Lambda avec Amazon S3 dans le manuel du AWS Lambda développeur.

Amazon EventBridge

Amazon EventBridge est un bus d'événements sans serveur qui reçoit les événements des AWS services. Vous pouvez définir des règles pour faire correspondre les événements et les transmettre à des cibles, telles qu'un AWS service ou un HTTP point de terminaison. Pour plus d'informations, consultez le contenu EventBridge du guide de EventBridge l'utilisateur Amazon.

Contrairement aux autres destinations, vous pouvez activer ou désactiver les événements à diffuser EventBridge pour un bucket. Si vous activez la livraison, tous les événements sont envoyés à EventBridge. En outre, vous pouvez utiliser des EventBridge règles pour acheminer les événements vers des cibles supplémentaires.

Types d'événements pris en charge pourSQS,SNS, et Lambda

Amazon S3 peut publier les types d'événements ci-après. Vous devez spécifier ces types d'événements dans la configuration des notifications.

Types d'événements Description

s3 : TestEvent

Lorsqu'une notification est activée, Amazon S3 publie une notification de test. Cela permet de vérifier que la rubrique existe et que le propriétaire du compartiment est autorisé à publier la rubrique spécifiée.

Si l'activation de la notification échoue, vous ne recevez pas de notification de test.

s3 ObjectCreated : *

s3 ::Put ObjectCreated

s3 ::Publier ObjectCreated

s3 ::Copier ObjectCreated

s3 ObjectCreated : CompleteMultipartUpload

Les API opérations Amazon S3 telles que PUTPOST, et COPY peuvent créer un objet. Avec ces types d'événements, vous pouvez activer les notifications lorsqu'un objet est créé à l'aide d'une API opération spécifique. Vous pouvez également utiliser le type d's3:ObjectCreated:*événement pour demander une notification, quel API que soit le type utilisé pour créer un objet.

s3:ObjectCreated:CompleteMultipartUploadinclut des objets créés à l'aide UploadPartCopyd'opérations de copie.

s3 ObjectRemoved : *

s3 ::Supprimer ObjectRemoved

s3 ObjectRemoved : DeleteMarkerCreated

En utilisant les types d'ObjectRemovedévénements, vous pouvez activer la notification lorsqu'un objet ou un lot d'objets est retiré d'un compartiment.

Vous pouvez utiliser le type d'événement s3:ObjectRemoved:Delete pour demander l'envoi de notifications lorsqu'un objet est supprimé ou lorsqu'un objet avec version est supprimé de manière définitive. Vous pouvez également utiliser s3:ObjectRemoved:DeleteMarkerCreated, afin de demander l'envoi d'une notification lorsqu'un marqueur de suppression est créé pour un objet avec version. Pour savoir comment supprimer des objets versionnés, consultez Suppression des versions d'objet d'un compartiment activé pour la gestion des versions. Vous pouvez aussi utiliser un caractère générique s3:ObjectRemoved:*, afin de demander l'envoi d'une notification chaque fois qu'un objet est supprimé.

Ces notifications d'événements ne vous alertent pas lors de suppressions automatiques dans le cadre de configurations de cycle de vie ou lorsque des opérations échouent.

s3 ObjectRestore : *

s3 ::Publier ObjectRestore

s3 : Terminé ObjectRestore

s3 ::Supprimer ObjectRestore

En utilisant les types d'ObjectRestoreévénements, vous pouvez recevoir des notifications concernant le lancement et la fin d'un événement lors de la restauration d'objets issus de la classe de stockage S3 Glacier Flexible Retrieval, de la classe de stockage S3 Glacier Deep Archive, du niveau S3 Intelligent-Tiering Archive Access et du niveau S3 Intelligent-Tiering Deep Archive Access. Vous pouvez également recevoir des notifications lorsque la copie restaurée d'un objet expire.

Le type d'événement s3:ObjectRestore:Post vous avertit du début d'une restauration d'objet. Le type d'événement s3:ObjectRestore:Completed vous avertit de la fin de la restauration. Le type d'événement s3:ObjectRestore:Delete vous avertit lorsque la copie temporaire d'un objet restauré expire.

s3 : ReducedRedundancyLostObject Vous recevez cet événement de notification lorsqu'Amazon S3 détecte la perte d'un objet de la classe de RRS stockage.

s3:Replication:*

S3 : réplication : OperationFailedReplication

S3 : réplication : OperationMissedThreshold

S3 : réplication : OperationReplicatedAfterThreshold

S3 : réplication : OperationNotTracked

En utilisant les types d'événements de réplication, vous pouvez recevoir des notifications pour les configurations de réplication pour lesquelles les métriques de réplication S3 ou le contrôle du temps de réplication S3 (S3RTC) sont activés. Vous pouvez surveiller la minute-by-minute progression des événements de réplication en suivant les octets en attente, les opérations en attente et la latence de réplication. Pour plus d'informations sur les métriques de réplication, consultez Surveillance de la progression avec des métriques de réplication et des notifications d'événements S3.

Le type d'événement s3:Replication:OperationFailedReplication vous avertit lorsqu'un objet éligible à la réplication n'a pas pu être répliqué. Le type d'événement s3:Replication:OperationMissedThreshold vous avertit lorsqu'un objet éligible à la réplication dépasse le seuil de 15 minutes pour la réplication.

Le type d'événement s3:Replication:OperationReplicatedAfterThreshold vous avertit lorsqu'un objet éligible à la réplication qui utilise S3 Replication Time Control est répliqué après le seuil de 15 minutes. Le type d'événement s3:Replication:OperationNotTracked vous avertit lorsqu'un objet éligible à la réplication qui utilise S3 Replication Time Control n'est plus suivi par les mesures de réplication.

s3 LifecycleExpiration : *

s3 ::Supprimer LifecycleExpiration

s3 LifecycleExpiration : DeleteMarkerCreated

En utilisant les types d'LifecycleExpirationévénements, vous pouvez recevoir une notification lorsqu'Amazon S3 supprime un objet en fonction de votre configuration S3 Lifecycle.

Le type d'événement s3:LifecycleExpiration:Delete vous avertit lorsqu'un objet dans un compartiment non versionné est supprimé. Il vous avertit également lorsqu'une version d'objet est définitivement supprimée par une configuration de cycle de vie S3. Le type d'événement s3:LifecycleExpiration:DeleteMarkerCreated vous avertit lorsque le cycle de vie S3 crée un marqueur de suppression lors de la suppression d'une version actuelle d'un objet dans un compartiment versionné.

s3 : LifecycleTransition Vous recevez cette notification d'événement lorsqu'un objet est transféré vers une autre classe de stockage Amazon S3 par une configuration de cycle de vie S3.
s3 : IntelligentTiering Vous recevez cette notification d'événement afin d'être informé lorsqu'un objet de la classe de stockage S3 Intelligent-Tiering est passé au niveau d'accès Archive ou au niveau d'accès Deep Archive.

s3 ObjectTagging : *

s3 ::Put ObjectTagging

s3 ::Supprimer ObjectTagging

En utilisant les types d'ObjectTaggingévénements, vous pouvez activer la notification lorsqu'une balise d'objet est ajoutée ou supprimée d'un objet.

Le type d's3:ObjectTagging:Putévénement vous avertit lorsqu'une balise se trouve PUT sur un objet ou lorsqu'une balise existante est mise à jour. Le type d'événement s3:ObjectTagging:Delete vous avertit lorsqu'une étiquette est supprimée d'un objet.

s3 ::Put ObjectAcl Vous recevez cet événement de notification lorsqu'un élément ACL se trouve PUT sur un objet ou lorsqu'un objet existant ACL est modifié. Aucun événement n'est généré lorsqu'une demande n'entraîne aucune modification de celle d'un objetACL.

Types d'événements pris en charge pour Amazon EventBridge

Pour obtenir la liste des types d'événements qu'Amazon S3 enverra à Amazon EventBridge, consultezEn utilisant EventBridge.

Organisation d'événements et doublons d'événements

Les notifications d'événements Amazon S3 sont conçues pour envoyer des notifications au moins une fois, mais il n'est pas garanti qu'elles arrivent dans le même ordre que celui dans lequel les événements se sont produits. Dans de rares cas, le mécanisme de nouvelle tentative d'Amazon S3 peut provoquer des notifications d'événement S3 dupliquées pour le même événement d'objet. Pour en savoir plus sur la gestion des événements dupliqués ou en rupture de commande, consultez Gérer l'ordre des événements et les événements dupliqués avec les notifications d'événements Amazon S3 sur le blog AWS de stockage.