Format und Verwendung des Ereigniskontexts - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Format und Verwendung des Ereigniskontexts

Amazon S3 Object Lambda bietet Kontext zu der Anfrage, die in dem Ereignis gestellt wird, das an Ihre AWS Lambda Funktion übergeben wird. Nachstehend finden Sie eine Beispielanforderung: Beschreibungen der Felder folgen nach dem Beispiel.

{ "xAmzRequestId": "requestId", "getObjectContext": { "inputS3Url": "https://my-s3-ap-111122223333.s3-accesspoint.us-east-1.amazonaws.com/example?X-Amz-Security-Token=<snip>", "outputRoute": "io-use1-001", "outputToken": "OutputToken" }, "configuration": { "accessPointArn": "arn:aws:s3-object-lambda:us-east-1:111122223333:accesspoint/example-object-lambda-ap", "supportingAccessPointArn": "arn:aws:s3:us-east-1:111122223333:accesspoint/example-ap", "payload": "{}" }, "userRequest": { "url": "https://object-lambda-111122223333.s3-object-lambda.us-east-1.amazonaws.com/example", "headers": { "Host": "object-lambda-111122223333.s3-object-lambda.us-east-1.amazonaws.com", "Accept-Encoding": "identity", "X-Amz-Content-SHA256": "e3b0c44298fc1example" } }, "userIdentity": { "type": "AssumedRole", "principalId": "principalId", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/example", "accountId": "111122223333", "accessKeyId": "accessKeyId", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "Wed Mar 10 23:41:52 UTC 2021" }, "sessionIssuer": { "type": "Role", "principalId": "principalId", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" } } }, "protocolVersion": "1.00" }

Die folgenden Felder sind in der Anforderung enthalten:

  • xAmzRequestId – Die Amazon-S3-Anforderungs-ID für diese Anforderung. Wir empfehlen, diesen Wert zu protokollieren, um beim Debuggen zu helfen.

  • getObjectContext – Die Eingabe- und Ausgabedetails für Verbindungen zu Amazon S3 und S3 Object Lambda.

    • inputS3Url— Eine vorsignierteURL, die verwendet werden kann, um das Originalobjekt von Amazon S3 abzurufen. Der URL ist mit der Identität des ursprünglichen Anrufers signiert, und die Berechtigungen dieses Benutzers gelten, wenn der URL verwendet wird. Wenn der signierte Header enthältURL, muss die Lambda-Funktion diese Header in den Aufruf von Amazon S3 einbeziehen, mit Ausnahme des Headers. Host

    • outputRoute— Ein Routing-Token, das dem S3 Object Lambda hinzugefügt wird, URL wenn die Lambda-Funktion aufgerufen wird. WriteGetObjectResponse

    • outputToken – Ein undurchsichtiges Token, das von S3 Object Lambda verwendet wird, um den WriteGetObjectResponse-Aufruf mit dem ursprünglichen Aufrufer abzugleichen.

  • configuration – Informationen zur Konfiguration des Object Lambda Access Point.

    • accessPointArn— Der Amazon-Ressourcenname (ARN) des Object Lambda Access Points, der diese Anfrage erhalten hat.

    • supportingAccessPointArn— Der ARN des unterstützenden Access Points, der in der Object Lambda Access Point-Konfiguration angegeben ist.

    • payload – Benutzerdefinierte Daten, die auf die Konfiguration des Object Lambda Access Point angewendet werden. S3 Object Lambda behandelt diese Daten als eine undurchsichtige Zeichenfolge, daher muss sie möglicherweise vor der Verwendung dekodiert werden.

  • userRequest – Informationen über den ursprünglichen Aufruf von S3 Object Lambda.

    • url— Die Dekodierung URL der Anfrage, wie sie von S3 Object Lambda empfangen wurde, mit Ausnahme aller autorisierungsbezogenen Abfrageparameter.

    • headers— Eine Zuordnung von Zeichenketten zu Zeichenketten, die die HTTP Header und ihre Werte aus dem ursprünglichen Aufruf enthalten, ausgenommen alle autorisierungsbezogenen Header. Wenn derselbe Header mehrfach erscheint, werden die Werte von jeder Instance desselben Header zu einer durch Kommata getrennten Liste zusammengefasst. Der Fall der ursprünglichen Header wird in dieser Zuordnung beibehalten.

  • userIdentity – Details zur die Identität, die den Aufruf von S3 Object Lambda getätigt hat. Weitere Informationen finden Sie unter Protokollieren von Datenereignissen für Trails im AWS CloudTrail -Benutzerhandbuch.

    • type – Die Art der Identität.

    • accountId— Der, AWS-Konto zu dem die Identität gehört.

    • userName – Der Anzeigename der Identität, von der der Aufruf stammt.

    • principalId – Die eindeutige ID für die Entität, von der der Aufruf stammt.

    • arn— Der ARN des Schulleiters, der den Anruf getätigt hat. Der letzte Abschnitt von ARN enthält den Benutzer oder die Rolle, die den Anruf getätigt hat.

    • sessionContext – Erfolgte die Abfrage mittels temporärer Sicherheitsanmeldeinformationen, stellt dieses Element Informationen über die Sitzung bereit, das für diese Anmeldeinformationen erstellt wurde.

    • invokedBy— Der Name desjenigen AWS service , der die Anfrage gestellt hat, z. B. Amazon EC2 Auto Scaling oder AWS Elastic Beanstalk.

    • sessionIssuer – Erfolgte die Abfrage mittels temporärer Sicherheitsanmeldeinformationen, gibt dieses Element Auskunft darüber, wie die Anmeldeinformationen erhalten wurden.

  • protocolVersion – Die Versions-ID des bereitgestellten Kontextes. Das Format des Felds ist {Major Version}.{Minor Version}. Die Nebenversionsnummern sind immer zweistellige Zahlen. Jede Entfernung oder Änderung der Semantik eines Feldes erfordert einen Sprung der Hauptversion und erfordert ein aktives Opt-In. Amazon S3 kann jederzeit neue Felder hinzufügen. Zu diesem Zeitpunkt kann es zu einem Sprung der Nebenversion kommen. Aufgrund der Art der Software-Einführung sehen Sie möglicherweise die Verwendung mehrerer Nebenversionen gleichzeitig.