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.
AWS::Serverless::Function
Erstellt eine AWS Lambda Funktion, eine Ausführungsrolle AWS Identity and Access Management (IAM) und Zuordnungen von Ereignisquellen, die die Funktion auslösen.
Die AWS::Serverless::Function Ressource unterstützt auch das Metadata
Ressourcenattribut, sodass Sie anweisen können, benutzerdefinierte Laufzeiten AWS SAM zu erstellen, die Ihre Anwendung benötigt. Weitere Informationen zum Erstellen benutzerdefinierter Laufzeiten finden Sie unter. Erstellen von Lambda-Funktionen mit benutzerdefinierten Laufzeiten in AWS SAM
Anmerkung
Bei der Bereitstellung auf werden AWS CloudFormation Ihre AWS SAM Ressourcen in Ressourcen umgewandelt AWS CloudFormation . AWS SAM Weitere Informationen finden Sie unter Generierte AWS CloudFormation Ressourcen für AWS SAM.
Syntax
Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.
YAML
Type: AWS::Serverless::Function Properties: Architectures:
List
AssumeRolePolicyDocument:JSON
AutoPublishAlias:String
AutoPublishAliasAllProperties:Boolean
AutoPublishCodeSha256:String
CodeSigningConfigArn:String
CodeUri:String | FunctionCode
DeadLetterQueue:Map | DeadLetterQueue
DeploymentPreference:DeploymentPreference
Description:String
Environment:Environment
EphemeralStorage:EphemeralStorage
EventInvokeConfig:EventInvokeConfiguration
Events:EventSource
FileSystemConfigs:List
FunctionName:String
FunctionUrlConfig:FunctionUrlConfig
Handler:String
ImageConfig:ImageConfig
ImageUri:String
InlineCode:String
KmsKeyArn:String
Layers:List
LoggingConfig:LoggingConfig
MemorySize:Integer
PackageType:String
PermissionsBoundary:String
Policies:String | List | Map
PropagateTags:Boolean
ProvisionedConcurrencyConfig:ProvisionedConcurrencyConfig
RecursiveLoop:String
ReservedConcurrentExecutions:Integer
Role:String
RolePath:String
Runtime:String
RuntimeManagementConfig:RuntimeManagementConfig
SnapStart:SnapStart
SourceKMSKeyArn:String
Tags:Map
Timeout:Integer
Tracing:String
VersionDescription:String
VpcConfig:VpcConfig
Eigenschaften
-
Architectures
-
Die Befehlssatzarchitektur für die Funktion.
Weitere Informationen zu dieser Eigenschaft finden Sie unter Lambda-Befehlssatzarchitekturen im AWS Lambda Developer Guide.
Gültige Werte: Einer von oder
x86_64
arm64
Typ: Liste
Required: No
Standardwert:
x86_64
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Architectures
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
AssumeRolePolicyDocument
-
Fügt eine AssumeRolePolicyDocument für die Standardeinstellung hinzu, die
Role
für diese Funktion erstellt wurde. Wenn diese Eigenschaft nicht angegeben ist, wird eine Standardrolle für diese Funktion AWS SAM hinzugefügt.Typ: JSON
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
AssumeRolePolicyDocument
Eigenschaft einerAWS::IAM::Role
Ressource. AWS SAM fügt diese Eigenschaft der generierten IAM Rolle für diese Funktion hinzu. Wenn der Amazon-Ressourcenname (ARN) einer Rolle für diese Funktion angegeben wird, hat diese Eigenschaft keine Wirkung. -
AutoPublishAlias
-
Der Name des Lambda-Alias. Weitere Informationen zu Lambda-Aliasen finden Sie unter Lambda-Funktionsaliase im Developer Guide.AWS Lambda Beispiele, die diese Eigenschaft verwenden, finden Sie unter. Schrittweise Bereitstellung serverloser Anwendungen mit AWS SAM
AWS SAM generiert AWS::Lambda::Version und AWS::Lambda::AliasRessourcen, wenn diese Eigenschaft gesetzt ist. Informationen zu diesem Szenario finden Sie unterAutoPublishAlias Eigenschaft ist angegeben. Allgemeine Informationen zu generierten AWS CloudFormation Ressourcen finden Sie unterGenerierte AWS CloudFormation Ressourcen für AWS SAM.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
AutoPublishAliasAllProperties
-
Gibt an, wann eine neue erstellt
AWS::Lambda::Version
wird. Wanntrue
, eine neue Lambda-Version wird erstellt, wenn eine Eigenschaft in der Lambda-Funktion geändert wird. Wannfalse
, eine neue Lambda-Version wird nur erstellt, wenn eine der folgenden Eigenschaften geändert wird:-
Environment
,MemorySize
, oderSnapStart
. -
Jede Änderung, die zu einer Aktualisierung der
Code
Eigenschaft führt, z. B.CodeDict
ImageUri
, oderInlineCode
.
Diese Eigenschaft
AutoPublishAlias
muss definiert werden.Wenn auch angegeben
AutoPublishSha256
ist, hat ihr Verhalten VorrangAutoPublishAliasAllProperties: true
vor.Typ: Boolesch
Required: No
Standardwert:
false
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
-
AutoPublishCodeSha256
-
Wenn diese Zeichenfolge verwendet wird, bestimmt sie zusammen mit dem
CodeUri
Wert, ob eine neue Lambda-Version veröffentlicht werden muss. Diese Eigenschaft wird häufig verwendet, um das folgende Bereitstellungsproblem zu lösen: Ein Bereitstellungspaket wird an einem Amazon S3 S3-Standort gespeichert und durch ein neues Bereitstellungspaket mit aktualisiertem Lambda-Funktionscode ersetzt, aber dieCodeUri
Eigenschaft bleibt unverändert (im Gegensatz dazu, dass das neue Bereitstellungspaket an einen neuen Amazon S3 S3-Standort hochgeladen und dann an den neuen Speicherort geändertCodeUri
wird).Dieses Problem ist durch eine AWS SAM Vorlage gekennzeichnet, die die folgenden Merkmale aufweist:
Das
DeploymentPreference
Objekt ist für schrittweise Bereitstellungen konfiguriert (wie unter beschriebenSchrittweise Bereitstellung serverloser Anwendungen mit AWS SAM)Die
AutoPublishAlias
Eigenschaft ist festgelegt und ändert sich zwischen den Bereitstellungen nichtDie
CodeUri
Eigenschaft ist festgelegt und ändert sich zwischen den Bereitstellungen nicht.
In diesem Szenario
AutoPublishCodeSha256
führt die Aktualisierung dazu, dass eine neue Lambda-Version erfolgreich erstellt wird. Neuer Funktionscode, der in Amazon S3 bereitgestellt wird, wird jedoch nicht erkannt. Um neuen Funktionscode zu erkennen, sollten Sie die Versionierung in Ihrem Amazon S3 S3-Bucket verwenden. Geben Sie dieVersion
Eigenschaft für Ihre Lambda-Funktion an und konfigurieren Sie Ihren Bucket so, dass er immer das neueste Bereitstellungspaket verwendet.In diesem Szenario müssen Sie einen eindeutigen Wert für
AutoPublishCodeSha256
angeben, um die schrittweise Bereitstellung erfolgreich auszulösen.Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
CodeSigningConfigArn
-
Das ARN von AWS::Lambda::CodeSigningConfigRessource, die verwendet wird, um die Codesignatur für diese Funktion zu aktivieren. Weitere Hinweise zur Codesignatur finden Sie unterRichten Sie die Codesignatur für Ihre AWS SAM Anwendung ein.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
CodeSigningConfigArn
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
CodeUri
-
Der Code für die Funktion. Zu den akzeptierten Werten gehören:
-
Die Funktion ist Amazon S3URI. Beispiel,
s3://bucket-123456789/sam-app/1234567890abcdefg
. -
Der lokale Pfad zur Funktion. Beispiel,
hello_world/
. -
Ein FunctionCode-Objekt.
Anmerkung
Wenn Sie Amazon S3 URI oder das FunctionCode Objekt einer Funktion bereitstellen, müssen Sie auf ein gültiges Lambda-Bereitstellungspaket verweisen.
Wenn Sie einen lokalen Dateipfad angeben, verwenden Sie AWS SAM CLI um die lokale Datei bei der Bereitstellung hochzuladen. Weitere Informationen hierzu finden Sie unter So werden lokale Dateien bei der Bereitstellung AWS SAM hochgeladen.
Wenn Sie systeminterne Funktionen in der
CodeUri
Eigenschaft verwenden, AWS SAM können die Werte nicht korrekt analysiert werden. Erwägen Sie stattdessen die Verwendung von AWS:: transform LanguageExtensions .Typ: [Zeichenfolge |FunctionCode]
Erforderlich: Bedingt. Wenn auf gesetzt
PackageType
istZip
,InlineCode
ist einer vonCodeUri
oder erforderlich.AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
Code
Eigenschaft einerAWS::Lambda::Function
Ressource. Die verschachtelten Amazon S3 S3-Eigenschaften sind unterschiedlich benannt. -
-
DeadLetterQueue
-
Konfiguriert ein Amazon Simple Notification Service (AmazonSNS) -Thema oder eine Amazon Simple Queue Service (AmazonSQS) -Warteschlange, in der Lambda Ereignisse sendet, die es nicht verarbeiten kann. Weitere Informationen zur Funktionalität von Warteschlangen für unzustellbare Briefe finden Sie unter Warteschlangen für unzustellbare Briefe im Entwicklerhandbuch.AWS Lambda
Anmerkung
Wenn die Ereignisquelle Ihrer Lambda-Funktion eine SQS Amazon-Warteschlange ist, konfigurieren Sie eine Warteschlange für unzustellbare Briefe für die Quellwarteschlange, nicht für die Lambda-Funktion. Die Warteschlange mit unverschlüsselten Buchstaben, die Sie für eine Funktion konfigurieren, wird für die asynchrone Aufruf-Warteschlange der Funktion verwendet, nicht für Warteschlangen mit Ereignisquellen.
Typ: Map | DeadLetterQueue
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
DeadLetterConfig
Eigenschaft einerAWS::Lambda::Function
Ressource. In wird AWS CloudFormation der Typ von abgeleitetTargetArn
, wohingegen AWS SAM Sie den Typ zusammen mit dem übergeben müssenTargetArn
. -
DeploymentPreference
-
Die Einstellungen zur Aktivierung schrittweiser Lambda-Bereitstellungen.
Wenn ein
DeploymentPreference
Objekt angegeben ist, AWS SAM wird ein AWS::CodeDeploy::ApplicationaufgerufenServerlessDeploymentApplication
(einer pro Stapel), ein AWS::CodeDeploy::DeploymentGroupgerufen
und ein AWS::IAM::Rolegerufen<function-logical-id>
DeploymentGroupCodeDeployServiceRole
.Typ: DeploymentPreference
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
Siehe auch: Weitere Informationen zu dieser Eigenschaft finden Sie unterSchrittweise Bereitstellung serverloser Anwendungen mit AWS SAM.
-
Description
-
Eine Beschreibung der Funktion.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Description
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
Environment
-
Die Konfiguration für die Laufzeitumgebung.
Typ: Umgebung
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Environment
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
EphemeralStorage
-
Ein Objekt, das den Festplattenspeicher in MB angibt, der Ihrer Lambda-Funktion in
/tmp
zur Verfügung steht.Weitere Informationen zu dieser Eigenschaft finden Sie unter Lambda Execution Environment im AWS Lambda Developer Guide.
Typ: EphemeralStorage
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
EphemeralStorage
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
EventInvokeConfig
-
Das Objekt, das die Konfiguration des Ereignisaufrufs für eine Lambda-Funktion beschreibt.
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
Events
-
Gibt die Ereignisse an, die diese Funktion auslösen. Ereignisse bestehen aus einem Typ und einer Reihe von Eigenschaften, die vom Typ abhängen.
Typ: EventSource
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
FileSystemConfigs
-
Liste der FileSystemConfigObjekte, die die Verbindungseinstellungen für ein Amazon Elastic File System (AmazonEFS) -Dateisystem angeben.
Wenn Ihre Vorlage eine enthält AWS::EFS::MountTargetRessource, Sie müssen auch ein
DependsOn
Ressourcenattribut angeben, um sicherzustellen, dass das Mount-Ziel vor der Funktion erstellt oder aktualisiert wird.Typ: Liste
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
FileSystemConfigs
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
FunctionName
-
Ein Name für die Funktion. Wenn Sie keinen Namen angeben, wird ein eindeutiger Name für Sie generiert.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
FunctionName
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
FunctionUrlConfig
-
Das Objekt, das eine Funktion beschreibtURL. Eine Funktion URL ist ein HTTPS Endpunkt, mit dem Sie Ihre Funktion aufrufen können.
Weitere Informationen finden Sie unter Funktion URLs im AWS Lambda Entwicklerhandbuch.
Typ: FunctionUrlConfig
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
Handler
-
Die Funktion in Ihrem Code, die aufgerufen wird, um mit der Ausführung zu beginnen. Diese Eigenschaft ist nur erforderlich, wenn die
PackageType
Eigenschaft auf gesetzt istZip
.Typ: Zeichenfolge
Required: Conditional
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Handler
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
ImageConfig
-
Das Objekt, das zur Konfiguration der Lambda-Container-Image-Einstellungen verwendet wird. Weitere Informationen finden Sie unter Verwenden von Container-Images mit Lambda im AWS Lambda Entwicklerhandbuch.
Typ: ImageConfig
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
ImageConfig
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
ImageUri
-
Das Repository URI der Amazon Elastic Container Registry (AmazonECR) für das Container-Image der Lambda-Funktion. Diese Eigenschaft gilt nur, wenn die
PackageType
Eigenschaft auf gesetzt istImage
, andernfalls wird sie ignoriert. Weitere Informationen finden Sie unter Verwenden von Container-Images mit Lambda im AWS Lambda Entwicklerhandbuch.Anmerkung
Wenn die
PackageType
Eigenschaft auf gesetzt istImage
,ImageUri
ist entweder eine Option erforderlich, oder Sie müssen Ihre Anwendung mit den erforderlichenMetadata
Einträgen in der AWS SAM Vorlagendatei erstellen. Weitere Informationen finden Sie unter Standard-Build mit AWS SAM.Das Erstellen Ihrer Anwendung mit den erforderlichen
Metadata
Einträgen hat Vorrang. Wenn Sie also beide angebenImageUri
,ImageUri
wird das ignoriert.Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
ImageUri
Eigenschaft desAWS::Lambda::Function
Code
Datentyps übergeben. -
InlineCode
-
Der Lambda-Funktionscode, der direkt in die Vorlage geschrieben ist. Diese Eigenschaft gilt nur, wenn die
PackageType
Eigenschaft auf gesetzt istZip
, andernfalls wird sie ignoriert.Anmerkung
Wenn die
PackageType
Eigenschaft aufZip
(Standard) gesetzt ist,InlineCode
ist einer vonCodeUri
oder erforderlich.Typ: Zeichenfolge
Required: Conditional
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
ZipFile
Eigenschaft desAWS::Lambda::Function
Code
Datentyps übergeben. -
KmsKeyArn
-
Der Schlüssel ARN of an AWS Key Management Service (AWS KMS), den Lambda zum Verschlüsseln und Entschlüsseln der Umgebungsvariablen Ihrer Funktion verwendet.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
KmsKeyArn
Eigenschaft einer Ressource übergeben.AWS::Lambda::Function
-
Layers
-
Die Liste
LayerVersion
ARNs, die diese Funktion verwenden soll. Die hier angegebene Reihenfolge ist die Reihenfolge, in der sie importiert werden, wenn die Lambda-Funktion ausgeführt wird.Typ: Liste
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Layers
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
LoggingConfig
-
Die Amazon CloudWatch Logs-Konfigurationseinstellungen der Funktion.
Typ: LoggingConfig
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
LoggingConfig
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
MemorySize
-
Die Größe des Speichers in MB, der pro Aufruf der Funktion zugewiesen wird.
Typ: Ganzzahl
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
MemorySize
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
PackageType
-
Der Bereitstellungspakettyp der Lambda-Funktion. Weitere Informationen finden Sie unter Lambda-Bereitstellungspakete im AWS Lambda Developer Guide.
Hinweise:
1. Wenn diese Eigenschaft auf
Zip
(Standard) gesetzt ist,InlineCode
gilt entwederCodeUri
oder undImageUri
wird ignoriert.2. Wenn diese Eigenschaft auf gesetzt ist
Image
,ImageUri
gilt nur,CodeUri
und beideInlineCode
werden ignoriert. Das ECR Amazon-Repository, das zum Speichern des Container-Images der Funktion erforderlich ist, kann auto erstellt werden von AWS SAM CLI. Weitere Informationen finden Sie untersam deploy.Zulässige Werte:
Zip
oderImage
.Typ: Zeichenfolge
Required: No
Standardwert:
Zip
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
PackageType
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
PermissionsBoundary
-
Die Grenze ARN der Berechtigungen, die für die Ausführungsrolle dieser Funktion verwendet werden soll. Diese Eigenschaft funktioniert nur, wenn die Rolle für Sie generiert wurde.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
PermissionsBoundary
Eigenschaft einerAWS::IAM::Role
Ressource übergeben. -
Policies
-
Berechtigungsrichtlinien für diese Funktion. Richtlinien werden an die Standardausführungsrolle AWS Identity and Access Management (IAM) der Funktion angehängt.
Diese Eigenschaft akzeptiert einen einzelnen Wert oder eine Liste von Werten. Gültige Werte sind:
-
Das Tool ARN einer AWS verwalteten Richtlinie oder einer vom Kunden verwalteten Richtlinie.
-
Der Name einer AWS verwalteten Richtlinie aus der folgenden Liste
. -
Eine IAMInline-Richtlinie, formatiert in YAML als Karte.
Anmerkung
Wenn Sie die
Role
Eigenschaft festlegen, wird diese Eigenschaft ignoriert.Typ: Zeichenfolge | Liste | Karte
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
Policies
Eigenschaft einerAWS::IAM::Role
Ressource. -
Geben Sie an, ob Tags von der
Tags
Eigenschaft an Ihre AWS::Serverless::Function generierten Ressourcen übergeben werden sollen oder nicht. Geben SieTrue
an, dass Tags in Ihren generierten Ressourcen verbreitet werden sollen.Typ: Boolesch
Required: No
Standardwert:
False
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
ProvisionedConcurrencyConfig
-
Die bereitgestellte Parallelitätskonfiguration des Alias einer Funktion.
Anmerkung
ProvisionedConcurrencyConfig
kann nur angegeben werden, wenn der gesetztAutoPublishAlias
ist. Andernfalls tritt ein Fehler auf.Typ: ProvisionedConcurrencyConfig
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
ProvisionedConcurrencyConfig
Eigenschaft einerAWS::Lambda::Alias
Ressource übergeben. -
RecursiveLoop
-
Der Status der Konfiguration der rekursiven Schleifenerkennung Ihrer Funktion.
Wenn dieser Wert auf gesetzt ist
Allow
und Lambda erkennt, dass Ihre Funktion als Teil einer rekursiven Schleife aufgerufen wird, ergreift es keine Aktion.Wenn dieser Wert auf gesetzt ist
Terminate
und Lambda erkennt, dass Ihre Funktion als Teil einer rekursiven Schleife aufgerufen wird, stoppt es den Aufruf Ihrer Funktion und benachrichtigt Sie.Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die Eigenschaft der
RecursiveLoop
Ressource übergeben.AWS::Lambda::Function
-
ReservedConcurrentExecutions
-
Die maximale Anzahl gleichzeitiger Ausführungen, die Sie für die Funktion reservieren möchten.
Weitere Informationen zu dieser Eigenschaft finden Sie unter Lambda Function Scaling im AWS Lambda Developer Guide.
Typ: Ganzzahl
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
ReservedConcurrentExecutions
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
Role
-
Die ARN einer IAM Rolle, die als Ausführungsrolle dieser Funktion verwendet werden soll.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
Role
Eigenschaft einerAWS::Lambda::Function
Ressource. Dies ist in erforderlich AWS CloudFormation , aber nicht in AWS SAM. Wenn keine Rolle angegeben ist, wird für Sie eine mit der logischen ID von erstellt
.<function-logical-id>
Role -
RolePath
-
Der Pfad zur IAM Ausführungsrolle der Funktion.
Verwenden Sie diese Eigenschaft, wenn die Rolle für Sie generiert wird. Nicht verwenden, wenn die Rolle mit der
Role
Eigenschaft angegeben ist.Typ: Zeichenfolge
Required: Conditional
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Path
Eigenschaft einerAWS::IAM::Role
Ressource übergeben. -
Runtime
-
Die ID der Laufzeit der Funktion. Diese Eigenschaft ist nur erforderlich, wenn die
PackageType
Eigenschaft auf gesetzt istZip
.Anmerkung
Wenn Sie den
provided
Bezeichner für diese Eigenschaft angeben, können Sie dasMetadata
Ressourcenattribut verwenden, um anzuweisen, die benutzerdefinierte Laufzeit AWS SAM zu erstellen, die für diese Funktion erforderlich ist. Weitere Informationen zum Erstellen benutzerdefinierter Laufzeiten finden Sie unter. Erstellen von Lambda-Funktionen mit benutzerdefinierten Laufzeiten in AWS SAMTyp: Zeichenfolge
Required: Conditional
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Runtime
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
RuntimeManagementConfig
-
Konfigurieren Sie Laufzeitverwaltungsoptionen für Ihre Lambda-Funktionen wie Updates der Laufzeitumgebung, Rollback-Verhalten und Auswahl einer bestimmten Laufzeitversion. Weitere Informationen finden Sie unter Lambda Runtime Updates im AWS Lambda Developer Guide.
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
RuntimeManagementConfig
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
SnapStart
-
Erstellen Sie einen Snapshot einer beliebigen neuen Lambda-Funktionsversion. Ein Snapshot ist ein zwischengespeicherter Status Ihrer initialisierten Funktion, einschließlich all ihrer Abhängigkeiten. Die Funktion wird nur einmal initialisiert und der zwischengespeicherte Status wird für alle future Aufrufe wiederverwendet, wodurch die Anwendungsleistung verbessert wird, indem die Häufigkeit, mit der Ihre Funktion initialisiert werden muss, reduziert wird. Weitere Informationen finden Sie unter Verbessern der Startleistung mit Lambda SnapStart im AWS Lambda Entwicklerhandbuch.
Typ: SnapStart
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
SnapStart
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
SourceKmsKeyArn
-
Stellt einen KMS Schlüssel darARN, der zur Verschlüsselung des ZIP Funktionscodes des Kunden verwendet wird.
Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
SourceKmsKeyArn
Eigenschaft einesAWS::Lambda::Function
Code
Datentyps übergeben. -
Eine Zuordnung (von Zeichenfolge zu Zeichenfolge), die die zu dieser Funktion hinzugefügten Tags angibt. Einzelheiten zu gültigen Schlüsseln und Werten für Tags finden Sie unter Anforderungen an Tagschlüssel und -werte im AWS Lambda Entwicklerhandbuch.
Wenn der Stack erstellt wird, fügt er dieser Lambda-Funktion und den Standardrollen, die für diese Funktion generiert werden, AWS SAM automatisch ein
lambda:createdBy:SAM
Tag hinzu.Typ: Karte
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
Tags
Eigenschaft einerAWS::Lambda::Function
Ressource. DieTags
Eigenschaft in AWS SAM besteht aus Schlüssel-Wert-Paaren (wohingegen AWS CloudFormation diese Eigenschaft aus einer Liste vonTag
Objekten besteht). Fügt dieser Lambda-Funktion und den Standardrollen, die für diese Funktion generiert werden, außerdem AWS SAM automatisch einlambda:createdBy:SAM
Tag hinzu. -
Timeout
-
Die maximale Zeit in Sekunden, während der die Funktion ausgeführt werden kann, bevor sie beendet wird.
Typ: Ganzzahl
Required: No
Standard: 3
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Timeout
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben. -
Tracing
-
Die Zeichenfolge, die den X-Ray-Tracing-Modus der Funktion angibt.
-
Active
— Aktiviert die Röntgenverfolgung für die Funktion. -
Disabled
— Deaktiviert X-Ray für die Funktion. -
PassThrough
— Aktiviert die Röntgenverfolgung für die Funktion. Die Entscheidung über die Probenahme wird an die nachgelagerten Dienststellen delegiert.
Wenn als
Active
oder angegebenPassThrough
und dieRole
Eigenschaft nicht festgelegt ist, wird diearn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess
Richtlinie der Lambda-Ausführungsrolle AWS SAM hinzugefügt, die sie für Sie erstellt.Weitere Informationen zu X-Ray finden Sie unter AWS Lambda Using with AWS X-Ray im AWS Lambda Developer Guide.
Gültige Werte: [
Active
|Disabled
|PassThrough
]Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ähnelt der
TracingConfig
Eigenschaft einerAWS::Lambda::Function
Ressource. -
-
VersionDescription
-
Gibt das
Description
Feld an, das der neuen Lambda-Versionsressource hinzugefügt wird.Typ: Zeichenfolge
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
Description
Eigenschaft einerAWS::Lambda::Version
Ressource übergeben. -
VpcConfig
-
Die Konfiguration, die es dieser Funktion ermöglicht, auf private Ressourcen in Ihrer virtuellen privaten Cloud (VPC) zuzugreifen.
Typ: VpcConfig
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die
VpcConfig
Eigenschaft einerAWS::Lambda::Function
Ressource übergeben.
Rückgabewerte
Punkt
Wenn die logische ID dieser Ressource der Ref
systemeigenen Funktion zur Verfügung gestellt wird, gibt sie den Ressourcennamen der zugrunde liegenden Lambda-Funktion zurück.
Weitere Informationen zur Verwendung der Ref
Funktion finden Sie Ref
im AWS CloudFormation Benutzerhandbuch.
Fn:: GetAtt
Fn::GetAtt
gibt einen Wert für ein angegebenes Attribut dieses Typs zurück. Im Folgenden sehen Sie die verfügbaren Attribute und Beispielrückgabewerte.
Weitere Informationen zur Verwendung Fn::GetAtt
finden Sie Fn::GetAtt
im AWS CloudFormation Benutzerhandbuch.
Arn
-
Die ARN der zugrunde liegenden Lambda-Funktion.
Beispiele
Einfache Funktion
Im Folgenden finden Sie ein grundlegendes Beispiel für eine AWS::Serverless::Function Ressource mit Pakettyp Zip
(Standard) und Funktionscode in einem Amazon S3 S3-Bucket.
YAML
Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://
bucket-name
/key-name
Beispiel für Funktionseigenschaften
Im Folgenden finden Sie ein Beispiel für einen AWS::Serverless::Function Pakettyp Zip
(Standard)InlineCode
, derLayers
,Tracing
, Policies
Amazon EFS
, und eine Api
Ereignisquelle verwendet.
YAML
Type: AWS::Serverless::Function DependsOn: MyMountTarget # This is needed if an AWS::EFS::MountTarget resource is declared for EFS Properties: Handler: index.handler Runtime: python3.9 InlineCode: | def handler(event, context): print("Hello, world!") ReservedConcurrentExecutions: 30 Layers: - Ref: MyLayer Tracing: Active Timeout: 120 FileSystemConfigs: - Arn: !Ref MyEfsFileSystem LocalMountPath: /mnt/EFS Policies: - AWSLambdaExecute - Version: '2012-10-17' Statement: - Effect: Allow Action: - s3:GetObject - s3:GetObjectACL Resource: 'arn:aws:s3:::
amzn-s3-demo-bucket
/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get
ImageConfigBeispiel für
Das Folgende ist ein Beispiel ImageConfig
für eine Lambda-Funktion vom PakettypImage
.
YAML
HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri:
account-id
.dkr.ecr.region
.amazonaws.com/ecr-repo-name
:image-name
ImageConfig: Command: - "app.lambda_handler
" EntryPoint: - "entrypoint1
" WorkingDirectory: "workDir
"
RuntimeManagementConfig Beispiele
Eine Lambda-Funktion, die so konfiguriert ist, dass sie ihre Laufzeitumgebung entsprechend dem aktuellen Verhalten aktualisiert:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: Auto
Eine Lambda-Funktion, die so konfiguriert ist, dass sie ihre Laufzeitumgebung aktualisiert, wenn die Funktion aktualisiert wird:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: FunctionUpdate
Eine Lambda-Funktion, die so konfiguriert ist, dass sie ihre Laufzeitumgebung manuell aktualisiert:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e UpdateRuntimeOn: Manual
Beispiele für SnapStart
Beispiel für eine Lambda-Funktion, die für future Versionen SnapStart aktiviert ist:
TestFunc Type: AWS::Serverless::Function Properties: ... SnapStart: ApplyOn: PublishedVersions