Exemple d'événements pour les règles d' AWS Config - AWS Config

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.

Exemple d'événements pour les règles d' AWS Config

Lorsque le déclencheur d'une règle se produit, AWS Config invoque la AWS Lambda fonction de la règle en publiant un événement. AWS Lambda Exécute ensuite la fonction en transmettant l'événement au gestionnaire de la fonction.

Exemple d'événement pour les évaluations déclenchées par des changements de configuration

AWS Config publie un événement lorsqu'il détecte un changement de configuration pour une ressource comprise dans le champ d'application d'une règle. L'exemple d'événement suivant montre que la règle a été déclenchée par un changement de configuration pour une EC2 instance.

{ "invokingEvent": "{\"configurationItem\":{\"configurationItemCaptureTime\":\"2016-02-17T01:36:34.043Z\",\"awsAccountId\":\"123456789012\",\"configurationItemStatus\":\"OK\",\"resourceId\":\"i-00000000\",\"ARN\":\"arn:aws:ec2:us-east-2:123456789012:instance/i-00000000\",\"awsRegion\":\"us-east-2\",\"availabilityZone\":\"us-east-2a\",\"resourceType\":\"AWS::EC2::Instance\",\"tags\":{\"Foo\":\"Bar\"},\"relationships\":[{\"resourceId\":\"eipalloc-00000000\",\"resourceType\":\"AWS::EC2::EIP\",\"name\":\"Is attached to ElasticIp\"}],\"configuration\":{\"foo\":\"bar\"}},\"messageType\":\"ConfigurationItemChangeNotification\"}", "ruleParameters": "{\"myParameterKey\":\"myParameterValue\"}", "resultToken": "myResultToken", "eventLeftScope": false, "executionRoleArn": "arn:aws:iam::123456789012:role/config-role", "configRuleArn": "arn:aws:config:us-east-2:123456789012:config-rule/config-rule-0123456", "configRuleName": "change-triggered-config-rule", "configRuleId": "config-rule-0123456", "accountId": "123456789012", "version": "1.0" }

Exemple d'événement pour les évaluations déclenchées par des changements de configuration surdimensionnés

Certaines modifications de ressources génèrent des éléments de configuration surdimensionnés. L'exemple d'événement suivant montre que la règle a été déclenchée par une modification de configuration surdimensionnée pour une EC2 instance.

{ "invokingEvent": "{\"configurationItemSummary\": {\"changeType\": \"UPDATE\",\"configurationItemVersion\": \"1.2\",\"configurationItemCaptureTime\":\"2016-10-06T16:46:16.261Z\",\"configurationStateId\": 0,\"awsAccountId\":\"123456789012\",\"configurationItemStatus\": \"OK\",\"resourceType\": \"AWS::EC2::Instance\",\"resourceId\":\"i-00000000\",\"resourceName\":null,\"ARN\":\"arn:aws:ec2:us-west-2:123456789012:instance/i-00000000\",\"awsRegion\": \"us-west-2\",\"availabilityZone\":\"us-west-2a\",\"configurationStateMd5Hash\":\"8f1ee69b287895a0f8bc5753eca68e96\",\"resourceCreationTime\":\"2016-10-06T16:46:10.489Z\"},\"messageType\":\"OversizedConfigurationItemChangeNotification\"}", "ruleParameters": "{\"myParameterKey\":\"myParameterValue\"}", "resultToken": "myResultToken", "eventLeftScope": false, "executionRoleArn": "arn:aws:iam::123456789012:role/config-role", "configRuleArn": "arn:aws:config:us-east-2:123456789012:config-rule/config-rule-ec2-managed-instance-inventory", "configRuleName": "change-triggered-config-rule", "configRuleId": "config-rule-0123456", "accountId": "123456789012", "version": "1.0" }

Exemple d'événement pour les évaluations déclenchées par une fréquence périodique

AWS Config publie un événement lorsqu'il évalue vos ressources à une fréquence que vous spécifiez (par exemple toutes les 24 heures). L'exemple d'événement suivant montre que la règle a été déclenchée par une fréquence périodique.

{ "invokingEvent": "{\"awsAccountId\":\"123456789012\",\"notificationCreationTime\":\"2016-07-13T21:50:00.373Z\",\"messageType\":\"ScheduledNotification\",\"recordVersion\":\"1.0\"}", "ruleParameters": "{\"myParameterKey\":\"myParameterValue\"}", "resultToken": "myResultToken", "eventLeftScope": false, "executionRoleArn": "arn:aws:iam::123456789012:role/config-role", "configRuleArn": "arn:aws:config:us-east-2:123456789012:config-rule/config-rule-0123456", "configRuleName": "periodic-config-rule", "configRuleId": "config-rule-6543210", "accountId": "123456789012", "version": "1.0" }

Attributs d'événement

L'JSONobjet d'un AWS Config événement contient les attributs suivants :

invokingEvent

L'événement qui déclenche l'évaluation d'une règle. Si l'événement est publié en réponse à une modification de la configuration des ressources, la valeur de cet attribut est une chaîne contenant a JSON configurationItem ou a configurationItemSummary (pour les éléments de configuration surdimensionnés). L'élément de configuration représente l'état de la ressource au moment où le changement a AWS Config été détecté. Pour un exemple d'élément de configuration, consultez le résultat produit par la get-resource-config-history AWS CLI commande dansAffichage de l'historique de configuration.

Si l'événement est publié pour une évaluation périodique, la valeur est une chaîne contenant un JSON objet. L'objet comporte des informations sur l'évaluation qui a été déclenchée.

Pour chaque type d'événement, une fonction doit analyser la chaîne à l'aide d'un JSON analyseur afin de pouvoir évaluer son contenu, comme le montre l'exemple Node.js suivant :

var invokingEvent = JSON.parse(event.invokingEvent);
ruleParameters

Paires clé/valeur que la fonction traite dans le cadre de sa logique d'évaluation. Vous définissez des paramètres lorsque vous utilisez la AWS Config console pour créer une règle Lambda personnalisée. Vous pouvez également définir des paramètres à l'aide de InputParameters l'attribut dans la PutConfigRule AWS Config API demande ou dans la put-config-rule AWS CLI commande.

Le JSON code des paramètres étant contenu dans une chaîne, une fonction doit analyser la chaîne à l'aide d'un JSON analyseur pour pouvoir évaluer son contenu, comme indiqué dans l'exemple Node.js suivant :

var ruleParameters = JSON.parse(event.ruleParameters);
resultToken

Un jeton auquel la fonction doit être transmise AWS Config lors de l'PutEvaluationsappel.

eventLeftScope

Valeur booléenne qui indique si la AWS ressource à évaluer a été supprimée du champ d'application de la règle. Si la valeur est true, la fonction indique que l'évaluation peut être ignorée en transmettant NOT_APPLICABLE en tant que valeur pour l'attribut ComplianceType dans l'appel de PutEvaluations.

executionRoleArn

Le ARN IAM rôle qui est attribué à AWS Config.

configRuleArn

ARNCelui AWS Config attribué à la règle.

configRuleName

Le nom que vous avez attribué à la règle qui a entraîné la publication AWS Config de l'événement et l'appel de la fonction.

configRuleId

L'ID AWS Config attribué à la règle.

accountId

L'ID du propriétaire Compte AWS de la règle.

version

Numéro de version attribué par AWS. La version augmentera si des attributs sont AWS ajoutés aux AWS Config événements. Si une fonction requiert un attribut qui figure uniquement dans des événements qui correspondent à ou dépassent une version spécifique, cette fonction peut vérifier la valeur de cet attribut.

La version actuelle pour les AWS Config événements est 1.0.