

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

# Inizia con CloudFront
<a name="GettingStarted"></a>

Gli argomenti di questa sezione mostrano come iniziare a distribuire i tuoi contenuti con Amazon CloudFront.

L'[Configura il tuo Account AWS](setting-up-cloudfront.md)argomento descrive i prerequisiti per i seguenti tutorial, come la creazione di un utente Account AWS e la creazione di un utente con accesso amministrativo.

Il tutorial sulla distribuzione di base mostra come configurare il controllo di accesso origine (OAC) per inviare richieste autenticate a un’origine Amazon S3.

Il tutorial sul sito web statico sicuro mostra come creare un sito web statico sicuro per il nome di dominio utilizzando OAC con un’origine Amazon S3. Il tutorial utilizza un modello Amazon CloudFront (CloudFront) per la configurazione e la distribuzione.

**Topics**
+ [

# Configura il tuo Account AWS
](setting-up-cloudfront.md)
+ [

# Inizia con una distribuzione CloudFront standard
](GettingStarted.SimpleDistribution.md)
+ [

# Nozioni di base su una distribuzione standard (AWS CLI)
](get-started-cli-tutorial.md)
+ [

# Nozioni di base sull’utilizzo di un sito web statico sicuro
](getting-started-secure-static-website-cloudformation-template.md)

# Configura il tuo Account AWS
<a name="setting-up-cloudfront"></a>

Questo argomento descrive i passaggi preliminari, come la creazione di un Account AWS file, per prepararti a utilizzare Amazon CloudFront.

**Topics**
+ [

## Registrati per un Account AWS
](#sign-up-for-aws)
+ [

## Crea un utente con accesso amministrativo
](#create-an-admin)
+ [

## Scegli come accedere CloudFront
](#introduction-accessing-cloudfront)

## Registrati per un Account AWS
<a name="sign-up-for-aws"></a>

Se non ne hai uno Account AWS, completa i seguenti passaggi per crearne uno.

**Per iscriverti a un Account AWS**

1. Apri la [https://portal.aws.amazon.com/billing/registrazione.](https://portal.aws.amazon.com/billing/signup)

1. Segui le istruzioni online.

   Nel corso della procedura di registrazione riceverai una telefonata o un messaggio di testo e ti verrà chiesto di inserire un codice di verifica attraverso la tastiera del telefono.

   Quando ti iscrivi a un Account AWS, *Utente root dell'account AWS*viene creato un. L’utente root dispone dell’accesso a tutte le risorse e tutti i Servizi AWS nell’account. Come best practice di sicurezza, assegna l’accesso amministrativo a un utente e utilizza solo l’utente root per eseguire [attività che richiedono l’accesso di un utente root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS ti invia un'email di conferma dopo il completamento della procedura di registrazione. In qualsiasi momento, puoi visualizzare l'attività corrente del tuo account e gestirlo accedendo a [https://aws.amazon.com/](https://aws.amazon.com/)e scegliendo **Il mio account**.

## Crea un utente con accesso amministrativo
<a name="create-an-admin"></a>

Dopo esserti registrato Account AWS, proteggi Utente root dell'account AWS AWS IAM Identity Center, abilita e crea un utente amministrativo in modo da non utilizzare l'utente root per le attività quotidiane.

**Proteggi i tuoi Utente root dell'account AWS**

1.  Accedi [Console di gestione AWS](https://console.aws.amazon.com/)come proprietario dell'account scegliendo **Utente root** e inserendo il tuo indirizzo Account AWS email. Nella pagina successiva, inserisci la password.

   Per informazioni sull’accesso utilizzando un utente root, consulta la pagina [Accedere come utente root](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) nella *Guida per l’utente di Accedi ad AWS *.

1. Abilita l’autenticazione a più fattori (MFA) per l’utente root.

   Per istruzioni, consulta [Abilitare un dispositivo MFA virtuale per l'utente Account AWS root (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) nella Guida per l'*utente IAM*.

**Crea un utente con accesso amministrativo**

1. Abilita il Centro identità IAM.

   Per istruzioni, consulta [Abilitazione del AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) nella *Guida per l’utente di AWS IAM Identity Center *.

1. Nel Centro identità IAM, assegna l’accesso amministrativo a un utente.

   Per un tutorial sull'utilizzo di IAM Identity Center directory come fonte di identità, consulta [Configurare l'accesso utente con l'impostazione predefinita IAM Identity Center directory](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) nella *Guida per l'AWS IAM Identity Center utente*.

**Accesso come utente amministratore**
+ Per accedere come utente del Centro identità IAM, utilizza l’URL di accesso che è stato inviato al tuo indirizzo e-mail quando hai creato l’utente del Centro identità IAM.

  Per informazioni sull'accesso utilizzando un utente IAM Identity Center, consulta [AWS Accedere al portale di accesso](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) nella *Guida per l'Accedi ad AWS utente*.

**Assegnazione dell’accesso ad altri utenti**

1. Nel Centro identità IAM, crea un set di autorizzazioni conforme alla best practice per l’applicazione di autorizzazioni con il privilegio minimo.

   Segui le istruzioni riportate nella pagina [Creazione di un set di autorizzazioni](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) nella *Guida per l’utente di AWS IAM Identity Center *.

1. Assegna al gruppo prima gli utenti e poi l’accesso con autenticazione unica (Single Sign-On).

   Per istruzioni, consulta [Aggiungere gruppi](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) nella *Guida per l’utente di AWS IAM Identity Center *.

## Scegli come accedere CloudFront
<a name="introduction-accessing-cloudfront"></a>

Puoi accedere ad Amazon CloudFront nei seguenti modi:
+ **Console di gestione AWS**— Le procedure riportate in questa guida spiegano come utilizzarlo Console di gestione AWS per eseguire attività.
+ **AWS SDKs**— Se utilizzi un linguaggio di programmazione che AWS fornisce un SDK per, puoi utilizzare un SDK per accedere. CloudFront SDKs semplifica l'autenticazione, si integra facilmente con il tuo ambiente di sviluppo e fornisci l'accesso ai CloudFront comandi. Per ulteriori informazioni, consulta [Utilizzo con un SDK CloudFront AWS](sdk-general-information-section.md).
+ **CloudFront API**: se utilizzi un linguaggio di programmazione per il quale non è disponibile un SDK, consulta [Amazon CloudFront API Reference](https://docs.aws.amazon.com/cloudfront/latest/APIReference/Welcome.html) per informazioni sulle azioni API e su come effettuare richieste API.
+ **AWS CLI**— Il AWS Command Line Interface (AWS CLI) è uno strumento unificato per la gestione. Servizi AWS Per informazioni su come installare e configurare la AWS CLI, consulta [Installazione o aggiornamento alla versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) nella *Guida per l’utente di AWS Command Line Interface *.
+ **Strumenti per Windows PowerShell**: se hai esperienza con Windows PowerShell, potresti preferire AWS Tools for Windows PowerShell utilizzarli. Per ulteriori informazioni, consulta [Installazione dell’ AWS Tools for Windows PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html) nella *Guida per l’utente dell’AWS Strumenti per PowerShell *.

# Inizia con una distribuzione CloudFront standard
<a name="GettingStarted.SimpleDistribution"></a>

Le procedure in questa sezione mostrano come CloudFront impostare una distribuzione standard che esegua le seguenti operazioni:
+ Crea un bucket Amazon S3 da utilizzare come origine della distribuzione.
+ Archivia le versioni originali degli oggetti in un bucket Amazon Simple Storage Service (Amazon S3).
+ Utilizza il controllo di accesso origine (OAC) per inviare richieste autenticate all’origine Amazon S3. OAC invia richieste CloudFront per impedire agli spettatori di accedere direttamente al bucket S3. Per ulteriori informazioni su OAC, consulta [Limitazione dell’accesso a un’origine Amazon S3](private-content-restricting-access-to-s3.md).
+ Utilizza il nome di CloudFront dominio URLs per i tuoi oggetti (ad esempio,). `https://d111111abcdef8.cloudfront.net/index.html`
+ Mantiene gli oggetti in posizioni CloudFront periferiche per la durata predefinita di 24 ore (la durata minima è 0 secondi).

La maggior parte di questo viene configurata automaticamente quando crei una CloudFront distribuzione.

**Topics**
+ [

## Prerequisiti
](#GettingStartedSignup)
+ [

## Crea un bucket Amazon S3
](#GettingStartedCreateBucket)
+ [

## Caricamento dei contenuti nel bucket
](#GettingStartedUploadContent)
+ [

## Crea una CloudFront distribuzione che utilizzi un'origine Amazon S3 con OAC
](#GettingStartedCreateDistribution)
+ [

## Accedi ai tuoi contenuti tramite CloudFront
](#GettingStartedAccessingDistributions)
+ [

## Eliminazione
](#GettingStartedDistributionCleanup)
+ [

## Miglioramento della distribuzione di base
](#GettingStartedDistributionNotes)

## Prerequisiti
<a name="GettingStartedSignup"></a>

Prima di iniziare, assicurati di aver completato le fasi in [Configura il tuo Account AWS](setting-up-cloudfront.md).

## Crea un bucket Amazon S3
<a name="GettingStartedCreateBucket"></a>

Un bucket Amazon S3 è un contenitore per file (oggetti) o cartelle. CloudFront può distribuire quasi tutti i tipi di file per te quando la fonte è un bucket S3. Ad esempio, CloudFront può distribuire testo, immagini e video. Non c'è un massimo per la quantità di dati che è possibile memorizzare in Amazon S3.

Per questo tutorial, viene creato un bucket S3 con i file di esempio `hello world` forniti, che verranno utilizzati per creare una pagina web di base.

**Per creare un bucket**

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Ti consigliamo di utilizzare il nostro esempio Hello world per questa Guida introduttiva. [Scarica la pagina web di *Hello World*: hello-world-html .zip.](samples/hello-world-html.zip) Decomprimila e salva la cartella `css` e il file `index` in una posizione conveniente, ad esempio sul desktop su cui stai eseguendo il browser.

1. Seleziona **Crea bucket**.

1. Inserisci un **Nome bucket** univoco conforme alle [Regole di denominazione dei bucket per uso generale](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html#general-purpose-bucket-names) nella *Guida per l’utente di Amazon Simple Storage Service*.

1. Per **Regione**, ti consigliamo di scegliere una Regione AWS che sia geograficamente vicina a te. Questo riduce la latenza e i costi.
   + Anche la scelta di una Regione diversa funziona. Ad esempio, per soddisfare i requisiti normativi.

1. Lascia tutte le altre impostazioni con i valori predefiniti, quindi seleziona **Crea bucket**.

## Caricamento dei contenuti nel bucket
<a name="GettingStartedUploadContent"></a>

Dopo aver creato il bucket Amazon S3, carica il contenuto del file `hello world` decompresso. Hai scaricato e decompresso questo file in [Crea un bucket Amazon S3](#GettingStartedCreateBucket).

**Per caricare i contenuti su Amazon S3**

1. Nella sezione **Bucket per uso generico**, scegli il nome del nuovo bucket.

1. Scegli **Carica**.

1. Nella pagina **Carica**, trascina la cartella `css` e il file `index` nell’area di rilascio.

1. Lascia tutte le altre impostazioni con i valori predefiniti, quindi seleziona **Carica**.

## Crea una CloudFront distribuzione che utilizzi un'origine Amazon S3 con OAC
<a name="GettingStartedCreateDistribution"></a>

In questo tutorial, creerai una CloudFront distribuzione che utilizza un'origine Amazon S3 con controllo dell'accesso all'origine (OAC). OAC consente di inviare in modo sicuro richieste autenticate all’origine Amazon S3. Per ulteriori informazioni su OAC, consulta [Limitazione dell’accesso a un’origine Amazon S3](private-content-restricting-access-to-s3.md).<a name="GettingStartedCreateDistributionProcedure"></a>

**Per creare una CloudFront distribuzione con un'origine Amazon S3 che utilizza OAC**

1. Apri la CloudFront console all'indirizzo. [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)

1. Scegli **Create Distribution** (Crea distribuzione).

1. Immetti un **Nome della distribuzione** per la distribuzione standard. Il nome verrà visualizzato come valore per la chiave `Name` come un tag. Puoi modificare questo valore in un secondo momento. Puoi aggiungere fino a 50 tag per la distribuzione standard. Per ulteriori informazioni, consulta [Tagging di una distribuzione](tagging.md).

1. Scegli **Singolo sito web o app**, **Avanti**.

1. Scegli **Next (Successivo)**.

1. Per la pagina **Tipo di origine**, seleziona **Amazon S3**.

1. Per **Origine S3**, scegli **Sfoglia S3** e seleziona il bucket S3 creato per questo tutorial.

1. Per **Impostazioni**, scegli **Usa le impostazioni di origine consigliate**. CloudFront utilizzerà le impostazioni predefinite di cache e origine consigliate per l'origine Amazon S3, inclusa la configurazione di Origin Access Control (OAC). Per ulteriori informazioni sulle impostazioni consigliate, consulta [Riferimento alle impostazioni di distribuzione preconfigurate](template-preconfigured-origin-settings.md).

1. Scegli **Next (Successivo)**.

1. Nella pagina **Abilita le protezioni di sicurezza**, scegli se abilitare AWS WAF le protezioni di sicurezza.

1. Scegli **Next (Successivo)**.

1. Scegli **Crea** distribuzione. CloudFront aggiorna la policy sui bucket S3 per te.

1. Esamina la sezione **Dettagli** per la nuova distribuzione. Quando la distribuzione è stata completata, il campo **Ultima modifica** cambia da **Implementazione in corso** a una data e un’ora.

1. Registra il nome di dominio CloudFront assegnato alla tua distribuzione. Avrà un aspetto simile al seguente: `d111111abcdef8.cloudfront.net`.

Prima di utilizzare la distribuzione e il bucket S3 di questo tutorial in un ambiente di produzione, assicurati di configurarli per soddisfare le esigenze specifiche. Per informazioni sulla configurazione dell’accesso in un ambiente di produzione, consulta [Configurazione dell’accesso sicuro e restrizione dell’accesso ai contenuti](SecurityAndPrivateContent.md).

## Accedi ai tuoi contenuti tramite CloudFront
<a name="GettingStartedAccessingDistributions"></a>

Per accedere ai tuoi contenuti CloudFront, combina il nome di dominio utilizzato per la CloudFront distribuzione con la pagina principale dei tuoi contenuti. Hai registrato il nome del dominio di distribuzione in [Crea una CloudFront distribuzione che utilizzi un'origine Amazon S3 con OAC](#GettingStartedCreateDistribution).
+ Il nome di dominio di distribuzione potrebbe essere simile al seguente: `d111111abcdef8.cloudfront.net`.
+  Il percorso verso la pagina principale di un sito Web è in genere`/index.html`. 

Pertanto, l'URL tramite cui accedere ai tuoi contenuti CloudFront potrebbe essere simile al seguente:

`https://d111111abcdef8.cloudfront.net/index.html`.

Se hai seguito i passaggi precedenti e hai utilizzato la pagina web *hello world*, dovresti vedere una pagina web con la scritta **Hello world\$1**.

Quando carichi più contenuti in questo bucket S3, puoi accedervi CloudFront combinando il nome del dominio di CloudFront distribuzione con il percorso dell'oggetto nel bucket S3. Ad esempio, se carichi un nuovo file denominato `new-page.html` nella root del bucket S3, l'URL è simile al seguente:

`https://d111111abcdef8.cloudfront.net/new-page.html`.

## Eliminazione
<a name="GettingStartedDistributionCleanup"></a>

Se hai creato la distribuzione e il bucket S3 solo a scopo didattico, eliminali in modo da non incorrere in ulteriori costi. Elimina prima la distribuzione. Per ulteriori informazioni, consulta i collegamenti seguenti:
+ [Eliminazione di una distribuzione](HowToDeleteDistribution.md)
+ [Eliminazione di un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html)

## Miglioramento della distribuzione di base
<a name="GettingStartedDistributionNotes"></a>

Questo tutorial introduttivo fornisce un framework minimale per la creazione di una distribuzione. Consigliamo di esplorare i seguenti miglioramenti:
+ Puoi utilizzare la funzionalità dei contenuti CloudFront privati per limitare l'accesso ai contenuti nei bucket Amazon S3. Per ulteriori informazioni su come distribuire contenuti privati, consulta [Offri contenuti privati con cookie firmati URLs e firmati](PrivateContent.md).
+ Puoi configurare la tua CloudFront distribuzione per utilizzare un nome di dominio personalizzato (ad esempio, `www.example.com` anziché`d111111abcdef8.cloudfront.net`). Per ulteriori informazioni, consulta [Usa personalizzato URLs](CNAMEs.md).
+ Questo tutorial utilizza un’origine Amazon S3 con controllo di accesso origine (OAC). Tuttavia, non è possibile utilizzare OAC se l’origine è un bucket S3 configurato come [endpoint di un sito web](https://docs.aws.amazon.com/AmazonS3/latest/userguide/WebsiteEndpoints.html). In tal caso, devi configurare il bucket CloudFront come origine personalizzata. Per ulteriori informazioni, consulta [Utilizzo di un bucket Amazon S3 configurato come un endpoint del sito web](DownloadDistS3AndCustomOrigins.md#concept_S3Origin_website). Per ulteriori informazioni su OAC, consulta [Limitazione dell’accesso a un’origine Amazon S3](private-content-restricting-access-to-s3.md).

# Nozioni di base su una distribuzione standard (AWS CLI)
<a name="get-started-cli-tutorial"></a>

Le procedure in questa sezione mostrano come utilizzare AWS CLI with CloudFront per impostare una configurazione di base che prevede quanto segue:
+ Creazione di un bucket Amazon S3 da utilizzare come origine della distribuzione.
+ Archiviazione delle versioni originali degli oggetti nel bucket S3.
+ Utilizzo del controllo di accesso origine (OAC) per inviare richieste autenticate all’origine Amazon S3. OAC invia richieste CloudFront per impedire agli utenti di accedere direttamente al bucket S3. Per ulteriori informazioni su OAC, consulta [Limitazione dell’accesso a un’origine Amazon S3](private-content-restricting-access-to-s3.md).
+ Utilizzo del nome di CloudFront dominio URLs per gli oggetti (ad esempio,). `https://d111111abcdef8.cloudfront.net/index.html`
+ Mantenete gli oggetti in posizioni CloudFront periferiche per la durata predefinita di 24 ore (la durata minima è 0 secondi).

La maggior parte delle opzioni è personalizzabile. Per informazioni su come personalizzare le opzioni di distribuzione CloudFront , consulta [Creazione di una distribuzione](distribution-web-creating-console.md).

## Prerequisiti
<a name="get-started-cli-prereqs"></a>

Prima di iniziare, assicurati di aver completato le fasi in [Configura il tuo Account AWS](setting-up-cloudfront.md).

Installalo AWS CLI e configuralo con le tue credenziali. Per ulteriori informazioni, consulta [Nozioni di base su AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) nella *Guida per l’utente di AWS CLI *.



## Crea un bucket Amazon S3
<a name="get-started-cli-create-bucket"></a>

Un bucket Amazon S3 è un contenitore per file (oggetti) o cartelle. CloudFront può distribuire quasi tutti i tipi di file per te quando la fonte è un bucket S3. Ad esempio, CloudFront può distribuire testo, immagini e video. Non c'è un massimo per la quantità di dati che è possibile memorizzare in Amazon S3.

Per questo tutorial, verrà creato un bucket S3 e caricato un file HTML da utilizzare per creare una pagina web di base.

```
aws s3 mb s3://amzn-s3-demo-bucket/ --region us-east-1
```

*amzn-s3-demo-bucket*Sostituiscilo con un nome di bucket univoco a livello globale. Per questo Regione AWS, ti consigliamo di scegliere una regione geograficamente vicina a te. In questo modo si riducono la latenza e i costi, ma anche la scelta di una Regione diversa funziona. Ad esempio, puoi eseguire questa operazione per soddisfare i requisiti normativi.

## Caricamento dei contenuti nel bucket
<a name="get-started-cli-upload-content"></a>

Per questo tutorial, scarica ed estrai i file di contenuto di esempio per una pagina web di base “Hello World”.

```
# Create a temporary directory
mkdir -p ~/cloudfront-demo

# Download the sample Hello World files
curl -o ~/cloudfront-demo/hello-world-html.zip https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/samples/hello-world-html.zip

# Extract the zip file
unzip ~/cloudfront-demo/hello-world-html.zip -d ~/cloudfront-demo/hello-world
```

Viene creata una directory con un file `index.html` e una cartella `css`. Carica questi file nel bucket S3.

```
aws s3 cp ~/cloudfront-demo/hello-world/ s3://amzn-s3-demo-bucket/ --recursive
```

## Creazione di un controllo di accesso origine (OAC)
<a name="get-started-cli-create-oac"></a>

Per questo tutorial, verrà creato un controllo di accesso origine (OAC). OAC consente di inviare in modo sicuro richieste autenticate all’origine Amazon S3. Per ulteriori informazioni su OAC, consulta [Limitazione dell’accesso a un’origine Amazon S3](private-content-restricting-access-to-s3.md).

```
aws cloudfront create-origin-access-control \
    --origin-access-control-config Name="oac-for-s3",SigningProtocol=sigv4,SigningBehavior=always,OriginAccessControlOriginType=s3
```

Salva l’ID OAC dall’output come una variabile di ambiente. Sostituisci i valori di esempio con l’ID OAC. Verrà utilizzato nella fase successiva.

```
OAC_ID="E1ABCD2EFGHIJ"
```

## Creazione di una distribuzione standard
<a name="get-started-cli-create-classic"></a>

Crea un file di configurazione della distribuzione denominato `distribution-config.json`. Sostituisci il nome del bucket di esempio con il nome del bucket per i valori `Id`, `DomainName`, e `TargetOriginId`.

```
cat > distribution-config.json << EOF
{
    "CallerReference": "cli-example-$(date +%s)",
    "Origins": {
        "Quantity": 1,
        "Items": [
            {
                "Id": "S3-amzn-s3-demo-bucket",
                "DomainName": "amzn-s3-demo-bucket.s3.amazonaws.com",
                "S3OriginConfig": {
                    "OriginAccessIdentity": ""
                },
                "OriginAccessControlId": "$OAC_ID"
            }
        ]
    },
    "DefaultCacheBehavior": {
        "TargetOriginId": "S3-amzn-s3-demo-bucket",
        "ViewerProtocolPolicy": "redirect-to-https",
        "AllowedMethods": {
            "Quantity": 2,
            "Items": ["GET", "HEAD"],
            "CachedMethods": {
                "Quantity": 2,
                "Items": ["GET", "HEAD"]
            }
        },
        "DefaultTTL": 86400,
        "MinTTL": 0,
        "MaxTTL": 31536000,
        "Compress": true,
        "ForwardedValues": {
            "QueryString": false,
            "Cookies": {
                "Forward": "none"
            }
        }
    },
    "Comment": "CloudFront distribution for S3 bucket",
    "Enabled": true
}
EOF
```

Crea una distribuzione standard.

```
aws cloudfront create-distribution --distribution-config file://distribution-config.json
```

Salva l’ID distribuzione e il nome di dominio dell’output come variabili di ambiente. Sostituire i valori di esempio con i propri valori. Verranno utilizzati più avanti in questo tutorial.

```
DISTRIBUTION_ID="EABCD1234XMPL"
DOMAIN_NAME="d111111abcdef8.cloudfront.net"
```

Prima di utilizzare la distribuzione e il bucket S3 di questo tutorial in un ambiente di produzione, assicurati di configurarli per soddisfare le esigenze specifiche. Per informazioni sulla configurazione dell’accesso in un ambiente di produzione, consulta [Configurazione dell’accesso sicuro e restrizione dell’accesso ai contenuti](SecurityAndPrivateContent.md).

## Aggiornamento della policy di bucket S3
<a name="get-started-cli-update-bucket-policy"></a>

Aggiorna la policy del bucket S3 per consentire l'accesso CloudFront agli oggetti. Sostituisci il nome bucket di esempio con il nome bucket.

```
# Get your AWS account ID
ACCOUNT_ID=$(aws sts get-caller-identity --query 'Account' --output text)

# Create the bucket policy
cat > bucket-policy.json << EOF
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCloudFrontServicePrincipal",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudfront.amazonaws.com"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*",
            "Condition": {
                "StringEquals": {
                    "AWS:SourceArn": "arn:aws:cloudfront::$ACCOUNT_ID:distribution/$DISTRIBUTION_ID"
                }
            }
        }
    ]
}
EOF

# Apply the bucket policy
aws s3api put-bucket-policy \
    --bucket amzn-s3-demo-bucket \
    --policy file://bucket-policy.json
```

## Conferma dell’implementazione della distribuzione
<a name="get-started-cli-confirm-deployment"></a>

Dopo aver creato la distribuzione, occorrerà un po’ di tempo per completarne l’implementazione. Quando lo stato della distribuzione cambia da `InProgress` a `Deployed`, esegui la fase successiva.

```
aws cloudfront get-distribution --id $DISTRIBUTION_ID --query 'Distribution.Status'
```

In alternativa, puoi utilizzare il comando `wait` per attendere l’implementazione della distribuzione.

```
aws cloudfront wait distribution-deployed --id $DISTRIBUTION_ID
```

## Accedi ai tuoi contenuti tramite CloudFront
<a name="get-started-cli-access-content"></a>

Per accedere ai tuoi contenuti CloudFront, combina il nome di dominio utilizzato per la CloudFront distribuzione con la pagina principale dei tuoi contenuti. Sostituisci il nome di CloudFront dominio di esempio con il tuo.

```
https://d111111abcdef8.cloudfront.net/index.html
```

Se hai seguito i passaggi precedenti e creato il file HTML, dovresti vedere una pagina web con la scritta **Hello world\$1**.

Quando carichi più contenuti in questo bucket S3, puoi accedervi CloudFront combinando il nome del dominio di CloudFront distribuzione con il percorso dell'oggetto nel bucket S3. Ad esempio, se carichi un nuovo file denominato `new-page.html` nella root del bucket S3, l'URL è simile al seguente:

`https://d111111abcdef8.cloudfront.net/new-page.html`.

## Eliminazione
<a name="get-started-cli-cleanup"></a>

Se hai creato la distribuzione e il bucket S3 solo a scopo didattico, eliminali in modo da non incorrere in ulteriori costi. Disabilita ed elimina prima la distribuzione.

**Come disabilitare ed eliminare una distribuzione standard (AWS CLI)**

1. Innanzitutto, disabilita la distribuzione.

   ```
   # Get the current configuration and ETag
   ETAG=$(aws cloudfront get-distribution-config --id $DISTRIBUTION_ID --query 'ETag' --output text)
   
   # Create a modified configuration with Enabled=false
   aws cloudfront get-distribution-config --id $DISTRIBUTION_ID | \
   jq '.DistributionConfig.Enabled = false' > temp_disabled_config.json
   
   # Update the distribution to disable it
   aws cloudfront update-distribution \
       --id $DISTRIBUTION_ID \
       --distribution-config file://<(jq '.DistributionConfig' temp_disabled_config.json) \
       --if-match $ETAG
   ```

1. Attendi che la distribuzione venga disabilitata.

   ```
   aws cloudfront wait distribution-deployed --id $DISTRIBUTION_ID
   ```

1. Elimina la distribuzione.

   ```
   # Get the current ETag
   ETAG=$(aws cloudfront get-distribution-config --id $DISTRIBUTION_ID --query 'ETag' --output text)
   
   # Delete the distribution
   aws cloudfront delete-distribution --id $DISTRIBUTION_ID --if-match $ETAG
   ```

**Come eliminare un bucket S3 (AWS CLI)**
+ Elimina il bucket S3 e il relativo contenuto. Sostituisci il nome bucket di esempio con quello personalizzato.

  ```
  # Delete the bucket contents
  aws s3 rm s3://amzn-s3-demo-bucket --recursive
  
  # Delete the bucket
  aws s3 rb s3://amzn-s3-demo-bucket
  ```

Per pulire i file locali creati per questo tutorial, esegui i seguenti comandi:

```
# Clean up local files
rm -f distribution-config.json bucket-policy.json temp_disabled_config.json
rm -rf ~/cloudfront-demo
```

Facoltativamente, puoi eliminare l’OAC creato per questo tutorial.

```
# Get the OAC ETag
OAC_ETAG=$(aws cloudfront get-origin-access-control --id $OAC_ID --query 'ETag' --output text)

# Delete the OAC
aws cloudfront delete-origin-access-control --id $OAC_ID --if-match $OAC_ETAG
```

# Nozioni di base sull’utilizzo di un sito web statico sicuro
<a name="getting-started-secure-static-website-cloudformation-template"></a>

Puoi iniziare a usare Amazon CloudFront utilizzando la soluzione descritta in questo argomento per creare un sito Web statico sicuro per il tuo nome di dominio. Un *sito Web statico* utilizza solo file statici, come HTML, CSS, immagini e video JavaScript, e non necessita di server o di elaborazione lato server. Con questa soluzione, il tuo sito web ottiene i seguenti vantaggi:
+ **Utilizza lo storage durevole di [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)**: questa soluzione crea un bucket Amazon S3 per ospitare i contenuti del tuo sito Web statico. Per aggiornare il tuo sito web, basta caricare i nuovi file nel bucket S3.
+ **È velocizzato dalla rete di distribuzione CloudFront dei contenuti di Amazon**: questa soluzione crea una CloudFront distribuzione per servire il tuo sito Web agli spettatori con bassa latenza. La distribuzione è configurata con [Origin Access Control](private-content-restricting-access-to-s3.md) (OAC) per garantire che il sito Web sia accessibile solo tramite CloudFront, non direttamente da S3.
+ **È protetto da HTTPS e intestazioni di sicurezza**: questa soluzione crea un SSL/TLS certificato in [AWS Certificate Manager (ACM)](https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) e lo allega alla distribuzione. CloudFront Questo certificato consente alla distribuzione di servire il sito Web del dominio in modo sicuro con HTTPS.
+ **È configurato e distribuito con [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)**: Questa soluzione utilizza un CloudFormation modello per configurare tutti i componenti, in modo da poterti concentrare maggiormente sui contenuti del tuo sito Web e meno sulla configurazione dei componenti.

Questa soluzione è open source su. GitHub Per visualizzare il codice, inviare una richiesta pull o aprire un problema, andare su [https://github.com/aws-samples/amazon-cloudfront-secure-static-site](https://github.com/aws-samples/amazon-cloudfront-secure-static-site).

**Topics**
+ [

## Panoramica della soluzione
](#cloudformation-website-overview)
+ [

## Implementazione della soluzione
](#deploy-secure-static-website-cloudformation)

## Panoramica della soluzione
<a name="cloudformation-website-overview"></a>

Il diagramma seguente mostra una panoramica del funzionamento di questa soluzione per siti Web statici:

![\[Diagramma generale di un sito Web statico sicuro con CloudFront\]](http://docs.aws.amazon.com/it_it/AmazonCloudFront/latest/DeveloperGuide/images/cloudfront-secure-static-website-overview-github.png)


1. Il visualizzatore richiede il sito web all'indirizzo www.example.com.

1. Se l'oggetto richiesto è memorizzato nella cache, CloudFront restituisce l'oggetto dalla sua cache al visualizzatore.

1. Se l'oggetto non è nella CloudFront cache, lo CloudFront richiede dall'origine (un bucket S3).

1. S3 restituisce l'oggetto a. CloudFront

1. CloudFront memorizza l'oggetto nella cache.

1. Gli oggetti vengono restituiti al visualizzatore. Le richieste successive per l'oggetto che arrivano alla stessa CloudFront edge location vengono servite dalla CloudFront cache.

## Implementazione della soluzione
<a name="deploy-secure-static-website-cloudformation"></a>

Per distribuire questa soluzione per siti Web statici protetti, è possibile scegliere una delle seguenti opzioni:
+ Utilizza la CloudFormation console per distribuire la soluzione con contenuti predefiniti, quindi carica i contenuti del tuo sito Web su Amazon S3.
+ Clona la soluzione sul tuo computer per aggiungere il contenuto del tuo sito web. Quindi, distribuire la soluzione con AWS Command Line Interface (AWS CLI).

**Nota**  
È necessario utilizzare la regione Stati Uniti orientali (Virginia settentrionale) per distribuire il modello. CloudFormation 

**Topics**
+ [

### Prerequisiti
](#deploy-website-cloudformation-prerequisites)
+ [

### Usa la CloudFormation console
](#deploy-website-cloudformation-console)
+ [

### Clonazione locale della soluzione
](#deploy-website-cloudformation-clone)
+ [

### Ricerca dei log di accesso
](#deploy-website-cloudformation-logs)

### Prerequisiti
<a name="deploy-website-cloudformation-prerequisites"></a>

Per utilizzare questa soluzione, è necessario disporre dei seguenti prerequisiti:
+ Nome di dominio registrato, ad esempio example.com, che punta a una zona Amazon Route 53 ospitata. La zona ospitata deve trovarsi nello stesso Account AWS in cui si implementa questa soluzione. Se non si dispone di un nome di dominio registrato, è possibile [registrarne uno con Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html). Se si dispone di un nome di dominio registrato ma non è puntato a una zona Route 53 ospitata, [configurare Route 53 come servizio DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring.html).
+ AWS Identity and Access Management Autorizzazioni (IAM) per avviare CloudFormation modelli che creano ruoli IAM e autorizzazioni per creare tutte le AWS risorse della soluzione. Per ulteriori informazioni, consulta [Controllo dell’accesso con AWS Identity and Access Management](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) nella *Guida per l’utente di AWS CloudFormation *.

L'utente è responsabile dei costi sostenuti durante l'utilizzo di questa soluzione. Per ulteriori informazioni sui costi, consulta [le relative pagine dei prezzi](https://aws.amazon.com/pricing/). Servizio AWS

### Usa la CloudFormation console
<a name="deploy-website-cloudformation-console"></a>

**Da distribuire utilizzando la console CloudFormation**

1. [Avvia questa soluzione nella CloudFormation console](https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/new?stackName=amazon-cloudfront-secure-static-site-templates-main&templateURL=https://s3.amazonaws.com/solution-builders-us-east-1/amazon-cloudfront-secure-static-site/latest/main.yaml). Se necessario, accedi al tuo Account AWS.

1. La procedura guidata **Create stack** si apre nella CloudFormation console, con campi precompilati che specificano il modello di questa soluzione. CloudFormation

   Nella parte inferiore della pagina scegli **Next** (Avanti).

1. Nella pagina **Specificare i dettagli dello stack** immettere i valori per i campi riportati di seguito.
   + **SubDomain**— Inserisci il sottodominio da utilizzare per il tuo sito web. Ad esempio, se il sottodominio è *www*, il tuo sito web è disponibile all'indirizzo *www.example.com.* (Sostituisci example.com con il tuo nome di dominio, come spiegato nel seguente bullet).
   + **DomainName**— Inserisci il tuo nome di dominio, ad esempio. *example.com* Questo dominio deve essere puntato a una zona Route 53 ospitata.
   + **HostedZoneId**— L'ID della zona ospitata sulla Route 53 del tuo nome di dominio.
   + **CreateApex**— (Facoltativo) Crea un alias per l'apex del dominio (example.com) nella tua configurazione. CloudFront

1. Al termine, scegli **Apply (Applica)**.

1. (Facoltativo) Nella pagina **Configura opzioni stack**, [aggiungere tag e altre opzioni di stack](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html).

1. Al termine, scegli **Apply (Applica)**.

1. Nella pagina **Revisione** scorrere fino alla fine della pagina, quindi selezionare le due caselle nella sezione **Funzionalità**. Queste funzionalità consentono di CloudFormation creare un ruolo IAM che consente l'accesso alle risorse dello stack e di denominare le risorse in modo dinamico.

1. Scegli **Crea stack**.

1. Attendi che lo stack termini la creazione. Lo stack crea alcuni stack nidificati e il completamento di questa operazione può richiedere alcuni minuti. Al termine, lo **stato** viene modificato in **CREATE\$1COMPLETE**.

   Quando lo stato è **CREATE\$1COMPLETE**, vai su https://*www.example.com*per visualizzare il tuo sito web (sostituisci www.example.com con il sottodominio e il nome di dominio che hai specificato nel passaggio 3). Dovresti vedere il contenuto predefinito del sito Web:  
![\[Contenuto predefinito del sito Web statico di questa soluzione. Dice: “Sono un sito web statico!”\]](http://docs.aws.amazon.com/it_it/AmazonCloudFront/latest/DeveloperGuide/images/cloudfront-secure-static-website-content.png)

**Per sostituire il contenuto predefinito del sito Web con il proprio**

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

1. Scegli il bucket il cui nome inizia con **amazon-cloudfront-secure-static-site-s3bucketroot-**.
**Nota**  
Assicurati di scegliere il bucket con **s3bucketroot** nel suo nome, non **s3bucketlogs**. Il bucket con **s3bucketroot** nel suo nome contiene il contenuto del sito web. Quello con **s3bucketlogs** contiene solo file di log.

1. Elimina il contenuto predefinito del sito Web, quindi carica il tuo.
**Nota**  
Se hai visualizzato il tuo sito Web con il contenuto predefinito di questa soluzione, è probabile che parte del contenuto predefinito sia memorizzato nella cache in una posizione periferica. CloudFront Per assicurarti che gli spettatori vedano i contenuti aggiornati del tuo sito web, *invalida i file per rimuovere le copie memorizzate* nella cache dalle edge location. CloudFront Per ulteriori informazioni, consulta [Invalidare i file per rimuovere il contenuto](Invalidation.md).

### Clonazione locale della soluzione
<a name="deploy-website-cloudformation-clone"></a>

**Prerequisiti**

Per aggiungere il contenuto del sito Web prima di distribuire questa soluzione, è necessario creare un pacchetto locale degli artefatti della soluzione, che richiede Node.js e npm. Per ulteriori informazioni, consulta [https://www.npmjs.com/get-npm](https://www.npmjs.com/get-npm).

**Per aggiungere il contenuto del sito Web e distribuire la soluzione**

1. Clona o scarica la soluzione da [https://github.com/aws-samples/amazon-cloudfront-secure-static-site](https://github.com/aws-samples/amazon-cloudfront-secure-static-site). Dopo averlo clonato o scaricato, aprire un prompt dei comandi o un terminale e passare alla cartella `amazon-cloudfront-secure-static-site`.

1. Eseguire il comando seguente per installare e creare il pacchetto degli artefatti della soluzione:

   ```
   make package-static
   ```

1. Copiare il contenuto del sito Web nella cartella `www`, sovrascrivendo il contenuto predefinito del sito Web.

1. Esegui il AWS CLI comando seguente per creare un bucket Amazon S3 per archiviare gli artefatti della soluzione. Sostituiscilo *amzn-s3-demo-bucket-for-artifacts* con il tuo nome di bucket.

   ```
   aws s3 mb s3://amzn-s3-demo-bucket-for-artifacts --region us-east-1
   ```

1. Esegui il AWS CLI comando seguente per impacchettare gli artefatti della soluzione come modello. CloudFormation Sostituiscilo *amzn-s3-demo-bucket-for-artifacts* con il nome del bucket creato nel passaggio precedente.

   ```
   aws cloudformation package \
       --region us-east-1 \ 
       --template-file templates/main.yaml \
       --s3-bucket amzn-s3-demo-bucket-for-artifacts \
       --output-template-file packaged.template
   ```

1. Esegui il comando seguente per distribuire la soluzione con CloudFormation, sostituendo i seguenti valori:
   + *your-CloudFormation-stack-name*— Sostituisci con un nome per lo CloudFormation stack.
   + *example.com*— Sostituiscilo con il tuo nome di dominio. Questo dominio deve essere indirizzato a una zona ospitata Route 53 nello stesso Account AWS.
   + *www*— Sostituiscilo con il sottodominio da utilizzare per il tuo sito web. Ad esempio, se il sottodominio è *www*, il tuo sito web è disponibile all'indirizzo www.example.com.
   + *hosted-zone-ID*— Sostituisci con l'ID della zona ospitata Route 53 del tuo nome di dominio.

   ```
   aws cloudformation deploy \
       --region us-east-1 \
       --stack-name your-CloudFormation-stack-name \
       --template-file packaged.template \
       --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND \
       --parameter-overrides DomainName=example.com SubDomain=www HostedZoneId=hosted-zone-ID
   ```

   1. (Facoltativo) Per implementare lo stack con un apex di dominio, eseguire invece il comando seguente.

     ```
     aws --region us-east-1 cloudformation deploy \
         --stack-name your-CloudFormation-stack-name \
         --template-file packaged.template \
         --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND \
         --parameter-overrides  DomainName=example.com SubDomain=www HostedZoneId=hosted-zone-ID CreateApex=yes
     ```

1. Attendi che lo CloudFormation stack finisca di creare. Lo stack crea alcuni stack nidificati e il completamento di questa operazione può richiedere alcuni minuti. Al termine, lo **stato** viene modificato in **CREATE\$1COMPLETE**.

   Quando lo stato cambia in **CREATE\$1COMPLETE**, vai https://www.example.com a visualizzare il tuo sito web (sostituisci www.example.com con il sottodominio e il nome di dominio che hai specificato nel passaggio precedente). Dovresti vedere il contenuto del tuo sito web.

### Ricerca dei log di accesso
<a name="deploy-website-cloudformation-logs"></a>

Questa soluzione abilita [i registri di accesso](AccessLogs.md) per la distribuzione CloudFront. Per individuare i registri di accesso della distribuzione, completare la procedura seguente.

**Per individuare i registri di accesso della distribuzione**

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

1. Scegli il bucket il cui nome inizia con **amazon-cloudfront-secure-static-site-s3bucketlogs-**.
**Nota**  
Assicurarsi di scegliere il bucket con **s3bucketlogs** nel suo nome, non **s3bucketroot**. Il bucket con **s3bucketlogs** nel suo nome contiene file di registro. Quello con **s3bucketroot** contiene il contenuto del sito web.

1. **La cartella denominata cdn contiene i log di accesso.** CloudFront 