

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

# Controllo delle richieste di origine con una policy
<a name="controlling-origin-requests"></a>

Quando una richiesta di un CloudFront visualizzatore causa una *perdita nella cache* (l'oggetto richiesto non viene memorizzato nella cache dell'edge location), CloudFront invia una richiesta all'origine per recuperare l'oggetto. Questo è chiamata una *richiesta di origine*. La richiesta di origine include sempre le seguenti informazioni dalla richiesta del visualizzatore:
+ Il percorso URL (solo il percorso, senza stringhe di query URL o il nome di dominio)
+ Il corpo della richiesta (se ce n'è uno)
+ Le intestazioni HTTP che includono CloudFront automaticamente in ogni richiesta di origine, tra cui`Host`, e `User-Agent` `X-Amz-Cf-Id`

Altre informazioni dalla richiesta del visualizzatore, ad esempio stringhe di query URL, intestazioni HTTP e cookie, non sono incluse nella richiesta di origine per impostazione predefinita. (Eccezione: con le impostazioni della cache legacy, CloudFront per impostazione predefinita inoltra le intestazioni all'origine.) Tuttavia, potresti voler ricevere alcune di queste altre informazioni all'origine, ad esempio per raccogliere dati per analisi o telemetria. È possibile utilizzare una *policy di richiesta origine* per controllare le informazioni incluse in una richiesta di origine. 

Le policy di richiesta origine sono separate dalle [policy della cache](controlling-the-cache-key.md), che controllano la chiave della cache. In questo modo, è possibile ricevere informazioni aggiuntive all’origine e di mantenere anche una buona *percentuale di riscontri nella cache* (la percentuale di richieste visualizzatore che si traducono in un riscontro nella cache). È possibile eseguire questa operazione controllando separatamente quali informazioni sono incluse nelle richieste di origine (utilizzando la policy di richiesta origine) e quali sono incluse nella chiave cache (utilizzando la policy della cache).

Sebbene i due tipi di policy siano separati, sono correlati. Tutte le stringhe di query URL, le intestazioni HTTP e i cookie inclusi nella chiave della cache (utilizzando una policy della cache) vengono automaticamente inclusi nelle richieste di origine. Utilizzare la policy di richiesta origine per specificare le informazioni che si desidera includere nelle richieste di origine, ma *non* includere nella chiave cache. Proprio come una politica di cache, si collega una politica di richiesta di origine a uno o più comportamenti della cache in una distribuzione. CloudFront 

Inoltre, è possibile utilizzare una policy di richiesta origine per aggiungere ulteriori intestazioni HTTP a una richiesta di origine che non sono state incluse nella richiesta del visualizzatore. Queste intestazioni aggiuntive vengono aggiunte CloudFront prima di inviare la richiesta di origine, con valori di intestazione determinati automaticamente in base alla richiesta del visualizzatore. Per ulteriori informazioni, consulta [Aggiungi intestazioni CloudFront di richiesta](adding-cloudfront-headers.md).

**Topics**
+ [Comprendere le policy relative alle richieste di origine](origin-request-understand-origin-request-policy.md)
+ [Creazione di policy di richiesta origine](origin-request-create-origin-request-policy.md)
+ [Utilizzo delle policy di richiesta origine gestite](using-managed-origin-request-policies.md)
+ [Aggiungi intestazioni CloudFront di richiesta](adding-cloudfront-headers.md)
+ [Comprendere come interagiscono le policy di richiesta origine e le policy della cache](understanding-how-origin-request-policies-and-cache-policies-work-together.md)

# Comprendere le policy relative alle richieste di origine
<a name="origin-request-understand-origin-request-policy"></a>

CloudFront fornisce alcune politiche di richiesta di origine predefinite, note come *politiche gestite*, per casi d'uso comuni. È possibile utilizzare queste policy gestite oppure creare policy di richiesta di origine specifiche per le proprie esigenze. Per ulteriori informazioni sulle policy gestite, consulta [Utilizzo delle policy di richiesta origine gestite](using-managed-origin-request-policies.md).

Una policy di richiesta origine contiene le seguenti impostazioni, che sono categorizzate in *informazioni sulle policy* e *impostazioni della richiesta di origine*.

## Informazioni sulle policy
<a name="origin-request-understand-origin-request-policy-info"></a>

**Nome**  
Un nome per identificare la policy della richiesta di origine. Nella console, è possibile utilizzare il nome per collegare la policy di richiesta origine a un comportamento della cache.

**Descrizione**  
Un commento per descrivere la policy della richiesta di origine. Si tratta di un'opzione facoltativa.

## Impostazioni richiesta origine
<a name="origin-request-understand-origin-request-policy-settings"></a>

Le impostazioni delle richieste di origine specificano i valori nelle richieste dei visualizzatori incluse nelle richieste CloudFront inviate all'origine (note come richieste di origine). I valori possono includere stringhe di query URL, intestazioni HTTP e cookie. I valori specificati sono inclusi nelle richieste di origine, ma non sono inclusi nella chiave cache. Per informazioni sul controllo della chiave cache, consulta [Controllo della chiave della cache con una policy](controlling-the-cache-key.md).

**Headers**  
Le intestazioni HTTP nelle richieste dei visualizzatori CloudFront incluse nelle richieste di origine. Per le intestazioni puoi scegliere una delle seguenti impostazioni:  
+ **None (Nessuna)** – Le intestazioni HTTP nelle richieste del visualizzatore *non* sono incluse nelle richieste di origine.
+ **All viewer headers (Tutte le intestazioni del visualizzatore)** – Tutte le intestazioni HTTP nelle richieste del visualizzatore sono incluse nelle richieste di origine.
+ **Tutte le intestazioni dei visualizzatori e le seguenti CloudFront intestazioni**: tutte le intestazioni HTTP nelle richieste dei visualizzatori sono incluse nelle richieste di origine. Inoltre, specifichi quali CloudFront intestazioni desideri aggiungere alle richieste di origine. Per ulteriori informazioni sulle CloudFront intestazioni, consulta. [Aggiungi intestazioni CloudFront di richiesta](adding-cloudfront-headers.md)
+ **Includere le intestazioni seguenti** - Specificare quali intestazioni HTTP sono incluse nelle richieste di origine.
**Nota**  
Non specificare un'intestazione già inclusa nelle impostazioni **Intestazioni personalizzate origine**. Per ulteriori informazioni, consulta [Configura CloudFront per aggiungere intestazioni personalizzate alle richieste di origine](add-origin-custom-headers.md#add-origin-custom-headers-configure).
+ **Tutte le intestazioni visualizzatore eccetto** – Vengono specificate quali intestazioni HTTP ***non*** sono incluse nelle richieste origine. Tutte le altre intestazioni HTTP nelle richieste visualizzatore, tranne quelle specificate, sono incluse.
Quando si utilizzano le intestazioni **Tutti i visualizzatori e le seguenti intestazioni, Include le seguenti CloudFront intestazioni** **o Tutte le intestazioni dei visualizzatori** **tranne l'impostazione, si specificano le intestazioni** HTTP solo in base al nome dell'intestazione. CloudFront include l'intestazione completa, incluso il relativo valore, nelle richieste di origine.  
Quando utilizzi l'impostazione **All viewer `Host` header tranne l'impostazione per rimuovere l'intestazione** del visualizzatore, CloudFront aggiunge una nuova `Host` intestazione con il nome di dominio dell'origine alla richiesta di origine.

**Cookie**  
I cookie nelle richieste dei visualizzatori, CloudFront incluse le richieste di origine. Per i cookie puoi scegliere una delle seguenti impostazioni:  
+ **None (Nessuno)** – I cookie nelle richieste del visualizzatore *non* sono inclusi nelle richieste di origine.
+ **All (Tutti)** – I cookie nelle richieste del visualizzatore sono inclusi nelle richieste di origine.
+ **Includere i seguenti cookie** – Vengono specificati i cookie nelle richieste visualizzatore che vengono inclusi nelle richieste origine.
+ **Tutti i cookie tranne** – Vengono specificati i cookie nelle richieste visualizzatore che ***non*** vengono inclusi nelle richieste origine. Tutti gli altri cookie nelle richieste visualizzatore vengono inclusi.
Quando si utilizza l'impostazione **Includi i seguenti cookie** o **Tutti i cookie tranne** l'impostazione, si specificano i cookie solo in base al loro nome. CloudFront include il cookie completo, incluso il relativo valore, nelle richieste di origine.

**Stringhe di query**  
Le stringhe di query URL nelle richieste dei visualizzatori, CloudFront incluse nelle richieste di origine. Per le stringhe di query, è possibile scegliere una delle seguenti impostazioni:  
+ **None (Nessuna)** – Le stringhe di query nelle richieste del visualizzatore *non* sono incluse nelle richieste di origine.
+ **All (Tutte)** - Tutte le stringhe di query nelle richieste del visualizzatore sono incluse nelle richieste di origine.
+ **Includere le seguenti stringhe di query** – Vengono specificate le stringhe di query nelle richieste visualizzatore che vengono incluse nelle richieste origine.
+ **Tutte le stringhe di query eccetto** – Vengono specificate le stringhe di query nelle richieste visualizzatore che ***non*** vengono incluse nelle richieste origine. Tutte le altre stringhe di query vengono incluse.
Quando si utilizza l'impostazione **Includi le seguenti stringhe di query o Tutte le stringhe** **di query eccetto, si specificano** le stringhe di query solo in base al nome. CloudFront include la stringa di query completa, incluso il relativo valore, nelle richieste di origine.

# Creazione di policy di richiesta origine
<a name="origin-request-create-origin-request-policy"></a>

Puoi utilizzare una policy di richiesta di origine per controllare i valori (stringhe di query URL, intestazioni HTTP e cookie) inclusi nelle richieste CloudFront inviate all'origine. Puoi creare una policy di richiesta di origine nella CloudFront console, con AWS Command Line Interface (AWS CLI) o con l' CloudFront API.

Dopo aver creato una policy di richiesta di origine, la colleghi a uno o più comportamenti della cache in una CloudFront distribuzione.

Le policy di richiesta origine non sono obbligatorie. Quando a un comportamento della cache non è associata una policy di richiesta origine, la richiesta di origine include tutti i valori specificati nella [policy della cache](cache-key-understand-cache-policy.md), ma nulla di più.

**Nota**  
Per utilizzare una policy di richiesta origine, il comportamento della cache deve utilizzare anche una [policy della cache](controlling-the-cache-key.md). Non è possibile utilizzare una policy di richiesta origine in un comportamento della cache senza una policy della cache.

------
#### [ Console ]

**Per creare una policy di richiesta origine (console)**

1. Accedi Console di gestione AWS e apri la pagina **Policies** nella CloudFront console all'indirizzo[https://console.aws.amazon.com/cloudfront/v4/home?#/policies](https://console.aws.amazon.com/cloudfront/v4/home?#/policies).

1. Scegliere **Richiesta origine**, quindi scegliere **Crea policy richiesta origine**.

1. Scegliere l'impostazione desiderata per questa policy di richiesta origine. Per ulteriori informazioni, consulta [Comprendere le policy relative alle richieste di origine](origin-request-understand-origin-request-policy.md).

1. Al termine, scegli **Create (Crea)**.

Dopo aver creato una policy di richiesta origine, è possibile collegarla a un comportamento della cache.

**Allegare una policy di richiesta origine a una distribuzione esistente (console)**

1. Apri la pagina **Distribuzioni** nella CloudFront console all'indirizzo[https://console.aws.amazon.com/cloudfront/v4/home#/distributions](https://console.aws.amazon.com/cloudfront/v4/home#/distributions).

1. Scegli la distribuzione da aggiornare, quindi scegli la scheda **Comportamenti**.

1. Scegliere il comportamento della cache da aggiornare, quindi scegliere **Modifica**.

   In alternativa, per creare un nuovo comportamento della cache, scegliere **Crea comportamento**.

1. Per la **Chiave di cache e richiesta di origine**, assicurarsi che sia scelto **Policy di cache e policy di richiesta origine**.

1. Per **Policy richiesta origine**, scegliere la policy di richiesta origine da associare a questo comportamento della cache.

1. Scegli **Save changes (Salva modifiche)** nella parte inferiore della pagina.

**Allegare una policy di richiesta origine a una nuova distribuzione (console)**

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

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

1. Per la **Chiave di cache e richiesta di origine**, assicurarsi che sia scelto **Policy di cache e policy di richiesta origine**.

1. Per **Origin request policy** (Policy di richiesta di origine), scegliere la policy di richiesta di origine da associare al comportamento predefinito della cache di questa distribuzione.

1. Scegliere le impostazioni desiderate per l'origine, il comportamento predefinito della cache e altre impostazioni di distribuzione. Per ulteriori informazioni, consulta [Riferimento a tutte le impostazioni di distribuzione](distribution-web-values-specify.md).

1. Al termine, scegliere **Crea distribuzione**.

------
#### [ CLI ]

Per creare una policy di richiesta di origine con AWS Command Line Interface (AWS CLI), usa il **aws cloudfront create-origin-request-policy** comando. È possibile utilizzare un file di input per fornire i parametri di input del comando, anziché specificare ogni singolo parametro come input della riga di comando.

**Per creare una policy di richiesta origine (CLI con file di input)**

1. Utilizzare il comando seguente per creare un file denominato `origin-request-policy.yaml` che contiene tutti i parametri di input per il comando **create-origin-request-policy**.

   ```
   aws cloudfront create-origin-request-policy --generate-cli-skeleton yaml-input > origin-request-policy.yaml
   ```

1. Aprire il file `origin-request-policy.yaml` appena creato. Modificare il file per specificare le impostazioni delle policy di richiesta origine desiderate, quindi salvare il file. È possibile rimuovere i campi facoltativi dal file, ma non rimuovere i campi obbligatori.

   Per ulteriori informazioni sulle impostazioni delle policy di richiesta di origine, consulta [Comprendere le policy relative alle richieste di origine](origin-request-understand-origin-request-policy.md).

1. Utilizzare il comando seguente per creare la policy di richiesta origine utilizzando i parametri di input dal file `origin-request-policy.yaml`.

   ```
   aws cloudfront create-origin-request-policy --cli-input-yaml file://origin-request-policy.yaml
   ```

   Prendere nota del valore `Id` nell'output del comando. Questo è l'ID della policy di richiesta di origine ed è necessario per allegare la policy di richiesta di origine al comportamento della cache di una CloudFront distribuzione.

**Per allegare una policy di richiesta origine a una distribuzione esistente (CLI con file di input)**

1. Usa il comando seguente per salvare la configurazione di CloudFront distribuzione per la distribuzione che desideri aggiornare. Sostituisci *distribution\$1ID* con l'ID della distribuzione.

   ```
   aws cloudfront get-distribution-config --id distribution_ID --output yaml > dist-config.yaml
   ```

1. Aprire il file `dist-config.yaml` appena creato. Modificare il file, apportando le seguenti modifiche a ogni comportamento della cache che si sta aggiornando per utilizzare una policy di richiesta origine.
   + Nel comportamento della cache, aggiungere un campo denominato `OriginRequestPolicyId`. Per il valore del campo, utilizzare l'ID della policy di richiesta di origine annotato dopo aver creato la policy.
   + Rinominare il campo `ETag` in `IfMatch`, ma non modificare il valore del campo.

   Salvare il file al termine.

1. Utilizzare il comando seguente per aggiornare la distribuzione e utilizzare la policy di richiesta origine. Sostituisci *distribution\$1ID* con l'ID della distribuzione.

   ```
   aws cloudfront update-distribution --id distribution_ID --cli-input-yaml file://dist-config.yaml
   ```

**Per allegare una policy di richiesta origine a una nuova distribuzione (CLI con file di input)**

1. Utilizzare il comando seguente per creare un file denominato `distribution.yaml` che contiene tutti i parametri di input per il comando **create-distribution**.

   ```
   aws cloudfront create-distribution --generate-cli-skeleton yaml-input > distribution.yaml
   ```

1. Aprire il file `distribution.yaml` appena creato. Nel comportamento predefinito della cache, nel campo `OriginRequestPolicyId`, immettere l'ID della policy della richiesta origine annotato dopo la creazione della policy. Continuare a modificare il file per specificare le impostazioni di distribuzione desiderate, quindi salvare il file al termine.

   Per ulteriori informazioni sulle impostazioni di distribuzione, consulta [Riferimento a tutte le impostazioni di distribuzione](distribution-web-values-specify.md).

1. Utilizzare il comando seguente per creare la distribuzione utilizzando i parametri di input dal file `distribution.yaml`.

   ```
   aws cloudfront create-distribution --cli-input-yaml file://distribution.yaml
   ```

------
#### [ API ]

Per creare una policy di richiesta di origine con l' CloudFront API, usa [CreateOriginRequestPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateOriginRequestPolicy.html). Per ulteriori informazioni sui campi specificati in questa chiamata API, consulta [Comprendere le policy relative alle richieste di origine](origin-request-understand-origin-request-policy.md) la documentazione di riferimento sull'API per il tuo AWS SDK o altro client API.

Dopo aver creato una policy di richiesta origine, è possibile collegarla a un comportamento della cache, utilizzando una delle seguenti chiamate API:
+ Per collegarlo a un comportamento di cache in una distribuzione esistente, usa [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html).
+ Per collegarlo a un comportamento di cache in una nuova distribuzione, usa [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html).

Per entrambe queste chiamate API, fornire l'ID della policy di richiesta di origine nel campo `OriginRequestPolicyId`, all'interno di un comportamento della cache. Per ulteriori informazioni sugli altri campi specificati in queste chiamate API, consulta [Riferimento a tutte le impostazioni di distribuzione](distribution-web-values-specify.md) la documentazione di riferimento sull'API per il tuo AWS SDK o altro client API.

------

# Utilizzo delle policy di richiesta origine gestite
<a name="using-managed-origin-request-policies"></a>

CloudFront fornisce una serie di politiche gestite per le richieste di origine che puoi collegare a qualsiasi comportamento della cache della tua distribuzione. Con una policy di richiesta di origine gestita, non è necessario scrivere o gestire le proprie policy di richiesta origine. Le policy gestite utilizzano impostazioni ottimizzate per casi d'uso specifici.

Per utilizzare una policy di richiesta origine gestita, è necessario collegarla a un comportamento della cache nella distribuzione. Il processo è lo stesso di quando si crea una policy di richiesta origine, ma invece di crearne una nuova, è sufficiente allegare una delle policy di richiesta origine gestite. È possibile allegare la politica per nome (con la console) o per ID (con AWS CLI o SDKs). I nomi e IDs sono elencati nella sezione seguente.

Per ulteriori informazioni, consulta [Creazione di policy di richiesta origine](origin-request-create-origin-request-policy.md).

Negli argomenti seguenti vengono descritte le policy di richiesta di origine gestite che è possibile utilizzare.

**Topics**
+ [AllViewer](#managed-origin-request-policy-all-viewer)
+ [AllViewerAndCloudFrontHeaders-2022-06](#managed-origin-request-policy-all-viewer-and-cloudfront)
+ [AllViewerExceptHostHeader](#managed-origin-request-policy-all-viewer-except-host-header)
+ [CORS- CustomOrigin](#managed-origin-request-policy-cors-custom)
+ [CORS-S3Origin](#managed-origin-request-policy-cors-s3)
+ [Elementare- - MediaTailor PersonalizedManifests](#managed-origin-request-policy-mediatailor)
+ [HostHeaderOnly](#managed-origin-request-policy-host-header-only)
+ [UserAgentRefererHeaders](#managed-origin-request-policy-user-agent-referer)

## AllViewer
<a name="managed-origin-request-policy-all-viewer"></a>

[Visualizza questa politica nella CloudFront console](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/216adef6-5c7f-47e4-b989-5492eafa07d3)

Questa policy include tutti i valori (stringhe di query, intestazioni e cookie) della richiesta visualizzatore.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`216adef6-5c7f-47e4-b989-5492eafa07d3`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:** tutte le intestazioni nella richiesta del visualizzatore
+ **Cookie inclusi nelle richieste di origine:** Tutti
+ **Stringhe di query incluse nelle richieste di origine:** Tutte

## AllViewerAndCloudFrontHeaders-2022-06
<a name="managed-origin-request-policy-all-viewer-and-cloudfront"></a>

[Visualizza questa politica nella console CloudFront ](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/33f36d7e-f396-46d9-90e0-52428a34d9dc)

Questa politica include tutti i valori (intestazioni, cookie e stringhe di query) della richiesta del visualizzatore e tutte le [CloudFront intestazioni](adding-cloudfront-headers.md) rilasciate fino a giugno 2022 (le CloudFront intestazioni rilasciate dopo giugno 2022 non sono incluse).

Quando si utilizza CloudFormation, o l' CloudFront API AWS CLI, l'ID per questa policy è:

`33f36d7e-f396-46d9-90e0-52428a34d9dc`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:** tutte le intestazioni nella richiesta del visualizzatore e le seguenti CloudFront intestazioni:
  + `CloudFront-Forwarded-Proto`
  + `CloudFront-Is-Android-Viewer`
  + `CloudFront-Is-Desktop-Viewer`
  + `CloudFront-Is-IOS-Viewer`
  + `CloudFront-Is-Mobile-Viewer`
  + `CloudFront-Is-SmartTV-Viewer`
  + `CloudFront-Is-Tablet-Viewer`
  + `CloudFront-Viewer-Address`
  + `CloudFront-Viewer-ASN`
  + `CloudFront-Viewer-City`
  + `CloudFront-Viewer-Country`
  + `CloudFront-Viewer-Country-Name`
  + `CloudFront-Viewer-Country-Region`
  + `CloudFront-Viewer-Country-Region-Name`
  + `CloudFront-Viewer-Http-Version`
  + `CloudFront-Viewer-Latitude`
  + `CloudFront-Viewer-Longitude`
  + `CloudFront-Viewer-Metro-Code`
  + `CloudFront-Viewer-Postal-Code`
  + `CloudFront-Viewer-Time-Zone`
  + `CloudFront-Viewer-TLS`
+ **Cookie inclusi nelle richieste di origine:** Tutti
+ **Stringhe di query incluse nelle richieste di origine:** Tutte

## AllViewerExceptHostHeader
<a name="managed-origin-request-policy-all-viewer-except-host-header"></a>

[Visualizza questa politica nella console CloudFront ](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/b689b0a8-53d0-40ab-baf2-68738e2966ac)

Questa policy ***non*** include l'intestazione `Host` della richiesta visualizzatore, ma include tutti gli altri valori (intestazioni, cookie e stringhe di query) della richiesta visualizzatore.

Questa politica include anche [intestazioni di CloudFront richiesta](adding-cloudfront-headers.md) aggiuntive per il protocollo HTTP, la versione HTTP, la versione TLS e tutte le intestazioni relative al tipo di dispositivo e alla posizione del visualizzatore.

Questa policy è destinata all'uso con Amazon API Gateway e le origini degli URL delle AWS Lambda funzioni. Queste origini prevedono che l'`Host`intestazione contenga il nome di dominio di origine, non il nome di dominio della CloudFront distribuzione. L'inoltro dell'intestazione `Host` dalla richiesta visualizzatore a queste origini può impedirne il funzionamento.

**Nota**  
Quando utilizzi questa politica di richiesta di origine gestita per rimuovere l'`Host`intestazione del visualizzatore, CloudFront aggiunge una nuova `Host` intestazione con il nome di dominio dell'origine alla richiesta di origine.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`b689b0a8-53d0-40ab-baf2-68738e2966ac`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste origine:** tutte le intestazioni nella richiesta visualizzatore ***ad eccezione*** dell’intestazione `Host`
+ **Cookie inclusi nelle richieste di origine:** Tutti
+ **Stringhe di query incluse nelle richieste di origine:** Tutte

## CORS- CustomOrigin
<a name="managed-origin-request-policy-cors-custom"></a>

[Visualizza questa politica nella console CloudFront ](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/59781a5b-3903-41f3-afcb-af62929ccde1)

Questa policy include l'intestazione che abilita le richieste CORS (Cross-Origin Resource Sharing) quando l'origine è un'origine personalizzata.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`59781a5b-3903-41f3-afcb-af62929ccde1`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:**
  + `Origin`
+ **Cookie inclusi nelle richieste di origine:** Nessuno
+ **Stringhe di query incluse nelle richieste di origine:** Nessuna

## CORS-S3Origin
<a name="managed-origin-request-policy-cors-s3"></a>

[Visualizza questa politica nella CloudFront console](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/88a5eaf4-2fd4-4709-b370-b4c650ea3fcf)

Questa policy include le intestazioni che abilitano le richieste CORS (Cross-Origin Resource Sharing) quando l'origine è un bucket Amazon S3.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`88a5eaf4-2fd4-4709-b370-b4c650ea3fcf`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:**
  + `Origin`
  + `Access-Control-Request-Headers`
  + `Access-Control-Request-Method`
+ **Cookie inclusi nelle richieste di origine:** Nessuno
+ **Stringhe di query incluse nelle richieste di origine:** Nessuna

## Elementare- - MediaTailor PersonalizedManifests
<a name="managed-origin-request-policy-mediatailor"></a>

[Visualizza questa politica nella console CloudFront ](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/775133bc-15f2-49f9-abea-afb2e0bf67d2)

Questa policy è stata concepita per essere utilizzata con un'origine che è un endpoint AWS Elemental MediaTailor .

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`775133bc-15f2-49f9-abea-afb2e0bf67d2`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:**
  + `Origin`
  + `Access-Control-Request-Headers`
  + `Access-Control-Request-Method`
  + `User-Agent`
  + `X-Forwarded-For`
+ **Cookie inclusi nelle richieste di origine:** Nessuno
+ **Stringhe di query incluse nelle richieste di origine:** Tutte

## HostHeaderOnly
<a name="managed-origin-request-policy-host-header-only"></a>

[Visualizza questa politica nella CloudFront console](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/bf0718e1-ba1e-49d1-88b1-f726733018ae)

Questa policy include solo l’intestazione `Host` della richiesta origine. Non include stringhe di query o cookie.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`bf0718e1-ba1e-49d1-88b1-f726733018ae`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste origine:** host
+ **Cookie inclusi nelle richieste di origine:** Nessuno
+ **Stringhe di query incluse nelle richieste di origine:** Nessuna

## UserAgentRefererHeaders
<a name="managed-origin-request-policy-user-agent-referer"></a>

[Visualizza questa politica nella CloudFront console](https://console.aws.amazon.com/cloudfront/v4/home#/policies/origin/acba4595-bd28-49b8-b9fe-13317c0390fa)

Questa policy include solo le intestazioni `User-Agent` e `Referer`. Non include stringhe di query o cookie.

Quando si utilizza CloudFormation AWS CLI, o l' CloudFront API, l'ID per questa policy è:

`acba4595-bd28-49b8-b9fe-13317c0390fa`

Questa policy ha le seguenti impostazioni:
+ **Intestazioni incluse nelle richieste di origine:**
  + `User-Agent`
  + `Referer`
+ **Cookie inclusi nelle richieste di origine:** Nessuno
+ **Stringhe di query incluse nelle richieste di origine:** Nessuna

# Aggiungi intestazioni CloudFront di richiesta
<a name="adding-cloudfront-headers"></a>

[È possibile CloudFront configurare l'aggiunta di intestazioni HTTP specifiche alle richieste CloudFront ricevute dai visualizzatori e inoltrate alla funzione origin o edge.](edge-functions.md) I valori di queste intestazioni HTTP sono basati sulle caratteristiche del visualizzatore o della richiesta del visualizzatore. [Le intestazioni forniscono informazioni sul tipo di dispositivo del visualizzatore, l'indirizzo IP, la posizione geografica, il protocollo di richiesta (HTTP o HTTPS), la versione HTTP, i dettagli della connessione TLS, l'impronta digitale e l'impronta digitale. JA3 ](https://github.com/salesforce/ja3) JA4 Puoi anche configurare il comportamento della cache della tua distribuzione per inoltrare le intestazioni. WebSocket Per ulteriori informazioni, consulta [Utilizzare WebSockets con le distribuzioni CloudFront](distribution-working-with.websockets.md).

Con queste intestazioni, l'origine o la funzione edge può ricevere informazioni sul visualizzatore senza la necessità da parte dell'utente di scrivere il proprio codice per determinare tali informazioni. Se la tua origine restituisce risposte diverse in base alle informazioni contenute in queste intestazioni, puoi includerle nella *chiave della cache* in modo che CloudFront memorizzi le risposte separatamente. Ad esempio, l'origine potrebbe rispondere con contenuti in una lingua specifica in base al paese in cui si trova il visualizzatore o con contenuti personalizzati per un tipo di dispositivo specifico. L'origine potrebbe anche scrivere queste intestazioni nei file di registro, che è possibile utilizzare per determinare le informazioni su dove si trovano i visualizzatori, quali tipi di dispositivi utilizzano e altro ancora.

Se si desidera includere intestazioni nella chiave della cache, utilizzare una *policy della cache*. Per ulteriori informazioni, consultare [Controllo della chiave della cache con una policy](controlling-the-cache-key.md) e [Comprensione della chiave della cache](understanding-the-cache-key.md).

Per ricevere queste intestazioni alla tua origine, ma non includerle nella chiave cache, utilizzare una *policy di richiesta di origine*. Per ulteriori informazioni, consulta [Controllo delle richieste di origine con una policy](controlling-origin-requests.md).

**Topics**
+ [Intestazioni del tipo di dispositivo](#cloudfront-headers-device-type)
+ [Intestazioni di posizione del visualizzatore](#cloudfront-headers-viewer-location)
+ [Intestazioni per determinare la struttura dell’intestazione del visualizzatore](#cloudfront-headers-viewer-headers)
+ [Intestazioni relative a TLS](#tls-related-versions)
+ [Altre intestazioni CloudFront](#cloudfront-headers-other)

## Intestazioni del tipo di dispositivo
<a name="cloudfront-headers-device-type"></a>

È possibile aggiungere le seguenti intestazioni per determinare il tipo di dispositivo del visualizzatore. In base al valore dell'`User-Agent`intestazione, CloudFront imposta il valore di queste intestazioni su o. `true` `false` Se il dispositivo ricade in più di una categoria, allora più di un valore potrebbe essere `true`. Ad esempio, per alcuni tablet, CloudFront imposta entrambi `CloudFront-Is-Mobile-Viewer` e `CloudFront-Is-Tablet-Viewer` su. `true`
+ `CloudFront-Is-Android-Viewer`— Impostato su `true` when CloudFront determina che il visualizzatore è un dispositivo con sistema operativo Android.
+ `CloudFront-Is-Desktop-Viewer`— Impostato su `true` quando CloudFront determina che il visualizzatore è un dispositivo desktop.
+ `CloudFront-Is-IOS-Viewer`— Impostato su `true` quando CloudFront determina che il visualizzatore è un dispositivo con un sistema operativo mobile Apple, come iPhone, iPod touch e alcuni dispositivi iPad.
+ `CloudFront-Is-Mobile-Viewer`— Impostato su `true` quando CloudFront determina che lo spettatore è un dispositivo mobile.
+ `CloudFront-Is-SmartTV-Viewer`— Impostato su `true` quando CloudFront determina che lo spettatore è una smart TV.
+ `CloudFront-Is-Tablet-Viewer`— Impostato su `true` quando CloudFront determina che lo spettatore è un tablet.

## Intestazioni di posizione del visualizzatore
<a name="cloudfront-headers-viewer-location"></a>

Puoi aggiungere le seguenti intestazioni per determinare la posizione dello spettatore. CloudFront determina i valori per queste intestazioni in base all'indirizzo IP del visualizzatore. [Per i caratteri non ASCII nei valori di queste intestazioni, il carattere viene CloudFront codificato in percentuale secondo la sezione 1.2 di RFC 3986.](https://tools.ietf.org/html/rfc3986#section-2.1)
+ `CloudFront-Viewer-Address` - Contiene l'indirizzo IP del visualizzatore e la porta di origine della richiesta. Ad esempio, un valore di intestazione di `198.51.100.10:46532` significa che l'indirizzo IP del visualizzatore è 198.51.100.10 e la porta di origine della richiesta è 46532.
+ `CloudFront-Viewer-ASN` - Contiene il numero di sistema autonomo (ASN) del visualizzatore.
**Nota**  
È possibile aggiungere `CloudFront-Viewer-Address` e `CloudFront-Viewer-ASN` in una policy di richiesta di origine, ma non in una policy della cache.
+ `CloudFront-Viewer-Country` - Contiene il codice paese di due lettere per il Paese del visualizzatore. Per un elenco dei codici paese, vedere [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
+ `CloudFront-Viewer-City` - Contiene il nome della città del visualizzatore.

*Quando aggiungi le seguenti intestazioni, le CloudFront applica a tutte le richieste tranne quelle che provengono dalla rete:* AWS 
+ `CloudFront-Viewer-Country-Name` - Contiene il nome del Paese del visualizzatore.
+ `CloudFront-Viewer-Country-Region` - Contiene un codice (fino a tre caratteri) che rappresenta la regione del visualizzatore. La regione è la suddivisione di primo livello (la più ampia o meno specifica) del codice [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2).
+ `CloudFront-Viewer-Country-Region-Name` - Contiene il nome della regione del visualizzatore. La regione è la suddivisione di primo livello (la più ampia o meno specifica) del codice [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2).
+ `CloudFront-Viewer-Latitude` - Contiene la latitudine approssimativa del visualizzatore.
+ `CloudFront-Viewer-Longitude` - Contiene la longitudine approssimativa del visualizzatore.
+ `CloudFront-Viewer-Metro-Code` - Contiene il codice metro del visualizzatore. Questo è presente solo quando il visualizzatore è negli Stati Uniti.
+ `CloudFront-Viewer-Postal-Code` - Contiene il codice postale del visualizzatore.
+ `CloudFront-Viewer-Time-Zone` Contiene il fuso orario del visualizzatore, in [formato database del fuso orario IANA](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) (ad esempio, `America/Los_Angeles`).

**Nota**  
`CloudFront-Viewer-City`, `CloudFront-Viewer-Metro-Code` e `CloudFront-Viewer-Postal-Code` potrebbero non essere disponibili per ogni indirizzo IP. Alcuni indirizzi IP non possono essere geolocalizzati con sufficiente precisione per ottenere tali informazioni.

## Intestazioni per determinare la struttura dell’intestazione del visualizzatore
<a name="cloudfront-headers-viewer-headers"></a>

È possibile aggiungere le seguenti intestazioni per identificare il visualizzatore in base alle intestazioni che invia. Ad esempio, browser diversi possono inviare le intestazioni HTTP in un determinato ordine. Se il browser specificato nell'intestazione `User-Agent` non corrisponde all'ordine di intestazione previsto per quel browser, è possibile rifiutare la richiesta. Inoltre, se il valore `CloudFront-Viewer-Header-Count` non corrisponde al numero di intestazioni in `CloudFront-Viewer-Header-Order`, è possibile rifiutare la richiesta.
+ `CloudFront-Viewer-Header-Order`: contiene i nomi delle intestazioni del visualizzatore nell'ordine richiesto, separati dai due punti. Ad esempio: `CloudFront-Viewer-Header-Order: Host:User-Agent:Accept:Accept-Encoding`. Le intestazioni oltre il limite di 7.680 caratteri vengono troncate.
+ `CloudFront-Viewer-Header-Count`: contiene il numero totale delle intestazioni del visualizzatore.

## Intestazioni relative a TLS
<a name="tls-related-versions"></a>

Puoi aggiungere le seguenti intestazioni per determinare l'impronta digitale, l' JA3 impronta digitale e i dettagli della connessione JA4 TLS del visualizzatore:
+ `CloudFront-Viewer-JA3-Fingerprint`— Contiene l'[JA3 impronta digitale dello spettatore](https://github.com/salesforce/ja3). L' JA3 impronta digitale può aiutare a determinare se la richiesta proviene da un client noto, se si tratta di malware o di un bot dannoso o di un'applicazione prevista (nella lista consentita). 
+ `CloudFront-Viewer-JA4-Fingerprint`— Contiene l' JA4impronta digitale del visualizzatore. Analogamente all' JA3 impronta digitale, l'[JA4 impronta digitale](https://github.com/FoxIO-LLC/ja4) può aiutarti a determinare se la richiesta proviene da un client noto, se si tratta di malware o di un bot dannoso o di un'applicazione prevista (nell'elenco consentito). Puoi utilizzare l’impronta per creare un database di utenti buoni o malintenzionati noti da utilizzare durante l’ispezione delle richieste HTTP. È quindi possibile controllare il valore dell'intestazione sui server Web delle applicazioni o in [Lambda @Edge](lambda-at-the-edge.md) and [CloudFront Functions](cloudfront-functions.md) per confrontare il valore dell'intestazione con un elenco di impronte digitali di malware note per bloccare i client dannosi.
+ `CloudFront-Viewer-TLS`— Contiene la SSL/TLS versione, il codice e le informazioni sull' SSL/TLS handshake utilizzato per la connessione tra il visualizzatore e. CloudFront Il valore dell'intestazione è nel seguente formato:

  ```
  SSL/TLS_version:cipher:handshake_information
  ```

  Per `handshake_information`, l'intestazione può contenere uno dei seguenti valori:
  + `fullHandshake`— È stata eseguita una stretta di mano completa per la sessione. SSL/TLS 
  + `sessionResumed`— È stata ripresa una SSL/TLS sessione precedente.
  + `connectionReused`— Una SSL/TLS connessione precedente è stata riutilizzata.

  Di seguito sono riportati alcuni valori di esempio per questa intestazione:

  ```
  TLSv1.3:TLS_AES_128_GCM_SHA256:sessionResumed
  ```

  ```
  TLSv1.2:ECDHE-ECDSA-AES128-GCM-SHA256:connectionReused
  ```

  ```
  TLSv1.1:ECDHE-RSA-AES128-SHA256:fullHandshake
  ```

  ```
  TLSv1:ECDHE-RSA-AES256-SHA:fullHandshake
  ```

  Per l'elenco completo delle possibili SSL/TLS versioni e cifrari che possono essere presenti in questo valore di intestazione, consulta. [Protocolli e cifrari supportati tra visualizzatori e CloudFront](secure-connections-supported-viewer-protocols-ciphers.md)

**Note**  
Le JA4 impronte digitali JA3 e sono derivate dal pacchetto. SSL/TLS `Client Hello` Sono presenti solo per le richieste HTTPS.
Per queste intestazioni correlate a TLS, puoi aggiungerle a una [policy di richiesta di origine](controlling-origin-requests.md), ma non a una [policy della cache](controlling-the-cache-key.md).

## Altre intestazioni CloudFront
<a name="cloudfront-headers-other"></a>

Puoi aggiungere le seguenti intestazioni per determinare l’URI della richiesta originale del visualizzatore, i parametri e i valori della stringa di query della richiesta originale, il protocollo e la versione:
+ `CloudFront-Error-Uri`: contiene l’URI della richiesta originale ricevuto dal visualizzatore.
+ `CloudFront-Error-Args`: contiene i parametri e i valori della stringa di query della richiesta originale.
+ `CloudFront-Forwarded-Proto` - Contiene il protocollo della richiesta del visualizzatore (HTTP o HTTPS).
+ `CloudFront-Viewer-Http-Version` - Contiene la versione HTTP della richiesta del visualizzatore.

# Comprendere come interagiscono le policy di richiesta origine e le policy della cache
<a name="understanding-how-origin-request-policies-and-cache-policies-work-together"></a>

Puoi utilizzare una [policy di richiesta origine](controlling-origin-requests.md) CloudFront per controllare le richieste inviate da CloudFront all'origine, chiamate *richieste origine*. Per utilizzare una policy di richiesta origine, devi collegare una [policy della cache](controlling-the-cache-key.md) allo stesso comportamento della cache. Non è possibile utilizzare una policy di richiesta origine in un comportamento della cache senza una policy della cache. Per ulteriori informazioni, consulta [Controllo delle richieste di origine con una policy](controlling-origin-requests.md).

Le policy di richiesta origine e le policy della cache interagiscono per determinare i valori che vengono inclusi da CloudFront nelle richieste origine. Tutte le stringhe di query URL, le intestazioni HTTP e i cookie specificati nella chiave della cache (utilizzando una policy della cache) vengono automaticamente inclusi nelle richieste origine. Anche tutte le stringhe di query, le intestazioni e i cookie aggiuntivi specificati in una policy di richiesta origine vengono inclusi nelle richieste origine (ma non nella chiave di cache).

Le policy di richiesta origine e le policy della cache dispongono di impostazioni che potrebbero sembrare in conflitto tra loro. Ad esempio, una policy potrebbe consentire determinati valori mentre un'altra policy li blocca. Nella tabella seguente viene descritto quali valori vengono inclusi da CloudFront nelle richieste origine quando si utilizzano insieme le impostazioni di una policy di richiesta origine e una policy della cache. Queste impostazioni si applicano in genere a tutti i tipi di valori (stringhe di query, intestazioni e cookie), con la differenza che non è possibile specificare tutte le intestazioni o utilizzare un elenco di blocchi di intestazioni in una policy della cache.


|  |  **Policy di richiesta origine**  |  |  **Nessuno**  |  **Tutti**  |  **Elenco di indirizzi consentiti**  |  **Elenco di indirizzi bloccati**  | 
| --- | --- | --- | --- | --- | --- | --- | 
|  **Policy della cache**  | 
|  **Nessuno**  |  Nessun valore della richiesta visualizzatore viene incluso nella richiesta origine, ad eccezione dei valori predefiniti inclusi in ogni richiesta origine. Per ulteriori informazioni, consulta [Controllo delle richieste di origine con una policy](controlling-origin-requests.md).  |  Tutti i valori della richiesta visualizzatore sono inclusi nella richiesta origine.  |  Solo i valori specificati nella policy di richiesta origine sono inclusi nella richiesta origine.  |  Tutti i valori della richiesta visualizzatore ***ad eccezione*** di quelli specificati nella policy di richiesta origine sono inclusi nella richiesta origine.  | 
|  **Tutti** **Nota:** non è possibile specificare tutte le intestazioni in una policy della cache.  |  Tutte le stringhe di query e i cookie della richiesta visualizzatore vengono inclusi nella richiesta origine.  |  Tutti i valori della richiesta visualizzatore sono inclusi nella richiesta origine.  |  Tutte le stringhe di query e i cookie della richiesta visualizzatore, e le eventuali intestazioni specificate nella policy di richiesta origine, sono inclusi nella richiesta origine.  |  Tutte le stringhe di query e i cookie della richiesta visualizzatore sono inclusi nella richiesta origine, anche quelli specificati nell’elenco di indirizzi bloccati della policy di richiesta origine. L'impostazione della policy della cache sostituisce l'elenco di indirizzi bloccati della policy di richiesta origine.  | 
|  **Elenco di indirizzi consentiti**  |  Solo i valori specificati della richiesta visualizzatore vengono inclusi nella richiesta origine.  |  Tutti i valori della richiesta visualizzatore sono inclusi nella richiesta origine.  |  Tutti i valori specificati nella policy della cache o nella policy della richiesta origine sono inclusi nella richiesta origine.  |  I valori specificati nella policy della cache sono inclusi nella richiesta origine, anche se gli stessi valori sono specificati nell'elenco di indirizzi bloccati della policy di richiesta origine. L’elenco di indirizzi consentiti della policy della cache sostituisce l'elenco di indirizzi bloccati della policy di richiesta origine.  | 
|  **Elenco di indirizzi bloccati** **Nota:** non è possibile specificare intestazioni in un elenco di indirizzi bloccati della policy della cache.  |  Tutte le stringhe di query e i cookie della richiesta visualizzatore, ***ad eccezione*** di quelli specificati, vengono inclusi nella richiesta origine.  |  Tutti i valori della richiesta visualizzatore sono inclusi nella richiesta origine.  |  I valori specificati nella policy di richiesta origine sono inclusi nella richiesta origine, anche se gli stessi valori sono specificati nell'elenco di indirizzi bloccati della policy della cache. L’elenco di indirizzi consentiti della policy di richiesta origine sostituisce l'elenco di indirizzi bloccati della policy della cache.  |  Tutti i valori della richiesta visualizzatore, ***ad eccezione*** di quelli specificati nella policy della cache o nella policy di richiesta origine, sono inclusi nella richiesta origine.  | 