

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à.

# Abilita l'accesso a Internet per le funzioni VPC-connected Lambda
<a name="configuration-vpc-internet"></a>

Per impostazione predefinita, le funzioni Lambda vengono eseguite in un Lambda-managed VPC con accesso a Internet. Per accedere alle risorse in un VPC nel tuo account, puoi aggiungere una configurazione VPC a una funzione. Ciò limita la funzione alle risorse all'interno di quel VPC, a meno che il VPC non abbia accesso a Internet. Questa pagina spiega come fornire l'accesso a Internet alle funzioni VPC-connected Lambda.

## Non ho ancora un VPC
<a name="new-vpc"></a>

### Creazione del VPC
<a name="create-vpc-internet"></a>

Il **flusso di lavoro Crea VPC** crea tutte le risorse VPC necessarie per una funzione Lambda per accedere alla rete Internet pubblica da una sottorete privata, incluse sottoreti, gateway NAT, gateway Internet e voci della tabella di routing.

**Per creare il VPC**

1. Apri la console Amazon VPC all'indirizzo [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Nel pannello di controllo, scegli **Crea VPC**.

1. Per **Risorse da creare**, scegli **VPC e altro**.

1. **Configurazione del VPC**

   1. Per **Name tag auto-generation** (Generazione automatica di tag nome), immetti un nome per il VPC.

   1. Per **Blocco CIDR IPv4**, mantieni il suggerimento predefinito o, in alternativa, inserisci il blocco CIDR richiesto dall'applicazione o dalla rete.

   1. Se l'applicazione comunica utilizzando indirizzi IPv6, scegli il blocco CIDR IPv6, il blocco ** CIDR IPv6. ** ** Amazon-provided **

1. **Configurazione delle sottoreti**

   1. In **Numero di zone di disponibilità**, scegli **2**. Per una disponibilità elevata consigliamo almeno due zone di disponibilità.

   1. Per **Number of public subnets** (Numero di sottoreti pubbliche), scegli **2**.

   1. Per **Number of private subnets** (Numero di sottoreti private), scegli **2**.

   1. Puoi mantenere il blocco CIDR predefinito per la sottorete pubblica o, in alternativa, espandere **Personalizza blocchi CIDR della sottorete** e inserire un blocco CIDR. Per ulteriori informazioni, consulta [Blocchi CIDR della sottorete](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-sizing.html).

1. Per **Gateway NAT**, scegli **1 per AZ** per migliorare la resilienza.

1. Per **Gateway Internet solo in uscita**, scegli **Sì** se hai scelto di includere un blocco CIDR IPv6.

1. Per **Endpoint VPC**, mantieni il valore predefinito, **Gateway S3**. Questa opzione non prevede alcun costo. Per ulteriori informazioni, consulta [Tipi di endpoint VPC per Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-s3).

1. Per **Opzioni DNS**, mantieni le impostazioni predefinite.

1. Seleziona **Crea VPC**.

### Configura la funzione Lambda
<a name="vpc-function-internet-create"></a>

**Per configurare un VPC quando si crea una funzione**

1. Aprire la pagina [Funzioni](https://console.aws.amazon.com/lambda/home#/functions) della console Lambda.

1. Scegli **Crea funzione**.

1. In **Informazioni di base**, immettere un nome per la funzione in **Nome funzione**.

1. Espandere **Advanced settings (Impostazioni avanzate)**.

1. Seleziona **Abilita VPC**, quindi scegli un VPC.

1. (Facoltativo) Per consentire il [traffico IPv6 in uscita](configuration-vpc.md#configuration-vpc-ipv6), selezionare **Consenti il traffico IPv6 per sottoreti dual-stack**.

1. Per **Sottoreti**, seleziona tutte le sottoreti private. Le sottoreti private possono accedere a Internet attraverso un gateway NAT. La connessione di una funzione a una sottorete pubblica non fornisce l'accesso a Internet.
**Nota**  
Se hai selezionato **Consenti il traffico IPv6 per sottoreti dual-stack**, tutte le sottoreti selezionate devono avere un blocco CIDR IPv4 e un blocco CIDR IPv6.

1. Per **Gruppi di sicurezza**, seleziona un gruppo di sicurezza che consenta il traffico in uscita.

1. Scegli **Crea funzione**.

Lambda crea automaticamente un ruolo di esecuzione con la policy gestita. [ AWSLambdaVPCAccessExecutionRole ](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLambdaVPCAccessExecutionRole.html) AWS Le autorizzazioni in questa policy sono necessarie solo per creare interfacce di rete elastiche per la configurazione VPC, non per richiamare la funzione. Per applicare le autorizzazioni con privilegi minimi, puoi rimuovere la ** AWSLambdaVPCAccessExecutionRole ** policy dal tuo ruolo di esecuzione dopo aver creato la funzione e la configurazione del VPC. Per ulteriori informazioni, consulta [Autorizzazioni IAM richieste](configuration-vpc.md#configuration-vpc-permissions).

**Per configurare un VPC per una funzione esistente**

Per aggiungere una configurazione VPC a una funzione esistente, il ruolo di esecuzione della funzione deve disporre dell'[autorizzazione per creare e gestire interfacce di rete elastiche](configuration-vpc.md#configuration-vpc-permissions). La policy [ AWSLambdaVPCAccessExecutionRole ](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLambdaVPCAccessExecutionRole.html) AWS gestita include le autorizzazioni richieste. Per applicare le autorizzazioni con privilegi minimi, puoi rimuovere la ** AWSLambdaVPCAccessExecutionRole ** policy dal tuo ruolo di esecuzione dopo aver creato la configurazione VPC.

1. Aprire la pagina [Funzioni](https://console.aws.amazon.com/lambda/home#/functions) della console Lambda.

1. Scegliere una funzione.

1. Scegli la scheda **Configurazione**, quindi scegli **VPC**.

1. In **VPC**, scegli **Modifica**.

1. Seleziona il VPC

1. (Facoltativo) Per consentire il [traffico IPv6 in uscita](configuration-vpc.md#configuration-vpc-ipv6), selezionare **Consenti il traffico IPv6 per sottoreti dual-stack**.

1. Per **Sottoreti**, seleziona tutte le sottoreti private. Le sottoreti private possono accedere a Internet attraverso un gateway NAT. La connessione di una funzione a una sottorete pubblica non fornisce l'accesso a Internet.
**Nota**  
Se hai selezionato **Consenti il traffico IPv6 per sottoreti dual-stack**, tutte le sottoreti selezionate devono avere un blocco CIDR IPv4 e un blocco CIDR IPv6.

1. Per **Gruppi di sicurezza**, seleziona un gruppo di sicurezza che consenta il traffico in uscita.

1. Scegli **Save** (Salva).

### Test della funzione
<a name="vpc-function-internet-test"></a>

Utilizza il seguente codice di esempio per confermare che la tua VPC-connected funzione può raggiungere la rete Internet pubblica. In caso di successo, il codice restituisce un codice di stato `200`. Se non ha esito positivo, la funzione scade.

------
#### [ Node.js ]

1. Nel riquadro **Codice sorgente** della console Lambda, incolla il codice seguente nel file **index.mjs**. La funzione effettua una richiesta HTTP GET a un endpoint pubblico e restituisce il codice di risposta HTTP per verificare se la funzione ha accesso alla rete Internet pubblica.  
![Editor di codice della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/code-source-nodejs.png)  
**Example — Richiesta HTTP con async/await**  

   ```
   const url = "https://aws.amazon.com/";
   
   export const handler = async(event) => {
       try {
           const res = await fetch(url);
           console.info("status", res.status);
           return res.status;
       }
       catch (e) {
           console.error(e);
           return 500;
       }
   };
   ```

1. Nella sezione **DEPLOY**, scegli **Implementa** per aggiornare il codice della tua funzione:  
![Pulsante Implementa nell'editor di codice della console Lambda](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-tab.png)

1. Scegli **Test (Esegui test)**.

1. La funzione restituisce un codice di stato `200`. Ciò significa che la funzione dispone di un accesso a Internet in uscita.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-successful-200.png)

   Se la funzione non riesce a raggiungere la rete Internet pubblica, ti verrà mostrato un messaggio di errore come questo:

   ```
   {
     "errorMessage": "2024-04-11T17:22:20.857Z abe12jlc-640a-8157-0249-9be825c2y110 Task timed out after 3.01 seconds"
   }
   ```

------
#### [ Python ]

1. Nel riquadro **Codice sorgente** della console Lambda, incolla il seguente codice seguente nel file **lambda\_function.py**. La funzione effettua una richiesta HTTP GET a un endpoint pubblico e restituisce il codice di risposta HTTP per verificare se la funzione ha accesso alla rete Internet pubblica.  
![Editor di codice della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/code-source-python.png)

   ```
   import urllib.request
   
   def lambda_handler(event, context):
       try:
           response = urllib.request.urlopen('https://aws.amazon.com')
           status_code = response.getcode()
           print('Response Code:', status_code)
           return status_code
       except Exception as e:
           print('Error:', e)
           raise e
   ```

1. Nella sezione **DEPLOY**, scegli **Implementa** per aggiornare il codice della tua funzione:  
![Pulsante Implementa nell'editor di codice della console Lambda](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-tab.png)

1. Scegli **Test (Esegui test)**.

1. La funzione restituisce un codice di stato `200`. Ciò significa che la funzione dispone di un accesso a Internet in uscita.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-successful-200.png)

   Se la funzione non riesce a raggiungere la rete Internet pubblica, ti verrà mostrato un messaggio di errore come questo:

   ```
   {
     "errorMessage": "2024-04-11T17:22:20.857Z abe12jlc-640a-8157-0249-9be825c2y110 Task timed out after 3.01 seconds"
   }
   ```

------

## Ho già un VPC
<a name="existing-vpc"></a>

Se disponi già di un VPC ma devi configurare l'accesso pubblico a Internet per una funzione Lambda, completa questa procedura. Questa procedura presuppone che il VPC abbia almeno due sottoreti. Se non disponi di due sottoreti, consulta [Creare una sottorete](https://docs.aws.amazon.com/vpc/latest/userguide/create-subnets.html) nella *Guida per l'utente di Amazon VPC*.

### Verificare la configurazione della tabella di routing
<a name="vpc-internet-routes"></a>

1. Apri la console Amazon VPC all'indirizzo [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Scegli l'**ID VPC**.  
![Elenco dei VPC della console VPC.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/vpc-id.png)

1. Scorri verso il basso fino alla sezione **Mappa delle risorse**. Prendi nota delle mappature delle tabelle di routing. Apri ogni tabella di routing mappata a una sottorete.  
![Sezione della mappa delle risorse della console VPC.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-associations.png)

1. Scorri verso il basso fino alla scheda **Route**. Esamina i routing per determinare se il tuo VPC ha entrambe le seguenti tabelle di routing. Ciascuno di questi requisiti deve essere soddisfatto da una tabella di routing separata.
   + Internet-bound il traffico (`0.0.0.0/0`per IPv4, `::/0` per IPv6) viene indirizzato a un gateway Internet (). `igw-xxxxxxxxxx` Ciò significa che la sottorete associata alla tabella di routing è una sottorete pubblica.
**Nota**  
Se la sottorete non ha un blocco CIDR IPv6, sarà visualizzata solo la route IPv4 (`0.0.0.0/0`).  
**Example tabella di routing della sottorete pubblica**    
![Tabella di routing della sottorete pubblica con percorso verso il gateway Internet.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/routes-public.png)
   + Internet-bound il traffico per IPv4 (`0.0.0.0/0`) viene indirizzato a un gateway NAT (`nat-xxxxxxxxxx`) associato a una sottorete pubblica. Ciò significa che la sottorete è una sottorete privata che può accedere a Internet tramite il gateway NAT.
**Nota**  
Se la sottorete ha un blocco CIDR IPv6, la tabella di routing deve instradare il traffico IPv6 vincolato a Internet (`::/0`) a un gateway Internet di sola uscita (`eigw-xxxxxxxxxx`). Se la sottorete non ha un blocco CIDR IPv6, sarà visualizzata solo la route IPv4 (`0.0.0.0/0`).  
**Example tabella di routing della sottorete privata**    
![Tabella di routing della sottorete privata con percorso verso il gateway NAT.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/routes-private.png)

1. Ripeti il passaggio precedente fino a quando non avrai esaminato ogni tabella di routing associata a una sottorete nel tuo VPC e avrai confermato di avere una tabella di routing con un gateway Internet e una tabella di routing con un gateway NAT.

   Se non disponi di due tabelle di routing, una con una route verso un gateway Internet e una con una route verso un gateway NAT, segui questi passaggi per creare le risorse mancanti e le voci della tabella di routing.

### Creazione di una tabella di routing
<a name="create-route-table"></a>

Completa la seguente procedura per creare una tabella di routing e associarla a una sottorete.

**Per creare una tabella di routing personalizzata utilizzando la console Amazon VPC**

1. Apri la console Amazon VPC all'indirizzo [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Nel riquadro di navigazione, seleziona **Tabelle di routing**.

1. Selezionare **Create route table (Crea tabella di instradamento)**.

1. (Facoltativo) In **Name (Nome)**, inserisci un nome per la tabella di instradamento. 

1. In **VPC**, seleziona il VPC. 

1. (Facoltativo) Per aggiungere un tag, scegli **Add new tag** (Aggiungi nuovo tag) e inserisci la chiave e il valore del tag.

1. Selezionare **Create route table (Crea tabella di instradamento)**.

1. Nella scheda **Associazioni sottorete** scegli **Modifica associazioni sottorete**.  
![Collega il gateway Internet al VPC.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-subnet.png)

1. Seleziona la casella di controllo per la sottorete da associare alla tabella di instradamento.

1. Scegli **Salva associazioni**.

### Creazione di un Internet Gateway
<a name="create-igw"></a>

Segui questi passaggi per creare un gateway Internet, collegarlo al tuo VPC e aggiungerlo alla tabella di routing della sottorete pubblica.

**Come creare un gateway Internet**

1. Apri la console Amazon VPC all'indirizzo [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Nel riquadro di navigazione, seleziona **Gateway Internet**.

1. Scegliere **Crea gateway Internet**.

1. (Facoltativo) Inserisci un nome per il gateway Internet.

1. (Facoltativo) Per aggiungere un tag, scegli **Add new tag** (Aggiungi nuovo tag) e immetti la chiave e il valore del tag.

1. Scegliere **Crea gateway Internet**.

1. Scegli **Collega a un VPC** dal banner nella parte superiore dello schermo, seleziona un VPC disponibile e scegli **Collega un gateway Internet**.  
![Collega il gateway Internet al VPC.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/igw-attach-vpc.png)

1. Scegli l'**ID VPC**.  
![Pagina dei dettagli del gateway Internet.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/igw-subnet-1.png)

1. Scegli di nuovo l'**ID VPC** per aprire la pagina dei dettagli del VPC.  
![Elenco VPC filtrato nella console Amazon VPC.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/igw-your-vpcs.png)

1. Scorri verso il basso fino alla sezione **Mappa delle risorse**, quindi scegli una sottorete. I dettagli della sottorete vengono visualizzati in una nuova scheda.  
![Mappa delle risorse della console VPC con un elenco di sottoreti.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/vpc-subnets.png)

1. Scegli il link sotto **Tabella di routing**.  
![Link alla tabella di routing nella pagina dei dettagli della sottorete.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/subnet-route-table.png)

1. Seleziona **ID tabella di routing** per aprire la pagina dei dettagli della tabella di routing.  
![Elenco delle tabelle di percorso filtrato.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-id.png)

1. In **Route**, seleziona **Modifica route**.  
![Elenco dei percorsi con il pulsante Modifica percorsi.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/edit-routes.png)

1. Scegli **Aggiungi route**, quindi inserisci `0.0.0.0/0` nella casella **Destinazione**.  
![Aggiungi destinazione per il nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-1.png)

1. Per **Destinazione**, seleziona **Internet gateway**, quindi scegli il gateway Internet creato in precedenza. Se la sottorete ha un blocco CIDR IPv6, devi anche aggiungere una route per `::/0` per lo stesso gateway Internet.  
![Aggiungi destinazione per un nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-2.png)

1. Scegli **Save changes** (Salva modifiche).

### Creazione di un gateway NAT
<a name="create-nat-gateway"></a>

Segui questi passaggi per creare un gateway NAT, associarlo a una sottorete pubblica e aggiungerlo alla tabella di routing della sottorete privata.

**Per creare un gateway NAT e associarlo a una sottorete pubblica**

1. Nel riquadro di navigazione, scegli **Gateway NAT**.

1. Scegli **Crea gateway NAT**.

1. (Facoltativo) Inserisci un nome per il gateway NAT.

1. In **Sottorete** seleziona una sottorete pubblica del VPC. Una sottorete pubblica è una sottorete che ha una route diretta a un gateway Internet nella sua tabella di routing.
**Nota**  
I gateway NAT sono associati a una sottorete pubblica, ma la voce della tabella di routing si trova nella sottorete privata.

1. Per **ID allocazione IP elastico**, seleziona un indirizzo IP elastico o scegli **Alloca IP elastico**.

1. Scegli **Crea gateway NAT**.

**Per aggiungere una route al gateway NAT nella tabella di routing della sottorete privata**

1. Nel riquadro di navigazione, seleziona **Sottoreti**.

1. Seleziona una sottorete privata nel VPC. Una sottorete privata è una sottorete che non dispone di una route a un gateway Internet nella sua tabella di routing.

1. Scegli il link sotto **Tabella di routing**.  
![Collegamento alla tabella delle rotte nella pagina dei dettagli della sottorete.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/subnet-route-table.png)

1. Seleziona **ID tabella di routing** per aprire la pagina dei dettagli della tabella di routing.  
![Elenco delle tabelle di percorso filtrato.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-id.png)

1. Scorri verso il basso e seleziona la scheda **Route**, quindi scegli **Modifica route**.  
![Scheda Itinerari nella pagina dei dettagli della tabella dei percorsi.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-edit-routes.png)

1. Scegli **Aggiungi route**, quindi inserisci `0.0.0.0/0` nella casella **Destinazione**.  
![Aggiungi la destinazione per il nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-1.png)

1. Per **Destinazione**, seleziona **Gateway NAT**, quindi scegli il gateway NAT creato in precedenza.  
![Aggiungi destinazione per un nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-nat.png)

1. Scegli **Save changes** (Salva modifiche).

### Creare un gateway Internet di sola uscita (solo IPv6)
<a name="create-egress-gateway"></a>

Segui questi passaggi per creare un gateway Internet solo in uscita e aggiungerlo alla tabella di routing della tua sottorete privata.

**Per creare un gateway internet egress-only**

1. Nel pannello di navigazione, scegli i gateway ** Egress-only ** Internet.

1. Seleziona **Crea gateway Internet solo in uscita**.

1. (Facoltativo) Immetti un nome.

1. Selezionare il VPC nel quale creare l'Internet Gateway egress-only. 

1. Seleziona **Crea gateway Internet solo in uscita**.

1. Scegli il link sotto **ID VPC collegato**.  
![Egress-only pagina dei dettagli del gateway Internet.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/eigw-details.png)

1. Scegliere il link sotto **ID VPC** per aprire la pagina dei dettagli del VPC.

1. Scorri verso il basso fino alla sezione **Mappa delle risorse**, quindi scegli una sottorete privata. Una sottorete privata è una sottorete che non dispone di una route a un gateway Internet nella sua tabella di routing. I dettagli della sottorete vengono visualizzati in una nuova scheda.  
![Mappa delle risorse della console VPC con un elenco di sottoreti.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/vpc-subnet-private.png)

1. Scegli il link sotto **Tabella di routing**.  
![Link alla tabella di routing nella pagina dei dettagli della sottorete.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/private-subnet-route-table.png)

1. Seleziona **ID tabella di routing** per aprire la pagina dei dettagli della tabella di routing.  
![Elenco delle tabelle di percorso filtrato.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-id.png)

1. In **Route**, seleziona **Modifica route**.  
![Elenco dei percorsi con il pulsante Modifica percorsi.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/edit-routes.png)

1. Scegli **Aggiungi route**, quindi inserisci `::/0` nella casella **Destinazione**.  
![Aggiungi destinazione per il nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-1.png)

1. Per **Destinazione**, seleziona **Gateway Internet solo in uscita**, quindi scegli il gateway creato in precedenza.  
![Aggiungi destinazione per un nuovo percorso.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/eigw-route.png)

1. Scegli **Save changes** (Salva modifiche).

### Configura la funzione Lambda
<a name="vpc-function-internet-create-existing"></a>

**Per configurare un VPC quando si crea una funzione**

1. Aprire la pagina [Funzioni](https://console.aws.amazon.com/lambda/home#/functions) della console Lambda.

1. Scegli **Crea funzione**.

1. In **Informazioni di base**, immettere un nome per la funzione in **Nome funzione**.

1. Espandere **Advanced settings (Impostazioni avanzate)**.

1. Seleziona **Abilita VPC**, quindi scegli un VPC.

1. (Facoltativo) Per consentire il [traffico IPv6 in uscita](configuration-vpc.md#configuration-vpc-ipv6), selezionare **Consenti il traffico IPv6 per sottoreti dual-stack**.

1. Per **Sottoreti**, seleziona tutte le sottoreti private. Le sottoreti private possono accedere a Internet attraverso un gateway NAT. La connessione di una funzione a una sottorete pubblica non fornisce l'accesso a Internet.
**Nota**  
Se hai selezionato **Consenti il traffico IPv6 per sottoreti dual-stack**, tutte le sottoreti selezionate devono avere un blocco CIDR IPv4 e un blocco CIDR IPv6.

1. Per **Gruppi di sicurezza**, seleziona un gruppo di sicurezza che consenta il traffico in uscita.

1. Scegli **Crea funzione**.

Lambda crea automaticamente un ruolo di esecuzione con la policy [ AWSLambdaVPCAccessExecutionRole ](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLambdaVPCAccessExecutionRole.html) AWS gestita. Le autorizzazioni in questa policy sono necessarie solo per creare interfacce di rete elastiche per la configurazione VPC, non per richiamare la funzione. Per applicare le autorizzazioni con privilegi minimi, puoi rimuovere la ** AWSLambdaVPCAccessExecutionRole ** policy dal tuo ruolo di esecuzione dopo aver creato la funzione e la configurazione del VPC. Per ulteriori informazioni, consulta [Autorizzazioni IAM richieste](configuration-vpc.md#configuration-vpc-permissions).

**Per configurare un VPC per una funzione esistente**

Per aggiungere una configurazione VPC a una funzione esistente, il ruolo di esecuzione della funzione deve disporre dell'[autorizzazione per creare e gestire interfacce di rete elastiche](configuration-vpc.md#configuration-vpc-permissions). La policy [ AWSLambdaVPCAccessExecutionRole ](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLambdaVPCAccessExecutionRole.html) AWS gestita include le autorizzazioni richieste. Per applicare le autorizzazioni con privilegi minimi, puoi rimuovere la ** AWSLambdaVPCAccessExecutionRole ** policy dal tuo ruolo di esecuzione dopo aver creato la configurazione VPC.

1. Aprire la pagina [Funzioni](https://console.aws.amazon.com/lambda/home#/functions) della console Lambda.

1. Scegliere una funzione.

1. Scegli la scheda **Configurazione**, quindi scegli **VPC**.

1. In **VPC**, scegli **Modifica**.

1. Seleziona il VPC

1. (Facoltativo) Per consentire il [traffico IPv6 in uscita](configuration-vpc.md#configuration-vpc-ipv6), selezionare **Consenti il traffico IPv6 per sottoreti dual-stack**.

1. Per **Sottoreti**, seleziona tutte le sottoreti private. Le sottoreti private possono accedere a Internet attraverso un gateway NAT. La connessione di una funzione a una sottorete pubblica non fornisce l'accesso a Internet.
**Nota**  
Se hai selezionato **Consenti il traffico IPv6 per sottoreti dual-stack**, tutte le sottoreti selezionate devono avere un blocco CIDR IPv4 e un blocco CIDR IPv6.

1. Per **Gruppi di sicurezza**, seleziona un gruppo di sicurezza che consenta il traffico in uscita.

1. Scegli **Save** (Salva).

### Test della funzione
<a name="vpc-function-internet-test-existing"></a>

Utilizza il seguente codice di esempio per confermare che la tua VPC-connected funzione può raggiungere la rete Internet pubblica. In caso di successo, il codice restituisce un codice di stato `200`. Se non ha esito positivo, la funzione scade.

------
#### [ Node.js ]

1. Nel riquadro **Codice sorgente** della console Lambda, incolla il codice seguente nel file **index.mjs**. La funzione effettua una richiesta HTTP GET a un endpoint pubblico e restituisce il codice di risposta HTTP per verificare se la funzione ha accesso alla rete Internet pubblica.  
![Editor di codice della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/code-source-nodejs.png)  
**Example — Richiesta HTTP con async/await**  

   ```
   const url = "https://aws.amazon.com/";
   
   export const handler = async(event) => {
       try {
           const res = await fetch(url);
           console.info("status", res.status);
           return res.status;
       }
       catch (e) {
           console.error(e);
           return 500;
       }
   };
   ```

1. Nella sezione **DEPLOY**, scegli **Implementa** per aggiornare il codice della tua funzione:  
![Pulsante Implementa nell'editor di codice della console Lambda](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-tab.png)

1. Scegli **Test (Esegui test)**.

1. La funzione restituisce un codice di stato `200`. Ciò significa che la funzione dispone di un accesso a Internet in uscita.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-successful-200.png)

   Se la funzione non riesce a raggiungere la rete Internet pubblica, ti verrà mostrato un messaggio di errore come questo:

   ```
   {
     "errorMessage": "2024-04-11T17:22:20.857Z abe12jlc-640a-8157-0249-9be825c2y110 Task timed out after 3.01 seconds"
   }
   ```

------
#### [ Python ]

1. Nel riquadro **Codice sorgente** della console Lambda, incolla il seguente codice seguente nel file **lambda\_function.py**. La funzione effettua una richiesta HTTP GET a un endpoint pubblico e restituisce il codice di risposta HTTP per verificare se la funzione ha accesso alla rete Internet pubblica.  
![Editor di codice della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/code-source-python.png)

   ```
   import urllib.request
   
   def lambda_handler(event, context):
       try:
           response = urllib.request.urlopen('https://aws.amazon.com')
           status_code = response.getcode()
           print('Response Code:', status_code)
           return status_code
       except Exception as e:
           print('Error:', e)
           raise e
   ```

1. Nella sezione **DEPLOY**, scegli **Implementa** per aggiornare il codice della tua funzione:  
![Pulsante Implementa nell'editor di codice della console Lambda](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-tab.png)

1. Scegli **Test (Esegui test)**.

1. La funzione restituisce un codice di stato `200`. Ciò significa che la funzione dispone di un accesso a Internet in uscita.  
![Scheda Test della console Lambda.](https://docs.aws.amazon.com/it_it/lambda/latest/dg/images/test-successful-200.png)

   Se la funzione non riesce a raggiungere la rete Internet pubblica, ti verrà mostrato un messaggio di errore come questo:

   ```
   {
     "errorMessage": "2024-04-11T17:22:20.857Z abe12jlc-640a-8157-0249-9be825c2y110 Task timed out after 3.01 seconds"
   }
   ```

------