

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.

# Wie Sie Probleme mit schreibgeschützten Eigenschaften in AWS::Lambda::Function-Ressourcen beheben
<a name="generate-IaC-lambda-function"></a>

In diesem Thema wird erklärt, wie Sie Probleme mit schreibgeschützten Eigenschaften in [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-function.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-function.html)-Ressourcen beheben, wenn Sie den IaC-Generator verwenden.

## Problem
<a name="lambda-function-mutually-exclusive-properties-issue"></a>

Die Ressource `AWS::Lambda::Function` hat drei sich gegenseitig ausschließende Sätze von Eigenschaften zur Angabe des Lambda-Codes:
+ die Eigenschaften`Code/S3Bucket` und `Code/S3Key` und optional die Eigenschaft `Code/S3ObjectVersion` .
+ `Code/ImageUri` Eigenschaft
+ `Code/ZipFile` Eigenschaft

Für eine bestimmte `AWS::Lambda::Function`-Ressource kann nur eines dieser Sets verwendet werden.

Der IaC-Generator kann nicht feststellen, welcher Satz von exklusiven schreibgeschützten Eigenschaften zum Erstellen oder Aktualisieren der Ressource verwendet wurde. Daher wird nur der erste Satz von Eigenschaften in die generierte Vorlage aufgenommen. Die Eigenschaften `Code/ImageUri` und `Code/ZipFile` werden weggelassen. 

Außerdem gibt der IaC-Generator die folgenden Warnungen aus:
+ **`MUTUALLY_EXCLUSIVE_PROPERTIES`**- warnt davor, dass `Code/S3Bucket` und `Code/S3Key` als sich gegenseitig ausschließende Eigenschaften identifiziert werden.
+ **`UNSUPPORTED_PROPERTIES`**- Warnt, dass die Eigenschaft `Code/S3ObjectVersion` nicht unterstützt wird.

Um `AWS::Lambda::Function`-Ressourcen in eine generierte Vorlage aufzunehmen, müssen Sie die Vorlage herunterladen und mit den richtigen Code-Eigenschaften aktualisieren.

## Auflösung
<a name="lambda-function-mutually-exclusive-properties-resolution"></a>

**Wenn Sie Ihren Lambda-Code in einem Amazon S3-Bucket speichern und die `S3ObjectVersion` Eigenschaft**nicht verwenden, können Sie die generierte Vorlage ohne Änderungen importieren. Der IaC-Generator wird Sie während des Importvorgangs nach dem Amazon S3-Bucket und dem Schlüssel als Vorlagenparameter fragen.

****Wenn Sie Ihren Lambda-Code in einem Amazon ECR-Repository speichern**, können Sie Ihre Vorlage anhand der folgenden Anweisungen aktualisieren:**

1. Laden Sie die generierte Vorlage herunter.

1. Entfernen Sie die Eigenschaften und die entsprechenden Parameter für die Eigenschaften `Code/S3Bucket` und `Code/S3Key` aus der generierten Vorlage.

1. Ersetzen Sie die entfernten Eigenschaften in der generierten Vorlage durch die Eigenschaft `Code/ImageUri`, die die URL für das Amazon ECR-Repository angibt.

1. Öffnen Sie die generierte Vorlage in der IaC-Generator-Konsole und wählen Sie die Schaltfläche **Bearbeitete Vorlage importieren** .

****Wenn Sie Ihren Lambda-Code in einer Zip-Datei speichern**, können Sie Ihre Vorlage anhand der folgenden Anweisungen aktualisieren:**

1. Laden Sie die generierte Vorlage herunter.

1. Entfernen Sie die Eigenschaften und die entsprechenden Parameter für die Eigenschaften `Code/S3Bucket` und `Code/S3Key` aus der generierten Vorlage.

1. Ersetzen Sie die entfernten Eigenschaften in der generierten Vorlage durch die Eigenschaft `Code/ZipFile` .

1. Öffnen Sie die generierte Vorlage in der IaC-Generator-Konsole und wählen Sie die Schaltfläche **Bearbeitete Vorlage importieren** .

****Wenn Sie keine Kopie Ihres Lambda-Codes haben**, können Sie Ihre Vorlage anhand der folgenden Anweisungen aktualisieren:**

1. Verwenden Sie die AWS Lambda [https://docs.aws.amazon.com/lambda/latest/api/API_GetFunction.html](https://docs.aws.amazon.com/lambda/latest/api/API_GetFunction.html)API-Aktion (z. B. mithilfe des [https://docs.aws.amazon.com/cli/latest/reference/lambda/get-function.html](https://docs.aws.amazon.com/cli/latest/reference/lambda/get-function.html) AWS CLI Befehls).

1. In der Antwort lautet der Parameter `RepositoryType` `S3`, wenn sich der Code in einem Amazon S3-Bucket befindet, oder `ECR`, wenn sich der Code in einem Amazon ECR-Repository befindet.

1. In der Antwort enthält der Parameter `Location` eine vorsignierte URL, mit der Sie das Bereitstellungspaket für 10 Minuten herunterladen können. Laden Sie den Code herunter.

1. Laden Sie den Code in einen Amazon S3-Bucket hoch.

1. Führen Sie einen Importvorgang mit der generierten Vorlage aus und geben Sie den Bucketnamen und den Schlüssel als Parameterwerte an.