Sicherheit und Berechtigungen für langlebige Lambda-Funktionen - AWS Lambda

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.

Sicherheit und Berechtigungen für langlebige Lambda-Funktionen

Dauerhafte Lambda-Funktionen erfordern spezielle IAM-Berechtigungen, um Checkpoint-Operationen zu verwalten. Folgen Sie dem Prinzip der geringsten Rechte, indem Sie nur die Berechtigungen gewähren, die Ihre Funktion benötigt.

Berechtigungen für die Ausführungsrolle

Die Ausführungsrolle Ihrer dauerhaften Funktion benötigt Berechtigungen, um Checkpoints zu erstellen und den Ausführungsstatus abzurufen. Die folgende Richtlinie zeigt die mindestens erforderlichen Berechtigungen:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:CheckpointDurableExecution", "lambda:GetDurableExecutionState" ], "Resource": "arn:aws:lambda:region:account-id:function:function-name:*" } ] }

Wenn Sie mithilfe der Konsole eine dauerhafte Funktion erstellen, fügt Lambda diese Berechtigungen automatisch der Ausführungsrolle hinzu. Wenn Sie die Funktion mit AWS CLI oder erstellen AWS CloudFormation, fügen Sie diese Berechtigungen Ihrer Ausführungsrolle hinzu.

Prinzip der geringsten Rechte

Beschränken Sie das Resource Element auf eine bestimmte Funktion, ARNs anstatt Platzhalter zu verwenden. Dies beschränkt die Ausführungsrolle auf Checkpoint-Operationen nur für die Funktionen, die sie benötigen.

Beispiel: Eingeschränkte Berechtigungen für mehrere Funktionen

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:CheckpointDurableExecution", "lambda:GetDurableExecutionState" ], "Resource": [ "arn:aws:lambda:us-east-1:123456789012:function:orderProcessor:*", "arn:aws:lambda:us-east-1:123456789012:function:paymentHandler:*" ] } ] }

Alternativ können Sie die AWS verwaltete Richtlinie verwenden, AWSLambdaBasicDurableExecutionRolePolicy die die erforderlichen dauerhaften Ausführungsberechtigungen zusammen mit den grundlegenden Lambda-Ausführungsberechtigungen für Amazon CloudWatch Logs umfasst.

Staatliche Verschlüsselung

Dauerhafte Lambda-Funktionen ermöglichen automatisch und kostenlos die Verschlüsselung im Ruhezustand mithilfe AWS eigener Schlüssel. Jede Funktionsausführung behält einen isolierten Status bei, auf den andere Ausführungen nicht zugreifen können. Vom Kunden verwaltete Schlüssel (CMK) werden nicht unterstützt.

Zu den Checkpoint-Daten gehören:

  • Schrittergebnisse und Rückgabewerte

  • Ausführungsfortschritt und Zeitplan

  • Informationen zum Wartestatus

Alle Daten werden während der Übertragung mit TLS verschlüsselt, wenn Lambda Checkpoint-Daten liest oder schreibt.

Benutzerdefinierte Verschlüsselung mit benutzerdefinierten Serialisierern und Deserialisierern

Für kritische Sicherheitsanforderungen können Sie mithilfe von benutzerdefinierten Serialisierern und Deserialisierern () mithilfe eines dauerhaften SDK Ihren eigenen Verschlüsselungs- und Entschlüsselungsmechanismus implementieren. SerDer Dieser Ansatz gibt Ihnen die volle Kontrolle über die Verschlüsselungsschlüssel und Algorithmen, die zum Schutz von Checkpoint-Daten verwendet werden.

Wichtig

Wenn Sie eine benutzerdefinierte Verschlüsselung verwenden, verlieren Sie die Sichtbarkeit der Betriebsergebnisse in der Lambda-Konsole und in den API-Antworten. Checkpoint-Daten erscheinen im Ausführungsverlauf verschlüsselt und können ohne Entschlüsselung nicht überprüft werden.

Die Anforderungen kms:Encrypt und kms:Decrypt Berechtigungen der Ausführungsrolle Ihrer Funktion für den AWS KMS Schlüssel, der in der benutzerdefinierten SerDer Implementierung verwendet wird.

CloudTrail Protokollierung

Lambda protokolliert Checkpoint-Operationen als Datenereignisse. AWS CloudTrail Sie können CloudTrail damit überprüfen, wann Checkpoints erstellt werden, Änderungen des Ausführungsstatus verfolgen und den Zugriff auf dauerhafte Ausführungsdaten überwachen.

Checkpoint-Operationen werden in CloudTrail Protokollen mit den folgenden Ereignisnamen angezeigt:

  • CheckpointDurableExecution- Wird protokolliert, wenn ein Schritt abgeschlossen ist und ein Checkpoint erstellt wird

  • GetDurableExecutionState- Wird protokolliert, wenn Lambda den Ausführungsstatus während der Wiedergabe abruft

Um die Protokollierung von Datenereignissen für dauerhafte Funktionen zu aktivieren, konfigurieren Sie einen CloudTrail Trail zum Protokollieren von Lambda-Datenereignissen. Weitere Informationen finden Sie im CloudTrail Benutzerhandbuch unter Protokollieren von Datenereignissen.

Beispiel: CloudTrail Protokolleintrag für den Checkpoint-Betrieb

{ "eventVersion": "1.08", "eventTime": "2024-11-16T10:30:45Z", "eventName": "CheckpointDurableExecution", "eventSource": "lambda.amazonaws.com", "requestParameters": { "functionName": "myDurableFunction", "executionId": "exec-abc123", "stepId": "step-1" }, "responseElements": null, "eventType": "AwsApiCall" }

Kontoübergreifende Überlegungen

Wenn Sie dauerhafte Funktionen AWS kontenübergreifend aufrufen, benötigt das aufrufende Konto eine lambda:InvokeFunction Genehmigung, aber Checkpoint-Operationen verwenden immer die Ausführungsrolle im Konto der Funktion. Das aufrufende Konto kann nicht direkt auf Checkpoint-Daten oder den Ausführungsstatus zugreifen.

Diese Isolierung stellt sicher, dass Checkpoint-Daten innerhalb des Kontos der Funktion sicher bleiben, auch wenn sie von externen Konten aus aufgerufen werden.

Vererbte Lambda-Sicherheitsfunktionen

Dauerhafte Funktionen übernehmen alle Sicherheits-, Governance- und Compliance-Funktionen von Lambda, einschließlich VPC-Konnektivität, Verschlüsselung mit Umgebungsvariablen, Warteschlangen mit unerlaubten Buchstaben, reservierte Parallelität, Funktions- URLs, Codesignatur- und Compliance-Zertifizierungen (SOC, PCI DSS, HIPAA usw.).

Ausführliche Informationen zu den Sicherheitsfunktionen von Lambda finden Sie unter Sicherheit AWS Lambda im Lambda Developer Guide. Die einzigen zusätzlichen Sicherheitsaspekte für dauerhafte Funktionen sind die in diesem Handbuch dokumentierten Checkpoint-Berechtigungen.