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.
Protokollieren von AWS Lambda API-Aufrufen mit AWS CloudTrail
AWS Lambda ist in einen Dienst integriert AWS CloudTrail, der eine Aufzeichnung der von einem Benutzer, einer Rolle oder einem ausgeführten Aktionen bereitstellt AWS-Service. CloudTrail erfasst API-Aufrufe für Lambda als Ereignisse. Zu den erfassten Aufrufen gehören Aufrufe über die Lambda-Konsole und Codeaufrufe der Lambda-API-Operationen. Anhand der von gesammelten Informationen können Sie die Anfrage CloudTrail, die an Lambda gestellt wurde, die IP-Adresse, von der aus die Anfrage gestellt wurde, wann sie gestellt wurde, und weitere Details ermitteln.
Jeder Ereignis- oder Protokolleintrag enthält Informationen zu dem Benutzer, der die Anforderung generiert hat. Die Identitätsinformationen unterstützen Sie bei der Ermittlung der folgenden Punkte:
-
Ob die Anfrage mit Anmeldeinformationen des Root-Benutzers oder des Benutzers gestellt wurde.
-
Ob die Anfrage im Namen eines IAM Identity Center-Benutzers gestellt wurde.
-
Gibt an, ob die Anforderung mit temporären Sicherheitsanmeldeinformationen für eine Rolle oder einen Verbundbenutzer gesendet wurde.
-
Ob die Anforderung aus einem anderen AWS-Service gesendet wurde.
CloudTrail ist in Ihrem aktiv AWS-Konto , wenn Sie das Konto erstellen, und Sie haben automatisch Zugriff auf den CloudTrail Eventverlauf. Der CloudTrail Ereignisverlauf bietet eine einsehbare, durchsuchbare, herunterladbare und unveränderliche Aufzeichnung der aufgezeichneten Verwaltungsereignisse der letzten 90 Tage in einem. AWS-Region Weitere Informationen finden Sie im AWS CloudTrail Benutzerhandbuch unter Arbeiten mit dem CloudTrail Ereignisverlauf. Für die Anzeige des Ereignisverlaufs CloudTrail fallen keine Gebühren an.
Für eine fortlaufende Aufzeichnung der Ereignisse in AWS-Konto den letzten 90 Tagen erstellen Sie einen Trail- oder CloudTrailLake-Event-Datenspeicher.
- CloudTrail Pfade
-
Ein Trail ermöglicht CloudTrail die Übermittlung von Protokolldateien an einen Amazon S3 S3-Bucket. Alle mit dem erstellten Pfade AWS Management Console sind regionsübergreifend. Sie können einen Pfad mit einer oder mehreren Regionen erstellen, indem Sie den verwenden. AWS CLI Es wird empfohlen, einen Trail mit mehreren Regionen zu erstellen, da Sie alle Aktivitäten in Ihrem Konto AWS-Regionen erfassen. Wenn du einen Trail mit nur einer Region erstellst, kannst du dir nur die Ereignisse ansehen, die in den Trails protokolliert wurden. AWS-Region Weitere Informationen zu Trails finden Sie unter Einen Trail für Sie erstellen AWS-Konto und Einen Trail für eine Organisation erstellen im AWS CloudTrail Benutzerhandbuch.
Sie können eine Kopie Ihrer laufenden Verwaltungsereignisse kostenlos an Ihren Amazon S3 S3-Bucket senden, CloudTrail indem Sie einen Trail erstellen. Es fallen jedoch Amazon S3 S3-Speichergebühren an. Weitere Informationen zur CloudTrail Preisgestaltung finden Sie unter AWS CloudTrail Preise
. Informationen zu Amazon-S3-Preisen finden Sie unter Amazon S3-Preise . - CloudTrail Datenspeicher für Ereignisse in Lake
-
CloudTrail Mit Lake können Sie SQL-basierte Abfragen für Ihre Ereignisse ausführen. CloudTrail Lake konvertiert bestehende Ereignisse im zeilenbasierten JSON-Format in das Apache ORC-Format.
ORC ist ein spaltenförmiges Speicherformat, das für den schnellen Abruf von Daten optimiert ist. Die Ereignisse werden in Ereignisdatenspeichern zusammengefasst, bei denen es sich um unveränderliche Sammlungen von Ereignissen handelt, die auf Kriterien basieren, die Sie mit Hilfe von erweiterten Ereignisselektoren auswählen. Die Selektoren, die Sie auf einen Ereignisdatenspeicher anwenden, steuern, welche Ereignisse bestehen bleiben und für Sie zur Abfrage verfügbar sind. Weitere Informationen zu CloudTrail Lake finden Sie unter Arbeiten mit AWS CloudTrail Lake im AWS CloudTrail Benutzerhandbuch. CloudTrail Für das Speichern und Abfragen von Ereignisdaten in Lake fallen Kosten an. Beim Erstellen eines Ereignisdatenspeichers wählen Sie die Preisoption aus, die für den Ereignisdatenspeicher genutzt werden soll. Die Preisoption bestimmt die Kosten für die Erfassung und Speicherung von Ereignissen sowie die standardmäßige und maximale Aufbewahrungsdauer für den Ereignisdatenspeicher. Weitere Informationen zur Preisgestaltung finden Sie unter CloudTrail AWS CloudTrail Preisgestaltung
.
Lambda-Datenereignisse in CloudTrail
Datenereignisse liefern Informationen über die Ressourcenoperationen, die auf oder in einer Ressource ausgeführt werden (z. B. Lesen oder Schreiben in ein Amazon-S3-Objekt). Sie werden auch als Vorgänge auf Datenebene bezeichnet. Datenereignisse sind oft Aktivitäten mit hohem Volume. Standardmäßig werden die meisten Datenereignisse CloudTrail nicht protokolliert, und der CloudTrail Ereignisverlauf zeichnet sie auch nicht auf.
Ein CloudTrail Datenereignis, das standardmäßig für unterstützte Dienste protokolliert wird, istLambdaESMDisabled
. Weitere Informationen zur Verwendung dieses Ereignisses zur Behebung von Problemen mit Lambda-Ereignisquellenzuordnungen finden Sie unter. Wird CloudTrail zur Fehlerbehebung bei deaktivierten Lambda-Ereignisquellen verwendet
Für Datenereignisse werden zusätzliche Gebühren fällig. Weitere Informationen zur Preisgestaltung finden Sie unter CloudTrail Preise.AWS CloudTrail
Sie können Datenereignisse für den AWS::Lambda::Function
Ressourcentyp mithilfe der CloudTrail Konsole oder CloudTrail API-Operationen protokollieren. AWS CLI Weitere Informationen zum Protokollieren von Datenereignissen finden Sie unter Protokollieren von Datenereignissen mit der AWS Management Console und Protokollieren von Datenereignissen mit dem AWS Command Line Interface im AWS CloudTrail Benutzerhandbuch.
In der folgenden Tabelle ist der Lambda-Ressourcentyp aufgeführt, für den Sie Datenereignisse protokollieren können. In der Spalte Datenereignistyp (Konsole) wird der Wert angezeigt, der aus der Liste Datenereignistyp auf der CloudTrail Konsole ausgewählt werden kann. In der Wertspalte resources.type wird der resources.type
Wert angezeigt, den Sie angeben würden, wenn Sie erweiterte Event-Selektoren mithilfe der AWS CLI APIs oder konfigurieren würden. CloudTrail In der CloudTrail Spalte „Protokollierte Daten-APIs“ werden die API-Aufrufe angezeigt, die CloudTrail für den Ressourcentyp protokolliert wurden.
Typ des Datenereignisses (Konsole) | resources.type-Wert | Daten-APIs, bei denen die Anmeldung erfolgt CloudTrail |
---|---|---|
Lambda |
AWS::Lambda::Function
|
Sie können erweiterte Event-Selektoren so konfigurieren, dass sie nach den resources.ARN
Feldern eventName
readOnly
, und filtern, sodass nur die Ereignisse protokolliert werden, die für Sie wichtig sind. Das folgende Beispiel zeigt die JSON-Ansicht einer Datenereigniskonfiguration, in der nur Ereignisse für eine bestimmte Funktion protokolliert werden. Weitere Informationen zu diesen Feldern finden Sie AdvancedFieldSelectorin der AWS CloudTrail API-Referenz.
[ { "name": "function-invokes", "fieldSelectors": [ { "field": "eventCategory", "equals": [ "Data" ] }, { "field": "resources.type", "equals": [ "AWS::Lambda::Function" ] }, { "field": "resources.ARN", "equals": [ "
arn:aws:lambda:us-east-1:111122223333:function:hello-world
" ] } ] } ]
Lambda-Management-Ereignisse in CloudTrail
Verwaltungsereignisse enthalten Informationen zu Verwaltungsvorgängen, die an Ressourcen in Ihrem AWS-Konto ausgeführt werden. Sie werden auch als Vorgänge auf Steuerebene bezeichnet. In der Standardeinstellung werden Verwaltungsereignisse CloudTrail protokolliert.
Lambda unterstützt die Protokollierung der folgenden Aktionen als Verwaltungsereignisse in CloudTrail Protokolldateien.
Anmerkung
In der CloudTrail Protokolldatei eventName
können sie Datums- und Versionsinformationen enthalten, sie beziehen sich jedoch immer noch auf dieselbe öffentliche API-Aktion. Die GetFunction
Aktion wird beispielsweise als angezeigtGetFunction20150331v2
. In der folgenden Liste wird angegeben, wann sich der Ereignisname vom API-Aktionsnamen unterscheidet.
-
AddPermission(Name des Ereignisses:
AddPermission20150331v2
) -
CreateAlias(Name des Ereignisses:
CreateAlias20150331
) -
CreateEventSourceMapping(Name des Ereignisses:
CreateEventSourceMapping20150331
) -
CreateFunction(Name des Ereignisses:
CreateFunction20150331
)(Die
ZipFile
ParameterEnvironment
und werden in den CloudTrail Protokollen für weggelassenCreateFunction
.) -
DeleteAlias(Name des Ereignisses:
DeleteAlias20150331
) -
DeleteEventSourceMapping(Name des Ereignisses:
DeleteEventSourceMapping20150331
) -
DeleteFunction(Name des Ereignisses:
DeleteFunction20150331
) -
DeleteFunctionParallelität (Name des Ereignisses:
DeleteFunctionConcurrency20171031
) -
GetAlias(Name des Ereignisses:
GetAlias20150331
) -
PublishLayerVersion (Name des Ereignisses:
PublishLayerVersion20181031
)(Der
ZipFile
Parameter wird in den CloudTrail Protokollen für weggelassenPublishLayerVersion
.) -
PublishVersion(Name des Ereignisses:
PublishVersion20150331
) -
PutFunctionParallelität (Name des Ereignisses:
PutFunctionConcurrency20171031
) -
RemovePermission(Name des Ereignisses:
RemovePermission20150331v2
) -
TagResource(Name des Ereignisses:
TagResource20170331v2
) -
UntagResource(Name des Ereignisses:
UntagResource20170331v2
) -
UpdateAlias(Name des Ereignisses:
UpdateAlias20150331
) -
UpdateEventSourceMapping(Name des Ereignisses:
UpdateEventSourceMapping20150331
) -
UpdateFunctionCode (Name des Ereignisses:
UpdateFunctionCode20150331v2
)(Der
ZipFile
Parameter wird in den CloudTrail Protokollen für weggelassenUpdateFunctionCode
.) -
UpdateFunctionKonfiguration (Name des Ereignisses:
UpdateFunctionConfiguration20150331v2
)(Der
Environment
Parameter wird in den CloudTrail Protokollen für weggelassenUpdateFunctionConfiguration
.)
Wird CloudTrail zur Fehlerbehebung bei deaktivierten Lambda-Ereignisquellen verwendet
Wenn Sie den Status einer Ereignisquellenzuordnung mithilfe der UpdateEventSourceMappingAPI-Aktion ändern, wird der API-Aufruf als Verwaltungsereignis protokolliert. CloudTrail Zuordnungen von Ereignisquellen können aufgrund von Fehlern auch direkt in den Disabled
Status übergehen.
Für die folgenden Dienste veröffentlicht Lambda das LambdaESMDisabled
Datenereignis, CloudTrail wenn Ihre Ereignisquelle in den Status Deaktiviert übergeht:
-
Amazon-Simple-Queue-Service (Amazon SQS)
-
Amazon-DynamoDB
-
Amazon Kinesis
Lambda unterstützt dieses Ereignis nicht für andere Zuordnungstypen von Ereignisquellen.
Um Benachrichtigungen zu erhalten, wenn Ereignisquellenzuordnungen für unterstützte Dienste in den Disabled
Status wechseln, richten Sie in Amazon einen Alarm ein, der das LambdaESMDisabled
CloudTrail Ereignis CloudWatch verwendet. Weitere Informationen zum Einrichten eines CloudWatch Alarms finden Sie unter CloudWatch Alarme für CloudTrail Ereignisse erstellen: Beispiele.
Die serviceEventDetails
Entität in der LambdaESMDisabled
Ereignismeldung enthält einen der folgenden Fehlercodes.
RESOURCE_NOT_FOUND
-
Die in der Anforderung angegebene Ressource ist nicht vorhanden.
FUNCTION_NOT_FOUND
-
Die an die Ereignisquelle angefügte Funktion ist nicht vorhanden.
REGION_NAME_NOT_VALID
-
Ein Regionsname, der der Ereignisquelle oder -funktion zur Verfügung gestellt wird, ist ungültig.
AUTHORIZATION_ERROR
-
Es wurden keine Berechtigungen festgelegt oder sie wurden falsch konfiguriert.
FUNCTION_IN_FAILED_STATE
-
Der Funktionscode wird nicht kompiliert, hat eine nicht wiederherstellbare Ausnahme festgestellt oder eine fehlerhafte Bereitstellung ist aufgetreten.
Beispiele für Lambda-Ereignisse
Ein Ereignis stellt eine einzelne Anfrage aus einer beliebigen Quelle dar und enthält Informationen über den angeforderten API-Vorgang, Datum und Uhrzeit des Vorgangs, Anforderungsparameter usw. CloudTrail Protokolldateien sind kein geordneter Stack-Trace der öffentlichen API-Aufrufe, sodass Ereignisse nicht in einer bestimmten Reihenfolge angezeigt werden.
Das folgende Beispiel zeigt CloudTrail Protokolleinträge für die DeleteFunction
Aktionen GetFunction
und.
Anmerkung
Die eventName
kann Datums- und Versionsinformationen enthalten, wie z. B. die "GetFunction20150331"
, aber sie bezieht sich immer noch auf dieselbe öffentliche API.
{ "Records": [ { "eventVersion": "1.03", "userIdentity": { "type": "IAMUser", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "arn": "arn:aws:iam::111122223333:user/myUserName", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "myUserName" }, "eventTime": "2015-03-18T19:03:36Z", "eventSource": "lambda.amazonaws.com", "eventName": "GetFunction", "awsRegion": "us-east-1", "sourceIPAddress": "127.0.0.1", "userAgent": "Python-httplib2/0.8 (gzip)", "errorCode": "AccessDenied", "errorMessage": "User: arn:aws:iam::111122223333:user/myUserName is not authorized to perform: lambda:GetFunction on resource: arn:aws:lambda:us-west-2:111122223333:function:other-acct-function", "requestParameters": null, "responseElements": null, "requestID": "7aebcd0f-cda1-11e4-aaa2-e356da31e4ff", "eventID": "e92a3e85-8ecd-4d23-8074-843aabfe89bf", "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }, { "eventVersion": "1.03", "userIdentity": { "type": "IAMUser", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "arn": "arn:aws:iam::111122223333:user/myUserName", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "myUserName" }, "eventTime": "2015-03-18T19:04:42Z", "eventSource": "lambda.amazonaws.com", "eventName": "DeleteFunction20150331", "awsRegion": "us-east-1", "sourceIPAddress": "127.0.0.1", "userAgent": "Python-httplib2/0.8 (gzip)", "requestParameters": { "functionName": "basic-node-task" }, "responseElements": null, "requestID": "a2198ecc-cda1-11e4-aaa2-e356da31e4ff", "eventID": "20b84ce5-730f-482e-b2b2-e8fcc87ceb22", "eventType": "AwsApiCall", "recipientAccountId": "111122223333" } ] }
Informationen zu CloudTrail Datensatzinhalten finden Sie im AWS CloudTrail Benutzerhandbuch unter CloudTrailDatensatzinhalte.