

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
<a name="durable-security"></a>

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
<a name="durable-execution-role"></a>

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.

Damit Lambda Ihre Ausführungsrolle übernehmen kann, muss die Vertrauensrichtlinie der Rolle den Lambda-Serviceprinzipal (`lambda.amazonaws.com`) als vertrauenswürdigen Dienst angeben. Das folgende Beispiel zeigt eine Vertrauensrichtlinie, die Lambda die Erlaubnis erteilt, die Rolle zu übernehmen.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

**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
<a name="durable-state-encryption"></a>

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
<a name="durable-custom-encryption"></a>

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 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
<a name="durable-cloudtrail-logging"></a>

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](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html).

**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
<a name="durable-cross-account-access"></a>

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
<a name="durable-inherited-security"></a>

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](https://docs.aws.amazon.com/lambda/latest/dg/lambda-security.html) Lambda Developer Guide. Die einzigen zusätzlichen Sicherheitsaspekte für dauerhafte Funktionen sind die in diesem Handbuch dokumentierten Checkpoint-Berechtigungen.