

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS::Serverless::Function
<a name="sam-resource-function"></a>

Crea una AWS Lambda funzione, un ruolo di esecuzione AWS Identity and Access Management (IAM) e mappature delle sorgenti degli eventi che attivano la funzione.

La [AWS::Serverless::Function](#sam-resource-function) risorsa supporta anche l'attributo `Metadata` resource, quindi puoi indicare di AWS SAM creare runtime personalizzati richiesti dall'applicazione. Per ulteriori informazioni sulla creazione di runtime personalizzati, consulta. [Creazione di funzioni Lambda con runtime personalizzati in AWS SAM](building-custom-runtimes.md)

**Nota**  
Quando esegui la distribuzione su AWS CloudFormation, AWS SAM trasforma le tue AWS SAM risorse in risorse. CloudFormation Per ulteriori informazioni, consulta [CloudFormation Risorse generate per AWS SAM](sam-specification-generated-resources.md).

## Sintassi
<a name="sam-resource-function-syntax"></a>

Per dichiarare questa entità nel tuo modello AWS Serverless Application Model (AWS SAM), usa la seguente sintassi.

### YAML
<a name="sam-resource-function-syntax.yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  [Architectures](#sam-function-architectures): {{List}}
  [AssumeRolePolicyDocument](#sam-function-assumerolepolicydocument): {{JSON}}
  [AutoPublishAlias](#sam-function-autopublishalias): {{String}}
  AutoPublishAliasAllProperties: {{Boolean}}
  [AutoPublishCodeSha256](#sam-function-autopublishcodesha256): {{String}}
  [CapacityProviderConfig](#sam-function-capacityproviderconfig): {{CapacityProviderConfig}}
  [CodeSigningConfigArn](#sam-function-codesigningconfigarn): {{String}}
  [CodeUri](#sam-function-codeuri): {{String | FunctionCode}}
  [DeadLetterQueue](#sam-function-deadletterqueue): {{Map | DeadLetterQueue}}
  [DeploymentPreference](#sam-function-deploymentpreference): {{DeploymentPreference}}
  [Description](#sam-function-description): {{String}}
  [DurableConfig](#sam-function-durableconfig): {{DurableConfig}}
  [Environment](#sam-function-environment): {{[Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)}}
  [EphemeralStorage](#sam-function-ephemeralstorage): {{[EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)}}
  [EventInvokeConfig](#sam-function-eventinvokeconfig): {{EventInvokeConfiguration}}
  [Events](#sam-function-events): {{EventSource}}
  [FileSystemConfigs](#sam-function-filesystemconfigs): {{List}}
  [FunctionName](#sam-function-functionname): {{String}}
  [FunctionScalingConfig](#sam-function-functionscalingconfig): {{FunctionScalingConfig}}
  [FunctionUrlConfig](#sam-function-functionurlconfig): {{FunctionUrlConfig}}
  [Handler](#sam-function-handler): {{String}}
  [ImageConfig](#sam-function-imageconfig): {{[ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)}}
  [ImageUri](#sam-function-imageuri): {{String}}
  [InlineCode](#sam-function-inlinecode): {{String}}
  [KmsKeyArn](#sam-function-kmskeyarn): {{String}}
  [Layers](#sam-function-layers): {{List}}
  LoggingConfig: {{[LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)}}
  [MemorySize](#sam-function-memorysize): {{Integer}}
  [PackageType](#sam-function-packagetype): {{String}}
  [PermissionsBoundary](#sam-function-permissionsboundary): {{String}}
  [Policies](#sam-function-policies): {{String | List | Map}}
  [PublishToLatestPublished](#sam-function-publishtolatestpublished): {{Boolean}}
  PropagateTags: {{Boolean}}
  [ProvisionedConcurrencyConfig](#sam-function-provisionedconcurrencyconfig): {{[ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)}}
  RecursiveLoop: {{String}}
  [ReservedConcurrentExecutions](#sam-function-reservedconcurrentexecutions): {{Integer}}
  [Role](#sam-function-role): {{String}}
  [RolePath](#sam-function-rolepath): {{String}}
  [Runtime](#sam-function-runtime): {{String}}
  RuntimeManagementConfig: {{[RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)}}
  SnapStart: {{[SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)}}
  [SourceKMSKeyArn](#sam-function-sourcekmskeyarn): {{String}}
  [Tags](#sam-function-tags): {{Map}}
  [TenancyConfig](#sam-function-tenancyconfig): {{TenancyConfig}}
  [Timeout](#sam-function-timeout): {{Integer}}
  [Tracing](#sam-function-tracing): {{String}}
  [VersionDescription](#sam-function-versiondescription): {{String}}
  [VersionDeletionPolicy](#sam-function-versiondeletionpolicy): {{String}}
  [VpcConfig](#sam-function-vpcconfig): {{[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)}}
```

## Properties
<a name="sam-resource-function-properties"></a>

 `Architectures`   <a name="sam-function-architectures"></a>
L'architettura del set di istruzioni per la funzione.  
*Per ulteriori informazioni su questa proprietà, consulta [Architetture dei set di istruzioni Lambda nella Guida per gli](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) sviluppatori.AWS Lambda *  
*Valori validi*: uno dei o `x86_64` `arm64`  
Tipo: elenco  
*Obbligatorio:* no  
*Default*: `x86_64`  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-architectures)` proprietà di una `AWS::Lambda::Function` risorsa.

 `AssumeRolePolicyDocument`   <a name="sam-function-assumerolepolicydocument"></a>
Aggiunge un AssumeRolePolicyDocument valore predefinito creato `Role` per questa funzione. Se questa proprietà non è specificata, AWS SAM aggiunge un ruolo di assunzione predefinito per questa funzione.  
*Type*: JSON  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è simile alla `[AssumeRolePolicyDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument)` proprietà di una `AWS::IAM::Role` risorsa. AWS SAM aggiunge questa proprietà al ruolo IAM generato per questa funzione. Se per questa funzione viene fornito l'Amazon Resource Name (ARN) di un ruolo, questa proprietà non fa nulla.

 `AutoPublishAlias`   <a name="sam-function-autopublishalias"></a>
Il nome dell'alias Lambda. *Per ulteriori informazioni sugli alias Lambda, consulta Alias delle [funzioni Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) nella Developer Guide.AWS Lambda * Per esempi che utilizzano questa proprietà, vedere. [Implementazione graduale di applicazioni serverless con AWS SAM](automating-updates-to-serverless-apps.md)  
AWS SAM genera [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)e [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)risorse quando questa proprietà è impostata. Per informazioni su questo scenario, vedere[AutoPublishAlias la proprietà è specificata](sam-specification-generated-resources-function.md#sam-specification-generated-resources-function-autopublishalias). Per informazioni generali sulle CloudFormation risorse generate, vedere[CloudFormation Risorse generate per AWS SAM](sam-specification-generated-resources.md).  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `AutoPublishAliasAllProperties`   <a name="sam-function-autopublishaliasallproperties"></a>
Specifica quando ne [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)viene creato uno nuovo. Quando`true`, viene creata una nuova versione Lambda quando viene modificata una proprietà della funzione Lambda. Quando`false`, viene creata una nuova versione Lambda solo quando viene modificata una delle seguenti proprietà:  
+ `Environment`, `MemorySize`, oppure `SnapStart`.
+ Qualsiasi modifica che comporti un aggiornamento della `Code` proprietà, ad esempio `CodeDict``ImageUri`, o`InlineCode`.
Questa proprietà `AutoPublishAlias` deve essere definita.  
Se `AutoPublishCodeSha256` viene specificato anche, il suo comportamento ha la precedenza su`AutoPublishAliasAllProperties: true`.  
*Tipo*: Booleano  
*Obbligatorio:* no  
*Valore predefinito*: `false`  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `AutoPublishCodeSha256`   <a name="sam-function-autopublishcodesha256"></a>
Se utilizzata, questa stringa funziona con il `CodeUri` valore per determinare se è necessario pubblicare una nuova versione di Lambda. Questa proprietà viene spesso utilizzata per risolvere il seguente problema di distribuzione: un pacchetto di distribuzione viene archiviato in una posizione Amazon S3 e viene sostituito da un nuovo pacchetto di distribuzione con codice funzione Lambda aggiornato, ma la `CodeUri` proprietà rimane invariata (al contrario del caricamento del nuovo pacchetto di distribuzione in una nuova posizione Amazon S3 e del passaggio alla `CodeUri` nuova posizione).  
Questo problema è contrassegnato da un AWS SAM modello con le seguenti caratteristiche:  
+ L'`DeploymentPreference`oggetto è configurato per distribuzioni graduali (come descritto in) [Implementazione graduale di applicazioni serverless con AWS SAM](automating-updates-to-serverless-apps.md)
+ La `AutoPublishAlias` proprietà è impostata e non cambia tra le distribuzioni
+ La `CodeUri` proprietà è impostata e non cambia tra le distribuzioni.
In questo scenario, l'aggiornamento `AutoPublishCodeSha256` comporta la creazione corretta di una nuova versione Lambda. Tuttavia, il nuovo codice funzionale distribuito su Amazon S3 non verrà riconosciuto. Per riconoscere il nuovo codice funzionale, prendi in considerazione l'utilizzo del controllo delle versioni nel tuo bucket Amazon S3. Specificate la `Version` proprietà per la funzione Lambda e configurate il bucket per utilizzare sempre il pacchetto di distribuzione più recente.  
In questo scenario, per attivare correttamente la distribuzione graduale, è necessario fornire un valore univoco per. `AutoPublishCodeSha256`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `CapacityProviderConfig`   <a name="sam-function-capacityproviderconfig"></a>
Configura il provider di capacità a cui verranno allegate le versioni pubblicate della funzione. Ciò consente l'esecuzione della funzione su istanze EC2 di proprietà del cliente gestite da Lambda Managed Instances.  
*Tipo:* [CapacityProviderConfig](sam-property-function-capacityproviderconfig.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: SAM appiattisce la proprietà passata alla proprietà di una risorsa e ricostruisce la `[CapacityProviderConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-capacityproviderconfig)` struttura annidata. `AWS::Lambda::Function`

 `CodeSigningConfigArn`   <a name="sam-function-codesigningconfigarn"></a>
L'ARN della [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)risorsa, utilizzato per abilitare la firma del codice per questa funzione. Per ulteriori informazioni sulla firma del codice, vedere[Configura la firma del codice per la tua AWS SAM applicazione](authoring-codesigning.md).  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[CodeSigningConfigArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn)` proprietà di una `AWS::Lambda::Function` risorsa.

 `CodeUri`   <a name="sam-function-codeuri"></a>
Il codice della funzione. I valori accettati includono:  
+ L'URI della funzione è Amazon S3. Ad esempio, `s3://bucket-123456789/sam-app/1234567890abcdefg`.
+ Il percorso locale della funzione. Ad esempio, `hello_world/`.
+ Oggetto [FunctionCode](sam-property-function-functioncode.md).
Se fornisci l'URI o l'[FunctionCode](sam-property-function-functioncode.md)oggetto Amazon S3 di una funzione, devi fare riferimento a un pacchetto di distribuzione [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) valido.  
Se fornisci un percorso di file locale, usa il AWS SAMCLI per caricare il file locale al momento della distribuzione. Per ulteriori informazioni, consulta [Come AWS SAM vengono caricati i file locali al momento della distribuzione](deploy-upload-local-files.md).  
Se si utilizzano funzioni intrinseche nella `CodeUri` proprietà, non AWS SAM sarà possibile analizzare correttamente i valori. Prendi invece in considerazione l'utilizzo di [AWS::LanguageExtensions transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-languageextensions.html).
*Tipo*: [String \|[FunctionCode](sam-property-function-functioncode.md)]  
*Obbligatorio:* condizionale. Quando `PackageType` è impostato su`Zip`, `InlineCode` è richiesto uno dei `CodeUri` o.  
*CloudFormation compatibilità*: questa proprietà è simile alla `[ Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code)` proprietà di una `AWS::Lambda::Function` risorsa. Le proprietà annidate di Amazon S3 sono denominate in modo diverso.

 `DeadLetterQueue`   <a name="sam-function-deadletterqueue"></a>
Configura un argomento Amazon Simple Notification Service (Amazon SNS) o una coda Amazon Simple Queue Service (Amazon SQS) in cui Lambda invia eventi che non può elaborare. [https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq)  
Se l'origine degli eventi della tua funzione Lambda è una coda Amazon SQS, configura una coda di lettere non scritte per la coda di origine, non per la funzione Lambda. [La coda di lettere morte configurata per una funzione viene utilizzata per la coda di invocazione asincrona della funzione, non per le code di origine degli eventi.](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html)
*Tipo: Mappa \| [DeadLetterQueue](sam-property-function-deadletterqueue.md)*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: Questa proprietà è simile alla `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html)` proprietà di una `AWS::Lambda::Function` risorsa. CloudFormation Nel tipo è derivato da`TargetArn`, mentre in è AWS SAM necessario passare il tipo insieme a`TargetArn`.

 `DeploymentPreference`   <a name="sam-function-deploymentpreference"></a>
Le impostazioni per abilitare le distribuzioni Lambda graduali.  
Se viene specificato un `DeploymentPreference` oggetto, AWS SAM crea un [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)chiamato `ServerlessDeploymentApplication` (uno per stack), un [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)chiamato e un chiamato`{{<function-logical-id>}}DeploymentGroup`. [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)`CodeDeployServiceRole`  
*Tipo:* [DeploymentPreference](sam-property-function-deploymentpreference.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.  
*Vedi anche*: Per ulteriori informazioni su questa proprietà, vedi[Implementazione graduale di applicazioni serverless con AWS SAM](automating-updates-to-serverless-apps.md).

 `Description`   <a name="sam-function-description"></a>
Una descrizione della funzione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description)` proprietà di una `AWS::Lambda::Function` risorsa.

 `DurableConfig`   <a name="sam-function-durableconfig"></a>
Configurazione per funzioni durevoli. Abilita l'esecuzione con stato con funzionalità di checkpoint e replay automatici.  
*Tipo:* [DurableConfig](sam-property-function-durableconfig.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un equivalente. CloudFormation 

 `Environment`   <a name="sam-function-environment"></a>
La configurazione per l'ambiente di runtime.  
*Type*: [Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)` proprietà di una `AWS::Lambda::Function` risorsa.

 `EphemeralStorage`   <a name="sam-function-ephemeralstorage"></a>
Un oggetto che specifica lo spazio su disco, in MB, disponibile per la funzione Lambda in. `/tmp`  
Per ulteriori informazioni su questa proprietà, consulta l'[ambiente di esecuzione Lambda](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html) nella *AWS Lambda Developer* Guide.  
*Tipo:* [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)` proprietà di una `AWS::Lambda::Function` risorsa.

 `EventInvokeConfig`   <a name="sam-function-eventinvokeconfig"></a>
L'oggetto che descrive la configurazione Event Invoke su una funzione Lambda.  
*Tipo:* [EventInvokeConfiguration](sam-property-function-eventinvokeconfiguration.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `Events`   <a name="sam-function-events"></a>
Speciifica gli eventi che attivano questa funzione. Gli eventi sono costituiti da un tipo e da un insieme di proprietà che dipendono dal tipo.  
*Tipo:* [EventSource](sam-property-function-eventsource.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `FileSystemConfigs`   <a name="sam-function-filesystemconfigs"></a>
Elenco di [FileSystemConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html)oggetti che specificano le impostazioni di connessione per un file system Amazon Elastic File System (Amazon EFS) o un file system Amazon S3 Files. Puoi collegare un punto di accesso Amazon EFS o un punto di accesso S3 Files, ma non entrambi.  
Ogni `FileSystemConfig` oggetto contiene un `Arn` (l'ARN del punto di accesso) e un `LocalMountPath` (il percorso in cui è montato il file system nella funzione). Per Amazon EFS, l'ARN è un punto di accesso ARN di Amazon EFS. Per i file S3, l'ARN è un `AWS::S3Files::AccessPoint` ARN.  
Se il modello contiene una [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)risorsa, è necessario specificare anche un attributo di `DependsOn` risorsa per garantire che il target di montaggio venga creato o aggiornato prima della funzione. Allo stesso modo, se il modello contiene una `AWS::S3Files::MountTarget` risorsa, è necessario specificare un `DependsOn` attributo per la destinazione di montaggio di S3 Files.  
Tipo: elenco  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[FileSystemConfigs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs)` proprietà di una `AWS::Lambda::Function` risorsa.

 `FunctionName`   <a name="sam-function-functionname"></a>
Nome per la funzione. Se non specifichi un nome, viene generato un nome univoco.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[FunctionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname)` proprietà di una `AWS::Lambda::Function` risorsa.

 `FunctionScalingConfig`   <a name="sam-function-functionscalingconfig"></a>
Configura il comportamento di scalabilità per le funzioni Lambda in esecuzione sui provider di capacità. Definisce il numero minimo e massimo di ambienti di esecuzione.  
*Tipo:* [FunctionScalingConfig](sam-property-function-functionscalingconfig.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[FunctionScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig)` proprietà di una `AWS::Lambda::Function` risorsa.

 `FunctionUrlConfig`   <a name="sam-function-functionurlconfig"></a>
L'oggetto che descrive l'URL di una funzione. L'URL di una funzione è un endpoint HTTPS che puoi utilizzare per richiamare la tua funzione.  
Per ulteriori informazioni, consulta [Function URLs](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) nella *AWS Lambda Developer* Guide.  
*Tipo:* [FunctionUrlConfig](sam-property-function-functionurlconfig.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `Handler`   <a name="sam-function-handler"></a>
La funzione all'interno del codice che viene chiamata per iniziare l'esecuzione. Questa proprietà è richiesta solo se è impostata su`Zip`. `PackageType`  
▬*Tipo:* stringa  
*Required*: Conditional  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Handler](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler)` proprietà di una `AWS::Lambda::Function` risorsa.

 `ImageConfig`   <a name="sam-function-imageconfig"></a>
L'oggetto utilizzato per configurare le impostazioni dell'immagine del contenitore Lambda. Per ulteriori informazioni, consulta [Using container images with Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) nella *AWS Lambda Developer* Guide.  
*Tipo:* [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)` proprietà di una `AWS::Lambda::Function` risorsa.

 `ImageUri`   <a name="sam-function-imageuri"></a>
L'URI del repository Amazon Elastic Container Registry (Amazon ECR) per l'immagine del contenitore della funzione Lambda. Questa proprietà si applica solo se è impostata su`Image`, altrimenti viene ignorata. `PackageType` Per ulteriori informazioni, consulta [Using container images with Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) nella *AWS Lambda Developer* Guide.  
Se la `PackageType` proprietà è impostata su`Image`, allora una delle due `ImageUri` è obbligatoria oppure è necessario creare l'applicazione con `Metadata` le voci necessarie nel file AWS SAM modello. Per ulteriori informazioni, consulta [Compilazione predefinita con AWS SAM](serverless-sam-cli-using-build.md).
La creazione dell'applicazione con `Metadata` le voci necessarie ha la precedenza sulla creazione dell'applicazione`ImageUri`, quindi se si specificano entrambe le voci `ImageUri` viene ignorata.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ImageUri](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri)` proprietà del tipo di `AWS::Lambda::Function` `Code` dati.

 `InlineCode`   <a name="sam-function-inlinecode"></a>
Il codice della funzione Lambda scritto direttamente nel modello. Questa proprietà si applica solo se è impostata su`Zip`, altrimenti viene ignorata. `PackageType`  
Se la `PackageType` proprietà è impostata su `Zip` (impostazione predefinita), `InlineCode` è richiesta una delle `CodeUri` o.
▬*Tipo:* stringa  
*Required*: Conditional  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ZipFile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile)` proprietà del tipo di `AWS::Lambda::Function` `Code` dati.

 `KmsKeyArn`   <a name="sam-function-kmskeyarn"></a>
L'ARN di una chiave AWS Key Management Service (AWS KMS) utilizzata da Lambda per crittografare e decrittografare le variabili di ambiente della funzione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla proprietà di una risorsa. `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn)` `AWS::Lambda::Function`

 `Layers`   <a name="sam-function-layers"></a>
L'elenco di ciò `LayerVersion` ARNs che questa funzione dovrebbe usare. L'ordine specificato qui è l'ordine in cui verranno importati durante l'esecuzione della funzione Lambda. La versione è un ARN completo che include la versione o un riferimento a una LayerVersion risorsa. Ad esempio, un riferimento a `LayerVersion` sarà `!Ref MyLayer` mentre sarà un ARN completo che include la versione. `arn:aws:lambda:{{region}}:{{account-id}}:layer:{{layer-name}}:{{version}}`  
Tipo: elenco  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Layers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers)` proprietà di una `AWS::Lambda::Function` risorsa.

 `LoggingConfig`   <a name="sam-function-loggingconfig"></a>
Le impostazioni di configurazione Amazon CloudWatch Logs della funzione.  
*Tipo:* [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig)proprietà di una `AWS::Lambda::Function` risorsa.

 `MemorySize`   <a name="sam-function-memorysize"></a>
La dimensione della memoria in MB allocata per invocazione della funzione.  
*Tipo*: integer  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[MemorySize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize)` proprietà di una risorsa. `AWS::Lambda::Function`

 `PackageType`   <a name="sam-function-packagetype"></a>
Il tipo di pacchetto di distribuzione della funzione Lambda. Per ulteriori informazioni, consulta i [pacchetti di distribuzione Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) nella *AWS Lambda Developer* Guide.  
**Note:**  
1. Se questa proprietà è impostata su `Zip` (impostazione predefinita), allora `InlineCode` si applica `CodeUri` o `ImageUri` viene ignorata.  
2. Se questa proprietà è impostata su`Image`, viene `ImageUri` applicata solo `CodeUri` ed entrambe le proprietà `InlineCode` vengono ignorate. Il repository Amazon ECR necessario per archiviare l'immagine del contenitore della funzione può essere creato automaticamente da. AWS SAMCLI Per ulteriori informazioni, consulta [sam deploy](sam-cli-command-reference-sam-deploy.md).  
*Valori validi*: `Zip` o `Image`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*Default*: `Zip`  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[PackageType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-packagetype)` proprietà di una `AWS::Lambda::Function` risorsa.

 `PermissionsBoundary`   <a name="sam-function-permissionsboundary"></a>
L'ARN di un limite di autorizzazioni da utilizzare per il ruolo di esecuzione di questa funzione. Questa proprietà funziona solo se il ruolo viene generato automaticamente.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` proprietà di una `AWS::IAM::Role` risorsa.

 `Policies`   <a name="sam-function-policies"></a>
Politiche di autorizzazione per questa funzione. Le politiche verranno aggiunte al ruolo di esecuzione predefinito AWS Identity and Access Management (IAM) della funzione.  
Questa proprietà accetta un singolo valore o un elenco di valori. I valori autorizzati includono:  
+ [AWS SAM modelli di policy](serverless-policy-templates.md).
+ ARNDi una [politica AWS gestita o di una politica](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) [gestita dal cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).
+ Il nome di una politica AWS gestita dall'[elenco](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json) seguente.
+ Una [politica IAM in linea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) formattata YAML come mappa.
Se si imposta la `Role` proprietà, questa proprietà viene ignorata.
*Tipo*: Stringa \| Elenco \| Mappa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: Questa proprietà è simile alla `[Policies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies)` proprietà di una `AWS::IAM::Role` risorsa.

 `PublishToLatestPublished`   <a name="sam-function-publishtolatestpublished"></a>
Speciifica se pubblicare la versione più recente della funzione quando la funzione viene aggiornata.  
*Tipo*: Booleano  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[PublishToLatestPublished](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-publishtolatestpublished)` proprietà di una `AWS::Lambda::Function` risorsa.

`PropagateTags`  <a name="sam-function-propagatetags"></a>
Indica se passare o meno i tag dalla `Tags` proprietà alle risorse [AWS::Serverless::Function](sam-specification-generated-resources-function.md) generate. `True`Specificate di propagare i tag nelle risorse generate.  
*Tipo*: Booleano  
*Obbligatorio:* no  
*Default*: `False`  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `ProvisionedConcurrencyConfig`   <a name="sam-function-provisionedconcurrencyconfig"></a>
La configurazione simultanea fornita dell'alias di una funzione.  
`ProvisionedConcurrencyConfig`può essere specificato solo se è impostato. `AutoPublishAlias` In caso contrario, si verifica un errore.
*Tipo:* [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)` proprietà di una `AWS::Lambda::Alias` risorsa.

 `RecursiveLoop`   <a name="sam-function-recursiveloop"></a>
Lo stato della configurazione di rilevamento ricorsivo del loop della funzione.  
Quando questo valore è impostato su `Allow` e Lambda rileva che la funzione viene richiamata come parte di un ciclo ricorsivo, non esegue alcuna azione.  
Quando questo valore è impostato su `Terminate` e Lambda rileva che la tua funzione viene richiamata come parte di un ciclo ricorsivo, interrompe la chiamata della funzione e ti avvisa.   
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla proprietà della risorsa. `[RecursiveLoop](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-recursiveloop)` `AWS::Lambda::Function`

 `ReservedConcurrentExecutions`   <a name="sam-function-reservedconcurrentexecutions"></a>
Il numero massimo di esecuzioni simultanee che si desidera riservare per la funzione.  
*Per ulteriori informazioni su questa proprietà, consulta [Lambda Function Scaling](https://docs.aws.amazon.com/lambda/latest/dg/scaling.html) nella Developer Guide.AWS Lambda *  
*Tipo*: integer  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ReservedConcurrentExecutions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions)` proprietà di una `AWS::Lambda::Function` risorsa.

 `Role`   <a name="sam-function-role"></a>
L'ARN di un ruolo IAM da utilizzare come ruolo di esecuzione di questa funzione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è simile alla `[Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role)` proprietà di una `AWS::Lambda::Function` risorsa. È obbligatorio in CloudFormation ma non in AWS SAM. Se non viene specificato un ruolo, ne viene creato uno con un ID logico di`{{<function-logical-id>}}Role`.

 `RolePath`   <a name="sam-function-rolepath"></a>
Il percorso del ruolo di esecuzione IAM della funzione.  
Usa questa proprietà quando il ruolo viene generato per te. Non utilizzare quando il ruolo è specificato con la `Role` proprietà.  
▬*Tipo:* stringa  
*Required*: Conditional  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Path](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path)` proprietà di una `AWS::IAM::Role` risorsa.

 `Runtime`   <a name="sam-function-runtime"></a>
L'identificatore del [runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) della funzione. Questa proprietà è richiesta solo se la `PackageType` proprietà è impostata su`Zip`.  
Se si specifica l'`provided`identificatore per questa proprietà, è possibile utilizzare l'attributo `Metadata` resource per indicare di AWS SAM creare il runtime personalizzato richiesto da questa funzione. Per ulteriori informazioni sulla creazione di runtime personalizzati, vedere. [Creazione di funzioni Lambda con runtime personalizzati in AWS SAM](building-custom-runtimes.md)
▬*Tipo:* stringa  
*Required*: Conditional  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime)` proprietà di una `AWS::Lambda::Function` risorsa.

 `RuntimeManagementConfig`   <a name="sam-function-runtimemanagementconfig"></a>
Configura le opzioni di gestione del runtime per le funzioni Lambda, come gli aggiornamenti dell'ambiente di runtime, il comportamento di rollback e la selezione di una versione di runtime specifica. Per saperne di più, consulta [gli aggiornamenti del runtime di Lambda](https://docs.aws.amazon.com//lambda/latest/dg/runtimes-update.html) nella *AWS Lambda Developer* Guide.  
*Tipo:* [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)` proprietà di una `AWS::Lambda::Function` risorsa.

 `SnapStart`   <a name="sam-function-snapstart"></a>
Crea un'istantanea di ogni nuova versione della funzione Lambda. Un'istantanea è uno stato memorizzato nella cache della funzione inizializzata, incluse tutte le sue dipendenze. La funzione viene inizializzata una sola volta e lo stato memorizzato nella cache viene riutilizzato per tutte le future chiamate, migliorando le prestazioni dell'applicazione riducendo il numero di volte in cui la funzione deve essere inizializzata. Per ulteriori informazioni, consulta [Migliorare le prestazioni di avvio con Lambda SnapStart nella Guida](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) per gli *AWS Lambda sviluppatori*.  
*Tipo:* [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)` proprietà di una `AWS::Lambda::Function` risorsa.

 `SourceKMSKeyArn`   <a name="sam-function-sourcekmskeyarn"></a>
Rappresenta una chiave ARN KMS utilizzata per crittografare il codice della funzione ZIP del cliente.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[SourceKMSKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-sourcekmskeyarn)` proprietà di un `AWS::Lambda::Function` `Code` tipo di dati.

 `Tags`   <a name="sam-function-tags"></a>
Una mappa (da stringa a stringa) che specifica i tag aggiunti a questa funzione. Per informazioni dettagliate sulle chiavi e i valori validi per i tag, consulta [Tag Key and Value Requirements](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) nella *AWS Lambda Developer Guide*.  
Quando lo stack viene creato, aggiunge AWS SAM automaticamente un `lambda:createdBy:SAM` tag a questa funzione Lambda e ai ruoli predefiniti generati per questa funzione.  
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è simile alla `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags)` proprietà di una `AWS::Lambda::Function` risorsa. La `Tags` proprietà in AWS SAM è costituita da coppie chiave-valore (mentre in CloudFormation questa proprietà è costituita da un elenco di `Tag` oggetti). Inoltre, aggiunge AWS SAM automaticamente un `lambda:createdBy:SAM` tag a questa funzione Lambda e ai ruoli predefiniti generati per questa funzione.

 `TenancyConfig`   <a name="sam-function-tenancyconfig"></a>
Configurazione per la modalità di isolamento dei tenant Lambda. Assicura che gli ambienti di esecuzione non vengano mai condivisi tra tenant diversi IDs, fornendo un isolamento a livello di calcolo per le applicazioni multi-tenant.  
*Tipo:* [TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tenancyconfig.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla proprietà di una risorsa. `[TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tenancyconfig)` `AWS::Lambda::Function`

 `Timeout`   <a name="sam-function-timeout"></a>
Il tempo massimo in secondi in cui la funzione può essere eseguita prima che venga interrotta.  
*Tipo*: integer  
*Obbligatorio:* no  
*Di default:* 3  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Timeout](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout)` proprietà di una `AWS::Lambda::Function` risorsa.

 `Tracing`   <a name="sam-function-tracing"></a>
La stringa che specifica la modalità di tracciamento X-Ray della funzione.  
+ `Active`— Attiva il tracciamento a raggi X per la funzione.
+ `Disabled`— Disattiva X-Ray per la funzione.
+ `PassThrough`— Attiva il tracciamento a raggi X per la funzione. La decisione sul campionamento è delegata ai servizi a valle.
Se specificato come `Active` o `PassThrough` e la `Role` proprietà non è impostata, AWS SAM aggiunge la `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` politica al ruolo di esecuzione Lambda che crea per te.  
Per ulteriori informazioni su X-Ray, consulta [Using AWS Lambda with AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) nella *AWS Lambda Developer* Guide.  
*Valori validi*: [`Active`\| `Disabled` \|`PassThrough`]  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è simile alla `[TracingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig)` proprietà di una `AWS::Lambda::Function` risorsa.

 `VersionDescription`   <a name="sam-function-versiondescription"></a>
Speciifica il `Description` campo che viene aggiunto alla nuova risorsa della versione Lambda.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description)` proprietà di una `AWS::Lambda::Version` risorsa.

 `VersionDeletionPolicy`   <a name="sam-function-versiondeletionpolicy"></a>
Speciifica la politica di eliminazione per la risorsa della versione Lambda che viene creata `AutoPublishAlias` quando viene impostata. Questo controlla se la risorsa della versione viene mantenuta o eliminata quando lo stack viene eliminato.  
*Valori validi*: `Delete`, `Retain` o `Snapshot`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente. Imposta l'`DeletionPolicy`attributo sulla `AWS::Lambda::Version` risorsa generata.

 `VpcConfig`   <a name="sam-function-vpcconfig"></a>
La configurazione che consente a questa funzione di accedere alle risorse private all'interno del tuo cloud privato virtuale (VPC).  
*Tipo:* [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)` proprietà di una `AWS::Lambda::Function` risorsa.

## Valori restituiti
<a name="sam-resource-function-return-values"></a>

### Ref
<a name="sam-resource-function-return-values-ref"></a>

Quando l'ID logico di questa risorsa viene fornito alla funzione `Ref` intrinseca, restituisce il nome della risorsa della funzione Lambda sottostante.

*Per ulteriori informazioni sull'uso della `Ref` funzione, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)la Guida per l'AWS CloudFormation utente.* 

### Fn:: GetAtt
<a name="sam-resource-function-return-values-fn--getatt"></a>

`Fn::GetAtt` restituisce un valore per un attributo specificato di questo tipo. Di seguito sono riportati gli attributi disponibili e i valori restituiti di esempio. 

Per ulteriori informazioni sull'utilizzo`Fn::GetAtt`, consulta [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html)la *Guida per l'AWS CloudFormation utente*. 

`Arn`  <a name="Arn-fn::getatt"></a>
L'ARN della funzione Lambda sottostante.

## Esempi
<a name="sam-resource-function-examples"></a>

### Funzione semplice
<a name="sam-resource-function-examples-simple-function"></a>

Di seguito è riportato un esempio di base di una [AWS::Serverless::Function](#sam-resource-function) risorsa di tipo di pacchetto `Zip` (impostazione predefinita) e codice funzione in un bucket Amazon S3.

#### YAML
<a name="sam-resource-function-examples-simple-function--yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  Handler: index.handler
  Runtime: python3.9
  CodeUri: s3://{{bucket-name}}/{{key-name}}
```

### Esempio di proprietà delle funzioni
<a name="sam-resource-function-examples-function-properties-example"></a>

Di seguito è riportato un esempio di un tipo [AWS::Serverless::Function](#sam-resource-function) di pacchetto `Zip` (impostazione predefinita) che utilizza `InlineCode``Layers`,`Tracing`,`Policies`,, `Amazon EFS` file system e un'origine di `Api` eventi.

#### YAML
<a name="sam-resource-function-examples-function-properties-example--yaml"></a>

```
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:::{{sam-s3-demo-bucket}}/*'
  Events:
    ApiEvent:
      Type: Api
      Properties:
        Path: /path
        Method: get
```

### ImageConfig esempio
<a name="sam-resource-function-examples-imageconfig-example"></a>

Di seguito è riportato un esempio di una funzione `ImageConfig` for a Lambda di tipo pacchetto. `Image`

#### YAML
<a name="sam-resource-function-examples-imageconfig-example--yaml"></a>

```
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 esempi
<a name="sam-resource-function-examples-runtimemanagementconfig-examples"></a>

Una funzione Lambda configurata per aggiornare il suo ambiente di runtime in base al comportamento corrente:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      UpdateRuntimeOn: Auto
```

Una funzione Lambda configurata per aggiornare il suo ambiente di runtime quando la funzione viene aggiornata:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      UpdateRuntimeOn: FunctionUpdate
```

Una funzione Lambda configurata per aggiornare manualmente il suo ambiente di runtime:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e
      UpdateRuntimeOn: Manual
```

### SnapStart esempi
<a name="sam-resource-function-examples-snapstart-examples"></a>

Esempio di una funzione Lambda SnapStart attivata per le versioni future:

```
TestFunc
  Type: AWS::Serverless::Function
  Properties:
    ...
    SnapStart:
      ApplyOn: PublishedVersions
```

### TenancyConfig esempi
<a name="sam-resource-function-examples-tenancyconfig-examples"></a>

Esempio di una funzione Lambda con la modalità di isolamento del tenant attivata:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    TenancyConfig:
      TenantIsolationMode: PER_TENANT
```

### Esempio di file system S3 Files
<a name="sam-resource-function-examples-s3files-example"></a>

L'esempio seguente crea una funzione Lambda che monta un file system Amazon S3 Files. Il modello crea un bucket S3, un file system S3 Files supportato da quel bucket, una destinazione di montaggio in una sottorete VPC e un punto di accesso. La funzione monta il punto di accesso `/mnt/s3files` e può leggere e scrivere file sincronizzati con il bucket S3.

**Nota**  
Puoi collegare un file system Amazon EFS o un file system S3 Files a una funzione Lambda, ma non entrambi contemporaneamente.

#### YAML
<a name="sam-resource-function-examples-s3files-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: Lambda function with S3 Files file system

Resources:
  # VPC and networking
  MyVpc:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.0.0.0/16
      EnableDnsSupport: true
      EnableDnsHostnames: true

  MySubnet:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref MyVpc
      CidrBlock: 10.0.1.0/24
      AvailabilityZone: !Select [0, !GetAZs '']

  MySecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: Security group for Lambda and S3 Files
      VpcId: !Ref MyVpc
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 2049
          ToPort: 2049
          CidrIp: 10.0.0.0/16

  # S3 bucket for file storage
  MyS3Bucket:
    Type: AWS::S3::Bucket

  # IAM role for S3 Files to access the bucket
  S3FilesRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: '2012-10-17'
        Statement:
          - Effect: Allow
            Principal:
              Service: elasticfilesystem.amazonaws.com
            Action: sts:AssumeRole
      Policies:
        - PolicyName: S3FilesBucketAccess
          PolicyDocument:
            Version: '2012-10-17'
            Statement:
              - Effect: Allow
                Action:
                  - s3:GetObject
                  - s3:PutObject
                  - s3:DeleteObject
                  - s3:ListBucket
                Resource:
                  - !GetAtt MyS3Bucket.Arn
                  - !Sub '${MyS3Bucket.Arn}/*'

  # S3 Files resources
  MyS3FilesFileSystem:
    Type: AWS::S3Files::FileSystem
    Properties:
      Bucket: !GetAtt MyS3Bucket.Arn
      RoleArn: !GetAtt S3FilesRole.Arn

  MyS3FilesMountTarget:
    Type: AWS::S3Files::MountTarget
    Properties:
      FileSystemId: !Ref MyS3FilesFileSystem
      SubnetId: !Ref MySubnet
      SecurityGroups:
        - !Ref MySecurityGroup

  MyS3FilesAccessPoint:
    Type: AWS::S3Files::AccessPoint
    Properties:
      FileSystemId: !Ref MyS3FilesFileSystem
      PosixUser:
        Uid: '1000'
        Gid: '1000'
      RootDirectory:
        Path: /lambda
        CreationInfo:
          OwnerUid: '1000'
          OwnerGid: '1000'
          Permissions: '750'

  # Lambda function with S3 Files mount
  MyFunction:
    Type: AWS::Serverless::Function
    DependsOn: MyS3FilesMountTarget
    Properties:
      Handler: index.handler
      Runtime: python3.12
      Timeout: 120
      VpcConfig:
        SecurityGroupIds:
          - !Ref MySecurityGroup
        SubnetIds:
          - !Ref MySubnet
      FileSystemConfigs:
        - Arn: !GetAtt MyS3FilesAccessPoint.AccessPointArn
          LocalMountPath: /mnt/s3files
      Policies:
        - Version: '2012-10-17'
          Statement:
            - Effect: Allow
              Action:
                - s3files:ClientMount
                - s3files:ClientWrite
              Resource: !GetAtt MyS3FilesAccessPoint.AccessPointArn
      InlineCode: |
        import os

        def handler(event, context):
            # Write a file to the S3 Files mount
            with open('/mnt/s3files/hello.txt', 'w') as f:
                f.write('Hello from Lambda!')

            # List files at the mount path
            files = os.listdir('/mnt/s3files')
            return {'files': files}
```