

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

# Abilitare l'accesso a Internet per funzioni Lambda connesse a un VPC
<a name="configuration-vpc-internet"></a>

Per impostazione predefinita, le funzioni Lambda vengono eseguite in un VPC gestito da Lambda 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 Lambda connesse al VPC.

## 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 il **blocco IPv4 CIDR**, puoi mantenere il suggerimento predefinito o, in alternativa, puoi inserire il blocco CIDR richiesto dall'applicazione o dalla rete.

   1. Se la tua applicazione comunica utilizzando IPv6 gli indirizzi, scegli il blocco **IPv6CIDR, il blocco CIDR** fornito da **Amazon IPv6 **.

1. **Configurazione delle sottoreti**

   1. In **Numero di zone di disponibilità**, scegli **2**. Ne consigliamo almeno due per un'elevata disponibilità. AZs 

   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 il **gateway Internet solo Egress**, scegli **Sì** se hai scelto di includere un blocco IPv6 CIDR.

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 in [uscita, seleziona Consenti IPv6 il traffico](configuration-vpc.md#configuration-vpc-ipv6) per sottoreti ** IPv6 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 IPv6 traffico per le sottoreti dual-stack, tutte le sottoreti selezionate devono avere un blocco** CIDR e un blocco CIDR. IPv4 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 in [uscita, seleziona Consenti il IPv6 traffico](configuration-vpc.md#configuration-vpc-ipv6) per sottoreti dual-stack. IPv6 **

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 IPv6 traffico per le sottoreti dual-stack, tutte le sottoreti selezionate devono avere un blocco** CIDR e un blocco CIDR. IPv4 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>

Usa il seguente codice di esempio per verificare che la tua funzione connessa al VPC possa 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.  
![\[\]](http://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:  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![\[\]](http://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.  
![\[\]](http://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\$1function.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.  
![\[\]](http://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:  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![\[\]](http://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.  
![\[\]](http://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**.  
![\[\]](http://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.  
![\[\]](http://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.
   + Il traffico diretto a Internet (`0.0.0.0/0`for IPv4, `::/0` for 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 tua sottorete non ha un blocco IPv6 CIDR, vedrai solo route (). IPv4 `0.0.0.0/0`  
**Example tabella di routing della sottorete pubblica**    
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/routes-public.png)
   + Il traffico collegato a Internet for 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 IPv6 CIDR, la tabella di routing deve inoltre indirizzare il traffico legato a Internet () verso un gateway Internet di sola uscita () IPv6 . `::/0` `eigw-xxxxxxxxxx` Se la sottorete non ha un blocco IPv6 CIDR, vedrete solo route (). IPv4 `0.0.0.0/0`  
**Example tabella di routing della sottorete privata**    
![\[\]](http://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**.  
![\[\]](http://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**.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/igw-attach-vpc.png)

1. Scegli l'**ID VPC**.  
![\[\]](http://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.  
![\[\]](http://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.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/vpc-subnets.png)

1. Scegli il link sotto **Tabella di routing**.  
![\[\]](http://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.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-id.png)

1. In **Route**, seleziona **Modifica route**.  
![\[\]](http://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**.  
![\[\]](http://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 IPv6 CIDR, è necessario aggiungere anche un percorso `::/0` per lo stesso gateway Internet.  
![\[\]](http://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**.  
![\[\]](http://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.  
![\[\]](http://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**.  
![\[\]](http://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**.  
![\[\]](http://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.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/create-route-nat.png)

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

### Crea un gateway Internet solo in 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 riquadro di navigazione, seleziona **Gateway Internet solo in uscita**.

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**.  
![\[\]](http://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.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/vpc-subnet-private.png)

1. Scegli il link sotto **Tabella di routing**.  
![\[\]](http://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.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/route-table-id.png)

1. In **Route**, seleziona **Modifica route**.  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/edit-routes.png)

1. Scegli **Aggiungi route**, quindi inserisci `::/0` nella casella **Destinazione**.  
![\[\]](http://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.  
![\[\]](http://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 in [uscita, seleziona Consenti IPv6 il traffico](configuration-vpc.md#configuration-vpc-ipv6) per sottoreti ** IPv6 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 IPv6 traffico per le sottoreti dual-stack, tutte le sottoreti selezionate devono avere un blocco** CIDR e un blocco CIDR. IPv4 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 in [uscita, seleziona Consenti il IPv6 traffico](configuration-vpc.md#configuration-vpc-ipv6) per sottoreti dual-stack. IPv6 **

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 IPv6 traffico per le sottoreti dual-stack, tutte le sottoreti selezionate devono avere un blocco** CIDR e un blocco CIDR. IPv4 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>

Usa il seguente codice di esempio per verificare che la tua funzione connessa al VPC possa 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.  
![\[\]](http://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:  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![\[\]](http://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.  
![\[\]](http://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\$1function.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.  
![\[\]](http://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:  
![\[\]](http://docs.aws.amazon.com/it_it/lambda/latest/dg/images/getting-started-tutorial/deploy-console.png)

1. Seleziona la scheda **Test**.  
![\[\]](http://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.  
![\[\]](http://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"
   }
   ```

------