

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-lambda-sns
<a name="aws-lambda-sns"></a>

![](http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/experimental.png)


 Tutte le classi sono in fase di sviluppo attivo e soggette a modifiche o rimozione non compatibili con le versioni precedenti in qualsiasi versione futura. Questi non sono soggetti alla[Semantic version (Controllo versioni)](https://semver.org/)Modello. Ciò significa che, mentre è possibile utilizzarli, potrebbe essere necessario aggiornare il codice sorgente quando si esegue l'aggiornamento a una versione più recente di questo pacchetto. 

**Nota:** Per garantire la corretta funzionalità, i pacchetti AWS Solutions Constructs e i pacchetti AWS CDK nel progetto devono essere della stessa versione. 


|  **Linguaggio**  |  **Pacchetto**  | 
| --- | --- | 
|  ![](http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/python.png) Python  |  aws\_solutions\_constructs.aws\_lambda\_sns  | 
|  ![](http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-sns  | 
|  ![](http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasns  | 

## Overview
<a name="overview-20"></a>

 Questo AWS Solutions Construct implementa una funzione AWS Lambda collegata a un argomento Amazon SNS.

 Ecco una definizione di modello distribuibile minima in TypeScript:

```
import { LambdaToSns, LambdaToSnsProps } from "@aws-solutions-constructs/aws-lambda-sns";

new LambdaToSns(this, 'test-lambda-sns', {
    lambdaFunctionProps: {
        runtime: lambda.Runtime.NODEJS_14_X,
        // This assumes a handler function in lib/lambda/index.js
        code: lambda.Code.fromAsset(`${__dirname}/lambda`),
        handler: 'index.handler'
    }
});
```

## Initializer
<a name="initializer-20"></a>

```
new LambdaToSns(scope: Construct, id: string, props: LambdaToSnsProps);
```

 *Parametri* 
+  scope[`Construct`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSnsProps`](#pattern-construct-props-20) 

## Puntelli di costruzione modelli
<a name="pattern-construct-props-20"></a>


|  **Nome**  |  **Tipo**  |  **Descrizione**  | 
| --- | --- | --- | 
|  EsistenteLambdaobj?  |  [`lambda.Function`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Istanza esistente dell'oggetto Function Lambda, fornendo sia questo chelambdaFunctionPropscauserà un errore.  | 
|  LambdafunctionPunps?  |  [`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Proprietà facoltative fornite dall'utente per sovrascrivere le proprietà predefinite per la funzione Lambda. Ignorato se unexistingLambdaObjviene fornito.  | 
|  Esistente Topicobj?  |  [`sns.Topic`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Istanza esistente dell'oggetto argomento SNS, fornendo sia questo chetopicPropscauserà un errore.  | 
|  TopicProps?  |  [`sns.TopicProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html)  |  L'utente facoltativo ha fornito proprietà per ignorare le proprietà predefinite per l'argomento SNS.  | 
|  VPC esistente?  |  [`ec2.IVpc`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Un VPC opzionale esistente in cui deve essere distribuito questo modello. Quando viene distribuita in un VPC, la funzione Lambda utilizzerà ENI nel VPC per accedere alle risorse di rete e verrà creato un endpoint di interfaccia nel VPC per Amazon SQS. Se viene fornito un VPC esistente,deployVpcnon può esseretrue: . Questo utilizzaec2.IVpcper consentire ai client di fornire i VPC che esistono al di fuori dello stack utilizzando il[`ec2.Vpc.fromLookup()`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Metodo.  | 
|  DeployVPC?  |  boolean  |  Se creare un nuovo VPC basato suvpcPropsin cui distribuire questo modello. Impostazione di questo valore sutruedistribuirà il VPC minimo e più privato per eseguire il pattern: +   Una sottorete isolata in ogni zona di disponibilità utilizzata dal programma CDK.  <br />+   `enableDnsHostnames`e`enableDnsSupport`saranno entrambi impostati su`true`: .   Se questa proprietà ètrue, quindiexistingVpcnon può essere specificato. L'impostazione predefinita è false.  | 
|  VPCProp?  |  [`ec2.VpcProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  Proprietà facoltative fornite dall'utente per sovrascrivere le proprietà predefinite per il nuovo VPC.enableDnsHostnames,enableDnsSupport,natGatewaysesubnetConfigurationsono impostati dal modello, quindi tutti i valori per quelle proprietà fornite qui verranno ignorati. SedeployVpcnon ètrue, questa proprietà verrà ignorata.  | 
|  TopArnEnvironmentVariableName?  |  string  |  Nome facoltativo per la variabile di ambiente ARN argomento SNS impostata per la funzione Lambda.  | 
|  TopicNameEnvironmentVariableName?  |  string  |  Nome facoltativo per la variabile di ambiente nome argomento SNS impostata per la funzione Lambda.  | 

## Proprietà modelli
<a name="pattern-properties-20"></a>


|  **Nome**  |  **Tipo**  |  **Descrizione**  | 
| --- | --- | --- | 
|  LambdaFunction  |  [`lambda.Function`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Restituisce un'istanza della funzione Lambda creata dal pattern.  | 
|  SNSTopic  |  [`sns.Topic`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Restituisce un'istanza dell'argomento SNS creato dal modello.  | 
|  VPC?  |  [`ec2.IVpc`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Restituisce un'istanza del VPC utilizzato dal modello (se presente). Questo può essere un VPC creato dal pattern o dal VPC fornito al costruttore del pattern.  | 

## Impostazioni predefinite
<a name="default-settings-20"></a>

 L'implementazione predefinita del Costrutto senza alcun override imposterà i seguenti valori predefiniti: 

### Funzione di AWS Lambda
<a name="aws-lambda-function-12"></a>
+  Configurare il ruolo IAM di accesso con privilegi limitati per la funzione Lambda. 
+  Abilita il riutilizzo delle connessioni con Keep-Alive per la funzione NodeJS Lambda. 
+  Abilitare il tracciamento X-Ray
+  Imposta le variabili di ambiente:
  +  `SNS_TOPIC_NAME` (predefinito)
  +  `SNS_TOPIC_ARN` (predefinito)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(per le funzioni Node 10.x e successive)

### Argomenti Amazon SNS
<a name="amazon-sns-topic"></a>
+  Configurare le autorizzazioni di accesso con privilegi minimi per l'argomento SNS. 
+  Abilitare la crittografia lato server utilizzando la chiave AWS gestita. 
+  Applicazione della crittografia dei dati in transito 

## Architecture
<a name="architecture-20"></a>

![](http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/aws-lambda-sns.png)


## GitHub
<a name="github-20"></a>


<table>
<thead>
  <tr><th colspan="2"> <b>Per visualizzare il codice per questo modello, creare/visualizzare problemi e richieste pull e altro ancora:</b> </th></tr>
</thead>
<tbody>
  <tr><td> <img src="http://docs.aws.amazon.com/it_it/solutions/latest/constructs/images/GitHub-Mark-32px.png" alt="" /> </td><td> <a href="https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sns">@aws -solutions-constructs/aws-lambda-sns</a> </td></tr>
</tbody>
</table>
