Esempio eventi per le regole AWS Config - AWS Config

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempio eventi per le regole AWS Config

Quando si verifica il trigger per una regola, AWS Config richiama la funzione AWS Lambda della regola tramite la pubblicazione di un evento. Quindi AWS Lambda esegue la funzione passando l'evento al gestore della funzione.

Evento di esempio per le valutazioni attivate dalle modifiche di configurazione

AWS Config pubblica un evento quando rileva una modifica di configurazione per una risorsa che rientra nell'ambito di una regola. L'esempio seguente mostra che la regola è stata attivata da una modifica di configurazione per un'istanza EC2.

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

Evento di esempio per le valutazioni attivate dalle modifiche di configurazione di dimensioni eccessive

Alcune modifiche delle risorse generano elementi di configurazione di dimensioni eccessive. L'esempio seguente mostra che la regola è stata attivata da una modifica di configurazione di dimensioni eccessive per un'istanza EC2.

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

Evento di esempio per le valutazioni attivate con frequenza periodica

AWS Config pubblica un evento quando esegue la valutazione delle risorse con una frequenza da te specificata (ad esempio ogni 24 ore). Il seguente evento di esempio mostra che la regola è stata attivata con frequenza periodica.

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

Attributi di eventi

L'oggetto JSON per un evento AWS Config contiene i seguenti attributi:

invokingEvent

L'evento che attiva la valutazione di una regola. Se l'evento viene pubblicato in risposta a una modifica di configurazione delle risorse, il valore per questo attributo è una stringa che contiene un JSON configurationItem o un configurationItemSummary (per gli elementi di configurazione dimensioni eccessive). L'elemento di configurazione rappresenta lo stato della risorsa nel momento in cui AWS Config ha rilevato la modifica. Per un esempio di un elemento di configurazione, consulta l'output prodotto dal comando get-resource-config-history AWS CLI in Visualizzazione della cronologia della configurazione.

Se l'evento viene pubblicato per una valutazione periodica, il valore è una stringa che contiene un oggetto JSON. L'oggetto include informazioni sulla valutazione che è stata attivata.

Per ogni tipo di evento, una funzione deve analizzare la stringa con un parser JSON per poter valutare il contenuto, come illustrato nel seguente esempio Node.js:

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

Coppie chiave-valore che la funzione elabora come parte della sua logica di valutazione. È possibile definire parametri quando utilizzi ilAWS Configconsole per creare una regola Lambda personalizzata. È inoltre possibile definire i parametri con l'attributo InputParameters nella richiesta API PutConfigRule AWS Config o nel comando put-config-rule AWS CLI.

Il codice JSON per i parametri è contenuto all'interno di una stringa, perciò una funzione deve analizzare la stringa con un parser JSON per essere in grado di valutare il contenuto, come illustrato nel seguente esempio Node.js:

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

Un token che la funzione deve passare a AWS Config con la chiamata PutEvaluations.

eventLeftScope

Un valore Boolean che indica se la risorsa AWS da valutare è stata rimossa dall'ambito della regola. Se il valore è true, la funzione indica che la valutazione può essere ignorata passando NOT_APPLICABLE come valore per l'attributo ComplianceType nella chiamata PutEvaluations.

executionRoleArn

L'ARN del ruolo IAM è assegnato aAWS Config.

configRuleArn

L'ARN che AWS Config ha assegnato alla regola.

configRuleName

Il nome assegnato alla regola che ha comportato la pubblicazione dell'evento e l'invocazione della funzione da parte di AWS Config.

configRuleId

L'ID che AWS Config ha assegnato alla regola.

accountId

ID dell'account AWS proprietario della regola.

version

Un numero di versione assegnato da AWS. La versione incrementa se AWS aggiunge attributi degli eventi AWS Config. Se una funzione richiede un attributo solo in eventi che soddisfano o superano una versione specifica, la funzione può controllare il valore dell'attributo.

La versione corrente per gli eventi AWS Config è 1.0.