

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

# App web Transfer Family
<a name="web-app"></a>

Puoi creare app Web per abilitare un'interfaccia semplice per il trasferimento di dati da e verso Amazon Simple Storage Service (S3) tramite un browser Web. Ciò non richiede la creazione o il provisioning AWS Transfer Family di server.

Prima dell'introduzione delle app web Transfer Family, gli utenti finali dovevano utilizzare una soluzione client, personalizzata o di terze parti per accedere ai propri dati in Amazon S3. Ciò era dovuto ai rigorosi requisiti di sicurezza per clienti e partner e al fatto che le app dei clienti sono difficili da utilizzare per gli utenti non tecnici.

Con il lancio delle app Web, ora puoi estendere un portale personalizzato, sicuro e ad alta disponibilità per consentire agli utenti finali di sfogliare, caricare e scaricare dati in Amazon S3. Le app Web sono integrate nativamente con AWS IAM Identity Center Amazon S3 Access Grants. Ciò significa che solo gli utenti autenticati possono visualizzare i dati a cui sono autorizzati ad accedere. Le app Web sono create utilizzando [Storage Browser per Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-browser.html) e offrono le stesse funzionalità per l'utente finale in un'offerta completamente gestita senza dover scrivere codice o ospitare la propria applicazione.

Per ulteriori informazioni sull'altro Servizi AWS che usi con le app web Transfer Family, consulta la seguente documentazione:
+ [Gestione dell'accesso con S3 Access Grants nella Guida per l'utente di Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html)
+ [AWS IAM Identity Center Guida per l'utente](https://docs.aws.amazon.com/singlesignon/latest/userguide/)
+ [Workshop sulle sovvenzioni di accesso ad Amazon S3](https://catalog.us-east-1.prod.workshops.aws/workshops/77b0af63-6ad2-4c94-bfc0-270eb9358c7a/en-US)
+ [Annuncio di app AWS Transfer Family Web per trasferimenti di file Amazon S3 completamente gestiti](https://aws.amazon.com/blogs/aws/announcing-aws-transfer-family-web-apps-for-fully-managed-amazon-s3-file-transfers/)

Le seguenti risorse sono disponibili per aiutarti a iniziare a usare le app web Transfer Family.
+ La guida per l'utente offre una step-by-step procedura dettagliata per configurare un'app web Transfer Family qui:. [Tutorial: configurazione di un'app web Transfer Family di base](web-app-tutorial.md)
+ Il **AWS Getting Started Resource Center** offre un tutorial qui: [Guida introduttiva all'app AWS Transfer Family web](https://aws.amazon.com/getting-started/hands-on/set-up-an-aws-transfer-family-web-app/).
+ Il video seguente fornisce una guida per iniziare a usare le app web Transfer Family.  
[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Ie9M0qBGrCE/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Ie9M0qBGrCE)

## Regioni AWS per le app web Transfer Family
<a name="webapp-regions"></a>

AWS Transfer Family le app web sono disponibili in tutte le regioni supportate da Transfer Family, elencate negli [endpoint del AWS Transfer Family servizio](https://docs.aws.amazon.com//general/latest/gr/transfer-service.html#transfer-region), ad eccezione del Messico (Centrale).

Gli endpoint VPC per app Web sono supportati Regioni AWS ovunque siano disponibili app Web.

## Compatibilità del browser per le app AWS Transfer Family Web
<a name="webapp-browsers"></a>

Le app web Transfer Family supportano i seguenti browser.


| Browser | Versione | Compatibilità | 
| --- | --- | --- | 
| Microsoft Edge | Ultime 3 versioni | Compatible | 
| Mozilla Firefox | Ultime 3 versioni | Compatible | 
| Google Chrome | Ultime 3 versioni | Compatible | 
| Apple Safari | Ultime 3 versioni | Compatible | 

## Come creare un'app web Transfer Family
<a name="webapp-process"></a>

Il diagramma seguente illustra l'architettura dell'app web Transfer Family.

![\[Diagramma dell'architettura che mostra le app web Transfer Family Servizi AWS che interagiscono con le app web Transfer Family.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-architecture.png)


In base al diagramma, puoi vedere che le app web Transfer Family interagiscono con quanto segue: Servizi AWS
+ Amazon S3 per lo storage e Amazon S3 Access Grants per l'acquisizione delle credenziali di sessione.
+ AWS IAM Identity Center come provider di identità federate.
+ Amazon CloudFront se configuri un URL personalizzato per la tua app web.

Tieni presente le seguenti limitazioni quando utilizzi app Web.
+ Numero massimo di risultati di ricerca per query: 10.000
+ I bucket Amazon S3 utilizzati dall'app web Transfer Family devono trovarsi nello stesso account dell'app Web stessa. I bucket tra più account non sono attualmente supportati.
+ Ampiezza massima di ricerca per query: 10.000 file ricercati
+ Dimensione massima di caricamento per file: 160 GB (149 GiB)
+ Dimensione massima del file per la copia: 5,36 GB (5 GiB)
+ I nomi di cartella che iniziano o finiscono con punti (.) non sono supportati

**Prerequisiti**  
*In AWS Identity and Access Management, configura i ruoli necessari.* Incolla i blocchi di codice che forniamo nelle istruzioni. Per informazioni sulla configurazione dei ruoli necessari, vedere[Configurazione dei ruoli IAM per le app web Transfer Family](webapp-roles.md).
+ Crea un ruolo di portatore di identità.
+ Crea un ruolo IAM da utilizzare con S3 Access Grants. S3 Access Grants assume questo ruolo IAM per fornire credenziali temporanee al beneficiario per la sede Amazon S3 registrata.

**Processo per creare un'app web Transfer Family**  
Per creare la tua app web e rendere operativi gli utenti finali, esegui le seguenti attività:

1. *Configura IAM Identity Center in modo che funga da provider di identità federato*. Esegui le seguenti attività in IAM Identity Center. Per maggiori dettagli sulla configurazione di IAM Identity Center, consulta[Configura il tuo provider di identità per le app web Transfer Family](webapp-identity-center.md).

   1. Crea un'istanza IAM Identity Center, se non ne hai già una.

   1. Determina la fonte della tua identità. Può essere la directory predefinita di IAM Identity Center o un provider di terze parti (ad esempio Okta).

   1. Crea o identifica gli utenti o i gruppi che utilizzeranno la tua app web. 

   1. Se utilizzi la directory IAM Identity Center come fonte di identità, prendi nota dell'utente o del gruppo IDs che crei. Ne avrai bisogno in seguito quando crei una concessione di accesso utilizzando S3 Access Grants.

1. *In Amazon S3, configura Amazon S3 Access Grants.* Per ulteriori informazioni su S3 Access Grants, consulta [Configura Amazon S3 Access Grants per le app web Transfer Family](webapp-access-grant.md).
   + Crea un'istanza S3 Access Grants se non ne hai già una. Regione AWS
   + Registra la tua posizione utilizzando il ruolo IAM.
   + Crea la concessione di accesso.

1. *In Transfer Family, esegui le seguenti attività.*

   1. Crea l'app web Transfer Family. Per ulteriori informazioni su come creare l'app web Transfer Family, vedere[Configurare un'app web Transfer Family](webapp-configure.md).
**Importante**  
Configura CORS (Cross-origin resource sharing) per tutti i bucket Amazon S3 utilizzati dalla tua app Web. Per informazioni sulla configurazione di CORS, consulta. [Configura CORS (Cross-origin resource sharing) per il tuo bucket](access-grant-cors.md)

   1. Assegna utenti o gruppi all'app Web. Per ulteriori informazioni su come assegnare utenti e gruppi, vedere. [Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md)

   1. (Facoltativo) Aggiorna l'endpoint di accesso per la tua app Web con un URL personalizzato. Per informazioni sulla creazione di un URL personalizzato, consulta[Aggiorna il tuo endpoint di accesso con un URL personalizzato](webapp-customize.md).

   1. Fornisci agli utenti finali l'URL dell'endpoint di accesso in modo che possano accedere e interagire con la tua app web.

# Configura il tuo provider di identità per le app web Transfer Family
<a name="webapp-identity-center"></a>

La sezione seguente descrive come configurare il tuo provider di identità.

Per iniziare, è necessario disporre di una fonte di identità. Puoi utilizzare una directory IAM Identity Center o un provider di identità esterno. AWS Directory Service for Microsoft Active Directory Transfer Family utilizza IAM Identity Center come provider di identità federato, un sistema che archivia le credenziali degli utenti e autentica gli utenti di più organizzazioni.

Se non utilizzi una directory IAM Identity Center come fonte di identità, consulta i seguenti argomenti:
+ [Gestisci un provider di identità esterno](https://docs.aws.amazon.com//singlesignon/latest/userguide/manage-your-identity-source-idp.html)
+ [Connect a una directory Microsoft AD](https://docs.aws.amazon.com//singlesignon/latest/userguide/manage-your-identity-source-ad.html)
+ [Istanze di organizzazione e account di IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/identity-center-instances.html)
+ [Tutorial sulle fonti di identità di IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/tutorials.html)

**Nota**  
Puoi avere una sola fonte di identità in IAM Identity Center, per esempio, per. Regione AWS Per i dettagli, consulta [Prerequisiti e considerazioni di IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/identity-center-prerequisites.html).

Se prevedi di utilizzare la directory IAM Identity Center come fonte di identità e desideri una configurazione rapida, puoi saltare questo argomento e passare [Crea un'app web Transfer Family](webapp-configure.md#web-app-create) alla creazione di un'istanza di IAM Identity Center dalla procedura guidata.

**Per configurarlo AWS IAM Identity Center per l'uso con le app web Transfer Family**

1. Accedi a Console di gestione AWS e apri la AWS IAM Identity Center console all'indirizzo [https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/).

1. Puoi creare e utilizzare un'istanza di account o un'istanza dell'organizzazione di AWS IAM Identity Center.
   + Per informazioni dettagliate sulle istanze di account, consulta [Creare un'istanza di account di AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/create-account-instance.html). Con un'istanza di account di IAM Identity Center, puoi distribuire applicazioni AWS gestite supportate e applicazioni gestite dai clienti basate su OpenID Connect (OIDC). Le istanze di account supportano implementazioni isolate di applicazioni in un'unica soluzione Account AWS, sfruttando le funzionalità del portale di accesso e identità della forza lavoro di IAM Identity Center.
   + Per i dettagli sulle istanze organizzative, consulta Organization instances of IAM Identity [Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/organization-instances-identity-center.html). Puoi gestire centralmente l'accesso di utenti e gruppi con una singola istanza organizzativa.

1. Nella pagina **Impostazioni** IAM Identity Center, annota l'ARN dell'istanza. Avrai bisogno di questo valore quando crei un'istanza **Amazon S3 Access Grant**.  
![\[Schermata della console AWS IAM Identity Center che mostra la pagina Impostazioni con l'ARN dell'istanza cerchiato.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-identity-center.png)

1. Crea uno o più utenti e, facoltativamente, gruppi, da utilizzare con la tua app web Transfer Family. Se utilizzi una directory IAM Identity Center come provider di identità, puoi anche aggiungere utenti direttamente dall'app web stessa. Per ulteriori informazioni, consulta [Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md).

# Configurazione dei ruoli IAM per le app web Transfer Family
<a name="webapp-roles"></a>

Avrai bisogno di due ruoli: uno da usare come portatore di identità per la tua app web e un secondo da usare per configurare una concessione di accesso. Un ruolo di portatore di identità è un ruolo che include l'identità di un utente autenticato nelle sue sessioni. Viene utilizzato per effettuare richieste a S3 Access Grants per l'accesso ai dati per conto dell'utente.

**Nota**  
Puoi saltare la procedura per la creazione di un ruolo di portatore di identità. Per informazioni sulla creazione del ruolo di portatore di identità da parte del servizio Transfer Family, vedere[Crea un'app web Transfer Family](webapp-configure.md#web-app-create).  
Puoi saltare la procedura per la creazione di un ruolo di concessione di accesso. Nella procedura per la creazione di una concessione di accesso, nella fase in cui registri una sede S3, scegli **Crea** nuovo ruolo. 

**Crea un ruolo di portatore di identità**

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

1. Scegli **Ruoli**, quindi **Crea ruolo**.

1. Scegli **Politica di fiducia personalizzata**, quindi incolla il codice seguente.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service":"transfer.amazonaws.com"
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:SetContext"
               ]
           }
       ]
   }
   ```

1. Scegli **Avanti**, quindi salta **Aggiungi autorizzazioni** e seleziona nuovamente **Avanti**.

1. Inserisci un nome, ad esempio. `web-app-identity-bearer`

1. Scegli **Crea ruolo** per creare il ruolo di portatore di identità.

1. Scegli il ruolo che hai appena creato dall'elenco, quindi nel pannello **Politiche di autorizzazione, scegli **Aggiungi autorizzazioni**** > **Crea** politica in linea.

1. Nell'**editor delle politiche**, seleziona **JSON** e quindi incolla il seguente blocco di codice.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetDataAccess",
                   "s3:ListCallerAccessGrants",
                   "s3:ListAccessGrantsInstances"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

1. Per il nome della policy, inserisci`AllowS3AccessGrants`, quindi seleziona **Crea policy**.

Successivamente, crei il ruolo che S3 Access Grants assume per fornire credenziali temporanee all'assegnatario.

**Nota**  
Se consenti al servizio di creare per te il ruolo di portatore di identità, quel ruolo crea una confusa protezione sostitutiva. Pertanto, il suo codice è diverso da quello visualizzato qui.

**Crea un ruolo per le concessioni di accesso**

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

1. Scegli **Ruoli**, quindi **Crea ruolo**. Questo ruolo dovrebbe avere l'autorizzazione ad accedere ai tuoi dati S3 in. Regione AWS

1. Scegli **Custom Trust Policy**, quindi incolla il codice seguente.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "access-grants.s3.amazonaws.com"
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:SetContext"
               ]
           }
       ]
   }
   ```

1. Scegli **Avanti** e aggiungi una politica minima come descritto in [Registrare una sede](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-location-register.html). Sebbene non sia consigliato, puoi aggiungere la politica FullAccess gestita di **AmazonS3**, che potrebbe essere troppo permissiva per le tue esigenze.

1. Scegli **Avanti** e inserisci un nome (ad esempio). `access-grants-location`

1. Scegli **Crea ruolo** per creare il ruolo.

**Nota**  
Se consenti al servizio di creare il ruolo Access Grants al posto tuo, quel ruolo creerà confusione nella protezione dei sostituti. Pertanto, il suo codice è diverso da quello visualizzato qui.

# Configurare un'app web Transfer Family
<a name="webapp-configure"></a>

Questa sezione descrive le procedure per creare un'app web Transfer Family. Per assegnare utenti e gruppi che possono utilizzarla, vedi[Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md).

**Nota**  
Ripeti queste procedure per aggiungere altre app Web. Puoi riutilizzare i ruoli IAM che hai creato in precedenza. Assicurati di aggiungere gli endpoint di accesso per le nuove app Web alla policy CORS (Cross-Origin Resource Sharing) di ogni bucket.

## Crea un'app web Transfer Family
<a name="web-app-create"></a>

**Nota**  
Se non utilizzi la directory IAM Identity Center per il tuo provider di identità, non tentare di creare un'app web prima di aver già configurato IAM Identity Center e configurato un provider di identità di terze parti, come descritto in[Configura il tuo provider di identità per le app web Transfer Family](webapp-identity-center.md).

Completa i seguenti passaggi per creare un'app web Transfer Family.

**Per creare un'app web Transfer Family**

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

1. Nel riquadro di navigazione a sinistra, scegli **App Web**.

1. Scegli **Crea app web**.

   Per l'accesso tramite autenticazione, il riquadro viene compilato come segue.
   + Se hai già creato un'organizzazione o un'istanza di account in AWS IAM Identity Center, vedrai questo messaggio: La **tua AWS Transfer Family applicazione è connessa a un'istanza di account di IAM Identity Center**.
   + Se disponi già di un'istanza di account e sei membro di un'istanza dell'organizzazione, hai la possibilità di scegliere a quale istanza connettere.
   + Se non disponi già di un'istanza di account o sei membro di un'istanza dell'organizzazione, ti vengono presentate le opzioni per creare un'istanza di account.

1. Per il **tipo di endpoint**, scegli il tipo di endpoint **accessibile pubblicamente**. Per un endpoint **ospitato in un VPC**, vedi. [Crea un'app web Transfer Family in un VPC](create-webapp-in-vpc.md)

1. Nel riquadro **Tipo di autorizzazione**, puoi utilizzare un ruolo creato in precedenza o fare in modo che il servizio ne crei uno automaticamente.
   + Se hai già creato un ruolo di portatore di identità, scegli **Usa un ruolo esistente** e scegli il tuo ruolo dal menu **Seleziona un ruolo esistente**.
   + Per fare in modo che il servizio crei un ruolo per te, scegli **Crea e usa un nuovo ruolo di servizio**.

1. Nel riquadro **Unità dell'app Web**, scegli un valore. Un'unità app Web consente l'attività dell'app Web da un massimo di 250 sessioni uniche. Quando si crea un'app Web, si effettua il provisioning di quante unità sono necessarie in base ai volumi di carico di lavoro di picco previsti. La modifica delle unità dell'app Web ha un impatto sulla fatturazione. Per informazioni sui prezzi, consulta [AWS Transfer Family Pricing](https://aws.amazon.com/aws-transfer-family/pricing).

1. Se utilizzi Transfer Family in un AWS GovCloud (US) Region, puoi selezionare la casella di controllo **FIPS Enabled endpoint** nel riquadro **FIPS** Enabled. Per tutti gli altri Regioni AWS, questa opzione non è disponibile.

1. (Facoltativo) Aggiungi un tag per aiutarti a organizzare le tue app Web. Ti suggeriamo di aggiungere un tag con **Nome** come chiave e un nome descrittivo come valore.

1. Scegli **Next (Successivo)**. In questa schermata, puoi facoltativamente fornire un titolo per la tua app web. Se non fornite un titolo, viene fornito il titolo predefinito di **Transfer Web App**. Puoi anche caricare file di immagini per il tuo logo e la tua favicon.

1. Scegli **Avanti**, quindi scegli **Crea app web**.

![\[Schermata che mostra la dashboard delle app Web e la voce di menu per selezionarla dal pannello di navigazione a sinistra.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-transfer-dashboard.png)


**Nota**  
Assicurati di impostare una policy CORS (Cross-Origin Resource Sharing) per tutti i bucket a cui si accede dall'endpoint dell'app Web.

# Crea un'app web Transfer Family in un VPC
<a name="create-webapp-in-vpc"></a>

Questa sezione descrive le procedure per creare un'app web Transfer Family in un VPC. Puoi ospitare l'endpoint della tua app Web all'interno di un cloud privato virtuale (VPC) da utilizzare per il trasferimento di dati da e verso un bucket Amazon S3 senza passare dalla rete Internet pubblica. Per assegnare utenti e gruppi che possono utilizzare la tua app web, consulta. [Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md)

**Nota**  
Per garantire un flusso di end-to-end dati privato quando si utilizza un endpoint VPC dell'app Web Transfer Family, è necessario implementare tre componenti aggiuntivi. Innanzitutto, configura un PrivateLink endpoint per le operazioni dell'API Amazon S3 Control, necessario per le chiamate API Amazon S3 Access Grants. In secondo luogo, configura un endpoint per l'accesso ai dati di Amazon S3 utilizzando un endpoint Amazon PrivateLink S3 Gateway (per il traffico proveniente dal tuo VPC) o un endpoint Amazon S3 Interface (per il traffico proveniente da reti locali tramite VPN o Direct Connect). In terzo luogo, blocca l'accesso al bucket Amazon S3 aggiornando le policy del bucket per consentire solo il traffico proveniente da questi endpoint VPC. Questa combinazione garantisce che tutti i trasferimenti di dati rimangano all'interno dell'infrastruttura di rete privata e non attraversino mai la rete Internet pubblica.

## Crea un'app web Transfer Family
<a name="webapp-vpce-create"></a>

**Prerequisiti**
+ AWS IAM Identity Center configurato con un provider di identità configurato. Per informazioni, consulta [Configura il tuo provider di identità per le app web Transfer Family](webapp-identity-center.md).
+ Configurazione di VPC e componenti di rete. Vedi [Creare un VPC](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html#create-vpc-and-other-resources).
+ Configurazione degli endpoint API per le operazioni di controllo di Amazon S3. Vedi [Accesso agli endpoint dell'interfaccia Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#s3-creating-vpc).
+ Configurazione degli endpoint VPC per Amazon S3 (gateway o interfaccia). Vedi [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). Se utilizzi un endpoint di interfaccia, devi abilitare il DNS privato. Per un esempio, vedi [Introduzione al supporto DNS privato per Amazon AWS PrivateLink S3](https://aws.amazon.com/blogs/storage/introducing-private-dns-support-for-amazon-s3-with-aws-privatelink/) con.

**Nota**  
AWS IAM Identity Center non supporta gli endpoint VPC; tutte le richieste di autenticazione transitano sulla rete Internet pubblica. Inoltre, le applicazioni web Transfer Family richiedono l'accesso a Internet per caricare contenuti statici (come JavaScript file CSS e HTML). I requisiti per l'accesso pubblico a Internet sono diversi dall'accesso ai dati. L'endpoint VPC garantisce che le connessioni vengano instradate attraverso l'infrastruttura VPC.

**Per creare un'app web Transfer Family**

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

1. Nel riquadro di navigazione a sinistra, scegli **App Web**.

1. Scegli **Crea app web**. Per l'accesso tramite autenticazione, il riquadro viene compilato come segue.
   + Se hai già creato un'organizzazione o un'istanza di account in AWS IAM Identity Center, vedrai questo messaggio: La **tua AWS Transfer Family applicazione è connessa a un'istanza di account di IAM Identity Center**.
   + Se disponi già di un'istanza di account e sei membro di un'istanza dell'organizzazione, hai la possibilità di scegliere a quale istanza connettere.
   + Se non disponi già di un'istanza di account o sei membro di un'istanza dell'organizzazione, ti vengono presentate le opzioni per creare un'istanza di account.

1. Nella sezione **Configurazione degli endpoint**, scegli in che modo gli utenti accederanno alla tua app web:
   + **Accessibile pubblicamente**: l'endpoint dell'app Web è accessibile al pubblico tramite HTTPS. Questa opzione non richiede alcuna configurazione VPC, il che la rende semplice da configurare e adatta ad applicazioni destinate a un ampio uso pubblico.
   + **Ospitato su VPC**: l'endpoint dell'app Web è ospitato all'interno del Virtual Private Cloud (VPC), che fornisce l'accesso alla rete privata tramite la rete VPC o le connessioni VPN. AWS Direct Connect Questa opzione offre una maggiore sicurezza grazie all'isolamento della rete ed è consigliata per le applicazioni interne.
**Nota**  
È necessario disporre di una configurazione VPC dual-stack. Per ulteriori informazioni, consulta [Esempio di configurazione VPC dual-stack](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6-example.html) nella *Amazon Virtual Private Cloud* User Guide. 

     Quando configuri un endpoint ospitato da VPC, devi specificare:
     + **VPC**: seleziona un VPC esistente o creane uno nuovo. È disponibile il pulsante **Crea un VPC**.
     + **Zone di disponibilità**: scegli le zone di disponibilità in cui verrà distribuito l'endpoint.
     + **Sottoreti: seleziona le sottoreti** all'interno di ciascuna zona di disponibilità scelta.
     + **Gruppi di sicurezza**: seleziona o crea gruppi di sicurezza per controllare l'accesso in base agli indirizzi IP di origine. Se non specificato, viene utilizzato il gruppo di sicurezza predefinito del VPC. Gestisci i gruppi di sicurezza tramite la console VPC. Configura i gruppi di sicurezza VPC per consentire il traffico in entrata dalla rete tramite HTTPS sulla porta TCP 443. Ciò è necessario per l'autenticazione IAM Identity Center e il caricamento dei contenuti statici delle app Web. 
**Nota**  
L'endpoint di accesso non può essere personalizzato per gli endpoint VPC. Per aggiungere un URL personalizzato, utilizza l'endpoint pubblico.

## Fasi successive alla creazione
<a name="webapp-vpce-post-creation"></a>
+ Assicurati di impostare una policy CORS (Cross-Origin Resource Sharing) per tutti i bucket a cui si accede dall'endpoint dell'app Web. Per informazioni, consulta [Politica di condivisione delle risorse tra origini (CORS)](#webapp-vpce-cors).
+ Aggiorna la tua policy sui bucket per consentire solo il traffico proveniente dal tuo VPC attraverso l'endpoint VPC. Per informazioni, consulta [Limitazione dell'accesso a un endpoint VPC specifico](#webapp-vpce-bucket-policy).
+ Assegna o aggiungi utenti o gruppi all'app web Transfer Family. Per informazioni, consulta [Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md).

## Politica di condivisione delle risorse tra origini (CORS)
<a name="webapp-vpce-cors"></a>

È necessario configurare la condivisione delle risorse tra le origini (CORS) per tutti i bucket utilizzati dall'app Web. Per ulteriori informazioni sulla funzionalità CORS, consulta [Configura CORS (Cross-origin resource sharing) per il tuo bucket](access-grant-cors.md).

**Importante**  
Prima di utilizzare la seguente politica di esempio, sostituisci Allowed Origin con il tuo endpoint di accesso. In caso contrario, gli utenti finali riceveranno un errore quando tentano di accedere a una posizione sulla tua app web.

**Esempio di politica:**

```
[
  {
    "AllowedHeaders": [
      "*"
    ],
    "AllowedMethods": [
      "GET",
      "PUT",
      "POST",
      "DELETE",
      "HEAD"
    ],
    "AllowedOrigins": [
      "https://vpce-1234567-example.vpce-mq.transfer-webapp.us-east-1.on.aws"
    ],
    "ExposeHeaders": [
      "last-modified",
      "content-length",
      "etag",
      "x-amz-version-id",
      "content-type",
      "x-amz-request-id",
      "x-amz-id-2",
      "date",
      "x-amz-cf-id",
      "x-amz-storage-class",
      "access-control-expose-headers"
    ],
    "MaxAgeSeconds": 3000
  }
]
```

## Limitazione dell'accesso a un endpoint VPC specifico
<a name="webapp-vpce-bucket-policy"></a>

Di seguito è riportato un esempio di policy del bucket Amazon S3 che limita l'accesso a un bucket specifico, `amzn-s3-demo-bucket`, solo dall'endpoint VPC con l'ID `vpce-1a2b3c4d`. Se l'endpoint specificato non viene utilizzato, la policy nega l'accesso al bucket. La condizione `aws:SourceVpce` specifica l'endpoint. La condizione `aws:SourceVpce` non richiede un ARN per la risorsa dell'endpoint VPC, ma solo l'ID dell'endpoint VPC. Per ulteriori informazioni sull'aggiornamento della policy del bucket per consentire solo il traffico proveniente dal tuo VPC, consulta Controllare [l'accesso dagli](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies-vpc-endpoint.html) endpoint VPC con le policy dei bucket. Per ulteriori informazioni sull'utilizzo delle condizioni in una policy, consulta Esempi di policy [Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazon-s3-policy-keys.html) che utilizzano le chiavi di condizione. Come prerequisito per l'applicazione di questa policy, è necessario creare un endpoint VPC [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html).

**Importante**  
Prima di utilizzare la policy di esempio seguente, sostituire l'ID endpoint VPC con un valore appropriato per il caso d'uso. In caso contrario, non sarà possibile accedere al bucket.

```
{
  "Version":"2012-10-17",
  "Id": "Policy1415115909152",
  "Statement": [
    {
      "Sid": "Access-to-specific-VPCE-only",
      "Principal": "*",
      "Action": "s3:*",
      "Effect": "Deny",
      "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket",
                   "arn:aws:s3:::amzn-s3-demo-bucket/*"],
      "Condition": {
        "StringNotEquals": {
          "aws:SourceVpce": "vpce-1a2b3c4d"
        }
      }
    }
  ]
}
```

# Assegna o aggiungi utenti o gruppi a un'app web Transfer Family
<a name="webapp-add-users"></a>

Dopo aver creato un'app web Transfer Family, puoi assegnare utenti e gruppi che possono quindi accedere all'app web. Puoi recuperare gli utenti già creati e archiviati in IAM Identity Center oppure [aggiungere direttamente nuovi utenti](https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html) (se utilizzi una directory IAM Identity Center come provider di identità). Se aggiungi nuovi utenti, questi vengono aggiunti anche alla tua istanza IAM Identity Center.

Tenere presente quanto segue:
+ Puoi aggiungere nuovi utenti solo se utilizzi la directory IAM Identity Center come fonte di identità e disponi delle autorizzazioni appropriate. Se sei membro di un'istanza dell'organizzazione, potresti non disporre delle autorizzazioni necessarie per aggiungere utenti.
**Nota**  
Se non assegni utenti o gruppi alla tua applicazione, gli utenti riceveranno un errore quando tentano di accedere alla tua app web.
+ Se crei un nuovo utente, devi anche creare una concessione di accesso S3 per questo utente in modo che possa accedere ai dati sulla tua app web.
+ Dopo aver creato un nuovo utente, quell'utente riceve un'e-mail di onboarding da IAM Identity Center con le istruzioni su come procedere.

**Per assegnare utenti a un'app web Transfer Family**

1. Vai all'elenco delle tue app web e scegli quella che desideri modificare.

1. Seleziona **Assegna utenti e gruppi**.  
![\[Schermata che mostra i dettagli per un'app Web selezionata.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-transfer-details.png)

1. Per assegnare gli utenti che hai creato in precedenza in IAM Identity Center, seleziona **Assegna utenti e gruppi esistenti**. Per creare nuovi utenti, vai avanti al passaggio 4.

   1. Viene visualizzata una schermata informativa. Scegli **Get started (Nozioni di base)** per continuare.

   1. Cerca l'utente. Tieni presente che nessun utente viene visualizzato finché non inizi a inserire i criteri di ricerca. È necessario eseguire la ricerca in base al *nome visualizzato*, non al *nome utente*, se diverso. Vengono restituite solo le corrispondenze esatte. Se non riesci a trovare il tuo utente, accedi alla console di gestione IAM Identity Center, trova l'utente, quindi copia e incolla il nome visualizzato qui.  
![\[Schermata che mostra la finestra di dialogo di ricerca per aggiungere utenti e gruppi alla tua app web.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-transfer-add-user.png)

   1. Scegli gli utenti e i gruppi da aggiungere, quindi scegli **Assegna**.

1. Per creare un nuovo utente, seleziona **Aggiungi e assegna nuovi** utenti.

   1. Viene visualizzata una schermata informativa. Scegli **Get started (Nozioni di base)** per continuare.

   1. Scegli **Add new users (Aggiungi nuovi utenti)**.

   1. Immettete i seguenti dati utente nella finestra di dialogo: nome utente, nome e cognome e un indirizzo e-mail.   
![\[Schermata che mostra la finestra di dialogo Aggiungi nuovi utenti.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-transfer-add-user-new.png)

   1. Scegli **Avanti**, quindi scegli **Aggiungi** per aggiungere l'utente e chiudere la finestra di dialogo oppure **Aggiungi nuovo utente** per creare un altro utente.

# Configura CORS (Cross-origin resource sharing) per il tuo bucket
<a name="access-grant-cors"></a>

È necessario configurare la condivisione delle risorse tra le origini (CORS) per tutti i bucket utilizzati dall'app Web. Una *configurazione CORS* è un documento che definisce le regole che identificano le origini a cui consentirai l'accesso al tuo bucket. Per ulteriori informazioni su CORS, vedere [Configuring cross-origin resource](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html?icmpid=docs_amazons3_console) sharing (CORS).

**Importante**  
Se non configurate CORS, gli utenti finali ricevono un errore quando tentano di accedere a una posizione sulla vostra app web.

**Per configurare CORS (Cross-Origin Resource Sharing) per il tuo bucket Amazon S3**

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. **Scegli **Bucket** dal pannello di navigazione a sinistra e cerca il tuo bucket nella finestra di dialogo di ricerca, quindi scegli la scheda Autorizzazioni.**

1. In **Cross-origin resource sharing (CORS)**, scegli **Modifica** e incolla il codice seguente. *WebAppEndpoint*Sostituiscilo con l'effettivo endpoint di accesso per la tua app web. Può trattarsi dell'endpoint ospitato in VPC o ad accesso pubblico creato al momento della creazione dell'app Web o di un endpoint di accesso personalizzato, se ne crei uno. Assicurati di non inserire barre finali, perché così facendo si generano errori quando gli utenti tentano di accedere alla tua app web.
   + Esempio errato: `https://webapp-c7bf3423.transfer-webapp.us-east-2.on.aws/`
   + Esempi corretti:
     + `https://webapp-c7bf3423.transfer-webapp.us-east-2.on.aws`
     + `https://vpce-05668789767a-fh45z079.vpce-mq.transfer-webapp.us-east-1.on.aws`

   Se stai riutilizzando un bucket per più app Web, aggiungi i relativi endpoint all'elenco. `AllowedOrigins`

   ```
   [
     {
       "AllowedHeaders": [
         "*"
       ],
       "AllowedMethods": [
         "GET",
         "PUT",
         "POST",
         "DELETE",
         "HEAD"
       ],
       "AllowedOrigins": [
         "https://WebAppEndpoint"
       ],
       "ExposeHeaders": [
         "last-modified",
          "content-length",
         "etag",
         "x-amz-version-id",
         "content-type",
         "x-amz-request-id",
         "x-amz-id-2",
         "date",
         "x-amz-cf-id",
         "x-amz-storage-class",
         "access-control-expose-headers"
        ],
       "MaxAgeSeconds": 3000
     }
   ]
   ```

1.  Scegliete **Salva modifiche per aggiornare** il CORS.

Per testare la configurazione CORS, consulta [Testare](https://docs.aws.amazon.com/AmazonS3/latest/userguide/testing-cors.html) CORS.

# Configura Amazon S3 Access Grants per le app web Transfer Family
<a name="webapp-access-grant"></a>

Questo argomento descrive come aggiungere una concessione di accesso utilizzando Amazon S3 Access Grants. Questa concessione di accesso definisce l'accesso ai dati direttamente agli utenti e ai gruppi presenti nella directory aziendale e fornisce, con il privilegio minimo just-in-time, credenziali temporanee basate su concessioni. Una concessione individuale in un'istanza S3 Access Grants consente a un utente o gruppo specifico in una directory aziendale di ottenere l'accesso da una posizione registrata nella tua istanza S3 Access Grants. Per ulteriori dettagli, consulta i [concetti di S3 Access Grants](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-concepts.html) nella Amazon S3 User Guide.

**Nota**  
Non puoi utilizzare la directory IAM Identity Center con S3 Access Grants se non con le app web Transfer Family.

È necessario specificare una concessione di accesso ad Amazon S3 per la propagazione delle identità. Una concessione di accesso ad Amazon S3 archivia i dati a cui gli utenti finali devono accedere. Quando i tuoi utenti finali accedono alla tua app web Transfer Family, S3 Access Grants trasmette l'identità dell'utente all'applicazione affidabile. Questa sezione descrive come aggiungere e configurare un'istanza di concessione di accesso Amazon S3 e quindi una concessione di accesso per un bucket Amazon S3.

**Nota**  
Tieni a portata di mano l'[ARN e l'ID utente o di gruppo dell'istanza di IAM Identity Center](webapp-identity-center.md#identity-center-arn), poiché ti servono per completare la configurazione della concessione di accesso.

**Per creare una sovvenzione utilizzando Amazon S3 Access Grants**

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. Crea un bucket o prendi nota di un bucket esistente da utilizzare con la tua app web. Per informazioni sulla creazione di bucket, consulta la [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/) User Guide.

1. Dal riquadro di navigazione a sinistra, scegli **Access** Grants.

1. Scegli **Crea un'istanza S3 Access Grants** e fornisci le seguenti informazioni.
   + Seleziona **Aggiungi istanza IAM Identity Center in *your-Region*** cui si *your-Region* trova la tua. Regione AWS Tieni deselezionata questa casella se non utilizzi IAM Identity Center come provider di identità.
   + Incolla l'ARN dell'istanza IAM Identity Center.  
![\[Schermata che mostra la finestra di dialogo dell'istanza Amazon S3 Create Access Grants con valori di esempio.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-grants-instance.png)

   Seleziona **Successivo** per continuare.

1. **Registra i bucket o i prefissi S3** come posizioni. Ti consigliamo di registrare la posizione predefinita e di `s3://` mapparla a un ruolo IAM. La posizione in questo percorso predefinito copre l'accesso a tutti i bucket Amazon S3 nel Regione AWS tuo account. Quando crei una concessione di accesso, puoi restringere l'ambito a un bucket, un prefisso o un oggetto all'interno della posizione predefinita.

   Inserisci le informazioni che seguono. 
   + Per l'**ambito**, cerca un bucket o inserisci il nome del tuo bucket e, facoltativamente, un prefisso.
   + Per il ruolo IAM, scegli **Crea nuovo ruolo** per fare in modo che il servizio crei un ruolo.

     In alternativa, puoi creare tu stesso il ruolo, come descritto in[Configurazione dei ruoli IAM per le app web Transfer Family](webapp-roles.md), e quindi inserire il relativo ARN qui.   
![\[alt text not found\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-grants-register-new.png)

   Seleziona **Successivo** per continuare.

1. Nella schermata **Create Grant**, fornisci i seguenti dettagli.
   + Per **Autorizzazioni**, seleziona **Lettura** e **scrittura**. Le autorizzazioni di concessione di accesso possono essere di sola lettura o di lettura e scrittura, ma la sola scrittura non è supportata.
   + **Per il **tipo di beneficiario**, scegli Directory identity da IAM Identity Center.**
   + Per il **tipo di identità Directory**, seleziona **Utente** o **Gruppo**, a seconda del tipo che desideri registrare ora.
   + In **IAM Identity Center user/group ID**, incolla l'ID del tuo utente o gruppo. Questo ID è disponibile nella console **IAM Identity Center** e nell'app web Transfer Family nella tabella utenti e gruppi.  
![\[Schermata che mostra la finestra di dialogo Create Grant di Amazon S3 con valori di esempio.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-access-grant-details.png)

   Scegli **Next (Successivo)**.

1. Controlla le impostazioni sullo schermo. Se tutto è corretto, scegli **Fine** per creare la concessione di accesso. In alternativa, puoi scegliere **Annulla** o **Precedente** per apportare modifiche.  
![\[Schermata che mostra la finestra di dialogo Rivedi e concludi con valori di esempio.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-access-grants-review.png)

![\[Schermata che mostra la nuova concessione di accesso in una visualizzazione a elenco.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-access-grants-finished.png)


Questo completa la configurazione della tua app web. Gli utenti e i gruppi che hai configurato possono visitare l'app Web dal punto di accesso, accedere e caricare e scaricare file.

# Aggiorna il tuo endpoint di accesso con un URL personalizzato
<a name="webapp-customize"></a>

L'endpoint di accesso predefinito creato con la tua app web contiene identificatori generati dal servizio. Per offrire un'esperienza personalizzata, potresti voler fornire un URL personalizzato per consentire agli utenti di accedere alla tua app web Transfer Family. Questo argomento descrive come aggiornare l'endpoint di accesso con un URL personalizzato.

**Nota**  
L'endpoint di accesso non può essere personalizzato per gli endpoint VPC. Per aggiungere un URL personalizzato, utilizza l'endpoint pubblico.

**Nota**  
La procedura seguente si basa sull'utilizzo del modello di [CloudFormation stack](https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml) consigliato. Non è necessario utilizzare il modello: è possibile creare la distribuzione utilizzando direttamente la [CloudFront console](https://console.aws.amazon.com/cloudfront/v4/home).  
Tuttavia, il modello fornito semplifica il processo e facilita l'eliminazione di errori di configurazione. Se non utilizzi il CloudFormation modello, assicurati di seguire queste linee guida:  
La [policy di richiesta Origin](https://docs.aws.amazon.com//AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html#managed-origin-request-policy-cors-custom) dovrebbe inoltrare le stringhe di query e i cookie all'origine e non dovrebbe inoltrare l'`Host`intestazione all'origine.
La [politica Cache](https://docs.aws.amazon.com//AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html#managed-cache-policy-origin-cache-headers) non deve includere l'`Host`intestazione nella chiave della cache.

**Per personalizzare l'URL della tua app web**

1. Crea una CloudFront distribuzione utilizzando il modello [CloudFormation stack AWS CloudFormation template](https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml) fornito da Transfer Family.

   1. Apri la CloudFormation console in [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

   1. Scegli **Crea stack** e specifica quanto segue.
      + Nella sezione **Prerequisito - Prepara modello**, scegli **Scegli un modello esistente**.
      + Nella sezione **Specify template**(Specifica il modello) scegliere **Upload a template file** (Carica un file modello).
      + Salva il file del [modello CloudFormation dello stack]( https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml), quindi caricalo qui.

   1. Scegli **Avanti** e fornisci le seguenti informazioni.
      + **WebAppEndpoint**: copia il valore dalla tua app web
      + **AccessEndpoint**: fornisci il nome di dominio personalizzato che desideri utilizzare
      + **AcmCertificateArn**: fornisce l'ARN per un SSL/TLS certificato pubblico o privato archiviato in AWS Certificate Manager 

   1. Completa la CloudFormation procedura guidata fino alla creazione del nuovo stack.

1. Nella tua app web, modifica l'**endpoint di Access**, aggiornando l'**URL personalizzato** all'URL che desideri utilizzare.  
![\[Schermata che mostra un endpoint di accesso personalizzato per un'app web Transfer Family.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-custom-name.png)

1. Crea record DNS per indirizzare il traffico dal tuo nome di dominio personalizzato alla CloudFront distribuzione. **Se utilizzi Route 53 per la zona, puoi creare un alias o un record CNAME per il nome della CloudFront distribuzione (ad esempio, xxxx.cloudfront.net).** Per informazioni sull'utilizzo di Amazon Route 53 con CloudFront, consulta [Configurazione di Amazon Route 53 per instradare il traffico verso una CloudFront distribuzione](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html#routing-to-cloudfront-distribution-config).

1. Aggiorna la tua politica di condivisione delle risorse tra origini sostituendo l'endpoint di accesso predefinito con la seguente riga nel `AllowedOrigins` blocco di codice:

   ```
    "https://custom-url"
   ```

   Devi apportare questa modifica per ogni bucket utilizzato dalla tua app web.

   Dopo aver effettuato l'aggiornamento, la `AllowedOrigins` sezione della politica CORS dovrebbe avere il seguente aspetto:

   ```
   "AllowedOrigins": [
       "https://custom-url"],
   ```

   È necessario un solo AllowedOrigins ingresso per ogni app web Transfer Family.

   Per ulteriori dettagli, consulta la procedura [Configurazione della condivisione delle risorse tra le origini (CORS) per il bucket Amazon S3](access-grant-cors.md#cors-configure).

Ora puoi visitare il tuo endpoint di accesso personalizzato e condividere questo link con i tuoi utenti finali.

# CloudTrail registrazione per le app web Transfer Family
<a name="webapp-cloudtrail"></a>

CloudTrail è un file Servizio AWS che crea un registro delle azioni intraprese all'interno del tuo Account AWS. Monitora e registra continuamente le operazioni API per attività come AWS Command Line Interface accessi, comandi e operazioni alla console. SDK/API Ciò consente di tenere un registro di chi ha intrapreso quali azioni, quando e da dove. CloudTrail facilita il controllo, la gestione degli accessi e la conformità normativa fornendo una cronologia di tutte le attività nell' AWS ambiente.

Per le app web Transfer Family, puoi tenere traccia sia degli eventi di autenticazione che delle operazioni di accesso ai dati eseguite dai tuoi utenti. Per abilitare la registrazione completa, devi:

1.  CloudTrail Configurare per registrare gli eventi di gestione per il monitoraggio delle attività di autenticazione.

1. Abilita gli eventi sui dati di Amazon S3 per tenere traccia delle operazioni sui file eseguite tramite la tua app web.

**Consulta anche**
+ [CloudTrail casi d'uso per IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/sso-cloudtrail-use-cases.html)
+ [Comprensione degli eventi di accesso a IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/understanding-sign-in-events.html)
+ [CloudTrail elemento userIdentity](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)
+ [Abilitazione della registrazione CloudTrail degli eventi per bucket e oggetti S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-cloudtrail-logging-for-s3.html)
+ [Eventi Amazon S3 CloudTrail](https://docs.aws.amazon.com/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)

## Abilitazione degli eventi relativi ai dati di Amazon S3
<a name="webapp-enable-s3-data-events"></a>

Per tenere traccia delle operazioni sui file eseguite tramite le app web Transfer Family sui tuoi bucket Amazon S3, devi abilitare gli eventi relativi ai dati per tali bucket. Gli eventi relativi ai dati forniscono attività API a livello di oggetto e sono particolarmente utili per tenere traccia dei caricamenti, dei download e di altre operazioni eseguite dagli utenti delle app Web.

Per abilitare gli eventi dati di Amazon S3 per la tua app web Transfer Family:

1. Apri la CloudTrail console all'indirizzo [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Nel riquadro di navigazione, scegli **Percorsi**, quindi seleziona un percorso esistente o creane uno nuovo.

1. In **Selettori di eventi avanzati**, scegli **Modifica**.

1. Scegli **Aggiungi selettore di eventi avanzato**.

1. Per il primo selettore di campo:
   + Imposta **campo** su `eventCategory`
   + Imposta **operatore** su **Uguale**
   + **Imposta valore su** `Data`

1. Scegli **Aggiungi campo** e per il secondo selettore di campo:
   + Imposta **campo** su `resources.type`
   + Imposta **operatore** su **Uguale**
   + **Imposta valore su** `AWS::S3::Object`

1. (Facoltativo) Per registrare gli eventi solo per bucket specifici, scegli **Aggiungi campo** e aggiungi:
   + Imposta **campo** su `resources.ARN`
   + Imposta **operatore** **con cui iniziare**
   + Imposta **valore** su `arn:aws:s3:::your-bucket-name/`

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

In alternativa, puoi utilizzare la configurazione degli eventi relativi ai dati precedenti:

1. In **Data events**, scegli **Modifica**.

1. Per **Tipo di evento Data**, seleziona **Bucket S3 e Object** Events.

1. Scegli i bucket Amazon S3 per cui registrare gli eventi relativi ai dati. Puoi selezionare **Tutti i bucket S3 attuali e futuri o specificare singoli bucket**.

1. Scegli se registrare gli eventi di **lettura**, gli eventi di **scrittura o** entrambi.

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

Dopo aver abilitato gli eventi relativi ai dati, puoi accedere a questi log nel bucket Amazon S3 configurato per. CloudTrail I log includono dettagli come l'utente che ha eseguito l'azione, il timestamp dell'azione, l'oggetto specifico interessato e il `onBehalfOf` campo che aiuta a tracciare le azioni eseguite tramite le `userId` app web Transfer Family.

### Individuazione e visualizzazione dei registri
<a name="webapp-find-view-logs"></a>

Esistono diversi modi per trovare e visualizzare CloudTrail i registri della tua app web Transfer Family:

#### Utilizzo della console CloudTrail
<a name="webapp-find-logs-console"></a>

Il modo più veloce per visualizzare gli eventi recenti:

1. Apri la CloudTrail console all'indirizzo [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Scegli **Cronologia eventi**.

1. Filtra gli eventi per:
   + **Fonte dell'evento**: `signin.amazonaws.com` per gli eventi delle app Web
   + **Fonte dell'evento**: `s3.amazonaws.com` per le operazioni sui file

1. Fai clic su un evento per visualizzare informazioni dettagliate.

#### Accesso ai log in Amazon S3
<a name="webapp-find-logs-s3"></a>

Per accedere ai file di log completi archiviati in Amazon S3:

1. Identifica il CloudTrail bucket Amazon S3 del tuo percorso:

   ```
   aws cloudtrail describe-trails --query 'trailList[*].[Name,S3BucketName]' --output table
   ```

1. Accedi ai file di registro in Amazon S3:

   ```
   aws s3 ls s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/
   ```

1. Scarica e cerca nei file di registro l'ID della tua app web:

   ```
   aws s3 cp s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/ . --recursive
   gunzip *.json.gz
   grep -l "webapp-1a2b3c4d5e6f7g8h9" *.json
   ```

#### Utilizzo AWS CLI per cercare eventi
<a name="webapp-find-logs-cli"></a>

Cerca eventi specifici delle app Web utilizzando AWS CLI:

```
aws logs filter-log-events \
  --log-group-name /aws/cloudtrail/your-trail-name \
  --filter-pattern "webapp-1a2b3c4d5e6f7g8h9" \
  --start-time $(date -d "1 day ago" +%s)000
```

Oppure cerca eventi di autenticazione:

```
aws logs filter-log-events \
  --log-group-name /aws/cloudtrail/your-trail-name \
  --filter-pattern "UserAuthentication" \
  --start-time $(date -d "1 day ago" +%s)000
```

## Esempi di log di autenticazione
<a name="webapp-authentication-log-examples"></a>

CloudTrail registra gli eventi di autenticazione per le app web Transfer Family, che possono aiutarti a tenere traccia dei tentativi di accesso riusciti e falliti. Questi registri sono particolarmente utili per il monitoraggio della sicurezza e la conformità.

**Topics**
+ [Esempio di immissione di registro per la verifica delle credenziali](#webapp-credential-verification-example)
+ [Esempio di immissione di registro per l'autenticazione dell'accesso](#webapp-signin-authentication-example)
+ [Esempio di immissione di registro per ListCallerAccessGrants](#webapp-list-caller-access-grants-example)
+ [Esempio di immissione nel registro di un evento GetDataAccess](#webapp-get-data-access-example)

### Esempio di immissione di registro per la verifica delle credenziali
<a name="webapp-credential-verification-example"></a>

L'esempio seguente mostra una voce di CloudTrail registro per un evento di verifica delle credenziali che si verifica durante il processo di autenticazione.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "123456789012",
        "arn": "",
        "accountId": "123456789012",
        "accessKeyId": "",
        "userName": "demo-user-2",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        },
        "credentialId": "58138a11-87e5-401d-8f0b-7161c9389112"
    },
    "eventTime": "2025-08-08T15:29:30Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialVerification",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "192.0.2.224",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "f304a48b-7b6d-41c8-b136-4f49c91c1f31",
        "CredentialType": "PASSWORD"
    },
    "requestID": "ff936828-4a81-453c-802d-81368b6bca1a",
    "eventID": "70cb7008-493d-42c2-a9eb-38bf168af6a8",
    "readOnly": false,
    "eventType": "AWS ServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "serviceEventDetails": {
        "CredentialVerification": "Success"
    },
    "eventCategory": "Management"
}
```

Questo evento fornisce ulteriori dettagli sulla fase di verifica delle credenziali nel processo di autenticazione, mostrando l'ID specifico della credenziale e l'ID del flusso di lavoro di autenticazione utilizzati.

### Esempio di immissione di registro per l'autenticazione dell'accesso
<a name="webapp-signin-authentication-example"></a>

L'esempio seguente mostra una voce di CloudTrail registro relativa a un evento di autenticazione utente riuscito durante l'accesso all'app Web utilizzando IAM Identity Center.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "123456789012",
        "arn": "",
        "accountId": "123456789012",
        "accessKeyId": "",
        "userName": "demo-user-2",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        },
        "credentialId": "b41f0a02-1635-4d07-a414-aecf9e14b906"
    },
    "eventTime": "2025-08-07T14:09:07Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "UserAuthentication",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "192.0.2.14",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "7a4ef12c-7c4b-4bc3-b5bd-c2469afcc795",
        "LoginTo": "https://example.awsapps.com/start/",
        "CredentialType": "PASSWORD"
    },
    "requestID": "fc91bcf0-ac53-4454-a1a0-fb911eacc095",
    "eventID": "18522007-1e60-4a71-b2b5-150baf504ab3",
    "readOnly": false,
    "eventType": "AWS ServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "serviceEventDetails": {
        "UserAuthentication": "Success"
    },
    "eventCategory": "Management"
}
```

In questo esempio, nota i seguenti campi importanti:
+ `eventSource`: Mostra «signin.amazonaws.com», a indicare che si tratta di un evento di autenticazione IAM Identity Center.
+ `userIdentity.onBehalfOf`: contiene l'ID utente e l'ARN dell'archivio di identità per l'utente dell'app Web.
+ `additionalEventData.LoginTo`: mostra l'URL dell'applicazione IAM Identity Center a cui si accede.
+ `additionalEventData.CredentialType`: Indica il metodo di autenticazione utilizzato (PASSWORD).
+ `serviceEventDetails`: mostra il risultato dell'autenticazione (operazione riuscita).

### Esempio di immissione di registro per ListCallerAccessGrants
<a name="webapp-list-caller-access-grants-example"></a>

L'esempio seguente mostra una voce di CloudTrail registro per un ListCallerAccessGrants evento, che si verifica quando l'app web Transfer Family richiede le concessioni di accesso disponibili per un utente.

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAEXAMPLEID:aws-transfer",
        "arn": "arn:aws:sts::123456789012:assumed-role/AWS TransferWebAppIdentityBearer-us-east-2/aws-transfer",
        "accountId": "123456789012",
        "accessKeyId": "ASIAEXAMPLEKEY",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAEXAMPLEID",
                "arn": "arn:aws:iam::123456789012:role/service-role/AWS TransferWebAppIdentityBearer-us-east-2",
                "accountId": "123456789012",
                "userName": "AWS TransferWebAppIdentityBearer-us-east-2"
            },
            "attributes": {
                "creationDate": "2025-08-08T15:29:34Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedBy": "transfer.amazonaws.com",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        }
    },
    "eventTime": "2025-08-08T15:29:35Z",
    "eventSource": "s3.amazonaws.com",
    "eventName": "ListCallerAccessGrants",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "transfer.amazonaws.com",
    "userAgent": "transfer.amazonaws.com",
    "requestParameters": {
        "Host": "123456789012.s3-control.dualstack.us-east-2.amazonaws.com",
        "allowedByApplication": "true",
        "maxResults": "100"
    },
    "responseElements": null,
    "additionalEventData": {
        "SignatureVersion": "SigV4",
        "CipherSuite": "TLS_AES_128_GCM_SHA256",
        "bytesTransferredIn": 0,
        "AuthenticationMethod": "AuthHeader",
        "x-amz-id-2": "1g34AaAELn/fntxwrifVsr41VDl8dp5ygWFasHJFNVq5FDCWYfX0ye7s4tWHEJC8ppI5lLePYLIcw3iTXAgn5Q==",
        "bytesTransferredOut": 462
    },
    "requestID": "48485MTZEDWT0ANT",
    "eventID": "3de5dd60-b7cf-474c-a1ab-631467c1a5c3",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS:S3::AccessGrantsInstance",
            "ARN": "arn:aws:s3:us-east-2:123456789012:access-grants/default"
        }
    ],
    "eventType": "AWS ApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management"
}
```

In questo esempio, nota i seguenti campi importanti:
+ `eventName`: Indica che si tratta di un ListCallerAccessGrants evento che interroga le concessioni di accesso S3 disponibili.
+ `requestParameters.allowedByApplication`: indica che la query è filtrata in base alle concessioni consentite dall'applicazione.
+ `requestParameters.maxResults`: mostra il numero massimo di concessioni da restituire nella risposta.
+ `userIdentity.onBehalfOf`: collega la richiesta all'utente specifico dell'app Web.

Questo evento aiuta a tenere traccia di quando l'app web Transfer Family chiede a quali risorse S3 ha accesso un utente, fornendo visibilità sulle operazioni di rilevamento delle concessioni di accesso.

### Esempio di immissione nel registro di un evento GetDataAccess
<a name="webapp-get-data-access-example"></a>

L'esempio seguente mostra una voce di CloudTrail registro per un GetDataAccess evento, che si verifica quando l'app web Transfer Family richiede le autorizzazioni di accesso per le risorse S3 per conto di un utente.

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROASEQRAEABP7ADWEZA5:aws-transfer",
        "arn": "arn:aws:sts::123456789012:assumed-role/AWSTransferWebAppIdentityBearer-ap-southeast-1/aws-transfer",
        "accountId": "123456789012",
        "accessKeyId": "ASIAEXAMPLEKEY",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROASEQRAEABP7ADWEZA5",
                "arn": "arn:aws:iam::123456789012:role/service-role/AWSTransferWebAppIdentityBearer-ap-southeast-1",
                "accountId": "123456789012",
                "userName": "AWSTransferWebAppIdentityBearer-ap-southeast-1"
            },
            "attributes": {
                "creationDate": "2025-05-08T16:09:05Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedBy": "transfer.amazonaws.com",
        "onBehalfOf": {
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9667b0da7a",
            "userId": "191a35ec-10a1-70c1-e4ab-e2802411e13e"
        }
    },
    "eventTime": "2025-05-08T16:10:25Z",
    "eventSource": "s3.amazonaws.com",
    "eventName": "GetDataAccess",
    "awsRegion": "ap-southeast-1",
    "sourceIPAddress": "transfer.amazonaws.com",
    "userAgent": "transfer.amazonaws.com",
    "requestParameters": {
        "Host": "123456789012.s3-control.dualstack.ap-southeast-1.amazonaws.com",
        "durationSeconds": 900,
        "permission": "READWRITE",
        "target": "s3://amzn-s3-demo-bucket/users/john.doe/documents/*"
    },
    "responseElements": null,
    "additionalEventData": {
        "AuthenticationMethod": "AuthHeader",
        "CipherSuite": "TLS_AES_128_GCM_SHA256",
        "SignatureVersion": "SigV4",
        "bytesTransferredIn": 0,
        "bytesTransferredOut": 2244,
        "x-amz-id-2": "8ce8sZOgNwsaj9w1mzagyA+csONjYl8FgEw4FGpE8DARi90aNC0RFWlTYNEn7ChqE9RCJrTzMvS+ru7Vz2xXHrkQt/1uQ9exZTZdlhX+/fM="
    },
    "requestID": "BXGSKKQXCWS5RAHB",
    "eventID": "c11db1d1-dfb8-431e-8625-48eba2ebadfe",
    "readOnly": true,
    "resources": [
        {
            "type": "AWS:S3::AccessGrantsInstance",
            "ARN": "arn:aws:s3:ap-southeast-1:123456789012:access-grants/default",
            "accountId": "123456789012"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management"
}
```

In questo esempio, prendi nota dei seguenti campi importanti:
+ `eventName`: Indica che si tratta di un GetDataAccess evento che si verifica quando Transfer Family richiede le autorizzazioni di accesso per le risorse S3.
+ `userIdentity.onBehalfOf`: contiene l'ARN e l'ID utente dell'archivio di identità, che collegano la richiesta di accesso all'utente specifico dell'app Web.
+ `requestParameters.target`: mostra il modello di percorso S3 per il quale è stato richiesto l'accesso.
+ `requestParameters.permission`: indica il tipo di accesso richiesto (READWRITE, READ o WRITE).
+ `requestParameters.durationSeconds`: mostra per quanto tempo è valido il permesso di accesso (in genere 900 secondi/15 minuti).
+ `sourceIPAddress`e`userAgent`: entrambi mostrano «transfer.amazonaws.com», a indicare che si tratta di una richiesta di servizio interna.

GetDataAccess gli eventi sono particolarmente utili per tracciare quando agli utenti dell'app web Transfer Family viene concesso l'accesso a risorse S3 specifiche, aiutandoti a monitorare i modelli di accesso e a garantire l'autorizzazione corretta.

## Visualizzazione delle voci di CloudTrail registro
<a name="webapp-view-log-entries"></a>

Esistono diversi modi per visualizzare e analizzare le voci di CloudTrail registro per la tua app web Transfer Family:

### Utilizzo della CloudTrail console
<a name="webapp-view-logs-console"></a>

La CloudTrail console offre un'interfaccia intuitiva per la visualizzazione e il filtraggio delle voci di registro:

1. Apri la CloudTrail console all'indirizzo. [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/)

1. Nel riquadro di navigazione scegliere **Event history** (Cronologia eventi).

1. Usa le opzioni di filtro per restringere gli eventi:
   + Imposta **l'origine dell'evento** `transfer.amazonaws.com` su per visualizzare solo gli eventi Transfer Family.
   + Filtra per **nome dell'evento** per vedere operazioni specifiche come`UserAuthentication`.
   + Usa **Time Range** per concentrarti sugli eventi in un periodo specifico.

1. Fai clic su un evento per visualizzarne le informazioni dettagliate.

### Accesso ai log in Amazon S3
<a name="webapp-view-logs-s3"></a>

Se hai configurato un CloudTrail percorso per inviare i log a un bucket Amazon S3, puoi accedere direttamente ai file di log non elaborati:

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

1. Accedi al bucket e al prefisso in cui sono archiviati i CloudTrail log.

1. I log sono organizzati per anno, mese, giorno e regione. Accedere alla directory appropriata.

1. Scarica e apri i file di registro, che sono in formato JSON.

# Risoluzione dei problemi relativi alle app Web
<a name="webapp-troubleshooting"></a>

**Nota**  
Questi suggerimenti per la risoluzione dei problemi sono rivolti all'amministratore dell'app Web piuttosto che all'utente finale. Per gli utenti finali, in caso di problemi, contattate l'amministratore dell'app web. *Tutte le tue istanze riportate nei paragrafi seguenti si riferiscono all'amministratore dell'app Web.*

## Risolvi gli errori di rete
<a name="webapp-network-error"></a>

**Descrizione**

L'utente finale visualizza un banner di rete (**Network Error**) al caricamento dell'endpoint dell'app Web.

**Causa**

I problemi più comuni sono i seguenti:
+ L'amministratore non ha assegnato l'utente che sta tentando di accedere alla nuova applicazione.
+ L'amministratore non ha aggiunto le azioni necessarie ai tuoi ruoli IAM.
+ Viene visualizzato un elenco di S3 Access Grants assegnati al tuo utente, ma CORS non è configurato correttamente per il tuo bucket o i bucket Amazon S3.

 **Soluzione** 
+  In IAM Identity Center, assicurati di assegnare l'utente all'applicazione corretta. Oppure, se ti è stato assegnato un gruppo, assicurati che l'utente che tenta di accedere appartenga al gruppo corretto. Questa procedura è descritta in [Assegna o aggiungi utenti o gruppi a un'app web Transfer Family](webapp-add-users.md).
+ Verifica se i tuoi ruoli contengono le azioni necessarie nella **politica di fiducia personalizzata** per entrambe `sts:AssumeRole` le `sts:SetContext` azioni. Questa procedura è descritta in [Configurazione dei ruoli IAM per le app web Transfer Family](webapp-roles.md).
+ Controlla la politica CORS per tutti i bucket utilizzati dalla tua app web. Questa procedura è descritta in [Configurazione della condivisione delle risorse tra le origini (CORS) per il bucket Amazon S3](access-grant-cors.md#cors-configure).

## Risolvi i problemi relativi alla mancata visualizzazione del bucket configurato
<a name="webapp-no-bucket"></a>

**Descrizione**

Sembra che tutto sia configurato correttamente, ma il bucket Amazon S3 non viene visualizzato nell'app Web.

**Causa**

Una possibile causa è che il bucket Amazon S3 non si trova nello stesso account dell'app Web.

 **Soluzione** 

Assicurati che il bucket Amazon S3 si trovi nello stesso account dell'app Web. I bucket tra più account non sono attualmente supportati.

## Risolvi gli errori relativi agli URL personalizzati
<a name="webapp-customURL-errors"></a>

**Descrizione**

Quando l'utente finale accede all'app Web, riceve il messaggio di errore **Autorizzazione fallita: codice di autorizzazione mancante**.

**Causa**

Se hai utilizzato CloudFront direttamente, anziché il CloudFormation modello fornito, probabilmente hai configurato erroneamente la policy di richiesta di origine per non inoltrare le stringhe di query.

**Soluzione**

Aggiorna la politica di richiesta di origine per inoltrare le stringhe di query e i cookie all'origine.

**Descrizione**

Quando l'utente finale tenta di accedere a un'app web Transfer Family, riceve una risposta 404.

**Causa**

Se hai utilizzato CloudFront direttamente, anziché il CloudFormation modello fornito, probabilmente hai configurato erroneamente la politica della cache per includere l'`Host`intestazione nella chiave della cache o hai configurato erroneamente la politica di richiesta di origine per inoltrare l'intestazione. `Host`

**Soluzione**
+ Assicurati che la tua politica sulla cache non includa l'`Host`intestazione nella chiave della cache
+ Assicurati che la tua policy di richiesta di origine non inoltri l'`Host`intestazione.

## Risolvi errori vari
<a name="webapp-various-errors"></a>

**Descrizione**

L'utente finale non può accedere o non può visualizzare bucket o file oppure viene visualizzato un altro errore.

**Causa**

Una possibile causa è che l'ARN dell'istanza IAM Identity Center non corrisponde al valore dell'ARN delle sovvenzioni o dell'ARN dell'istanza IAM Identity Center dell'app Web IAM Identity Center.

 **Soluzione** 

Controlla i seguenti elementi per vedere se corrispondono.
+  In IAM Identity Center, accedi a **Impostazioni** e visualizza l'**ARN dell'istanza**.

  ```
  arn:aws:sso:::instance/ssoins-instance-identifier
  ```
+ In Amazon S3, accedi a **Access Grants** e visualizza l'ARN **dell'istanza IAM Identity Center**.

  ```
  arn:aws:sso::account-id:application/ssoins-instance-identifier/apl-1234567890abcdef0
  ```
+ In Transfer Family, accedi alla pagina dei dettagli della tua app Web e visualizza l'ARN dell'istanza.

  ```
  arn:aws:sso:::instance/ssoins-instance-identifier
  ```

Il *instance-identifier* valore deve essere lo stesso in tutte e tre queste posizioni.

## Bucket S3 duplicati visualizzati nell'app Web
<a name="webapp-duplicate-buckets"></a>

**Descrizione**

Gli utenti vedono lo stesso bucket S3 elencato più volte nell'interfaccia dell'app web Transfer Family.

**Causa**

Ciò si verifica quando un utente fa parte di più gruppi di Active Directory con concessioni duplicate allo stesso bucket S3. L'app Web elenca tutte le sovvenzioni di primo livello associate all'utente (UID o GID) indipendentemente dal fatto che all'utente siano assegnate più sovvenzioni alla stessa posizione del bucket.

**Soluzione**

Per risolvere questo problema, gli amministratori devono deduplicare le concessioni in modo che ogni utente disponga di una sola concessione per ogni sede S3. Rivedi la configurazione di S3 Access Grants e consolida le concessioni duplicate per lo stesso bucket in diversi gruppi di Active Directory.

# Istruzioni per l'utente finale per le app web Transfer Family
<a name="webapp-end-users"></a>

**Nota**  
In questo argomento, le informazioni sono destinate agli utenti finali che interagiscono con l'app web. Tutte le istanze dell'*utente riportate* in questo argomento si riferiscono agli utenti finali.

Questo argomento descrive come accedere a un'app AWS Transfer Family Web che sei autorizzato a utilizzare e descrive come interagire con essa.

## Quote per le app Web
<a name="end-user-quotas"></a>

Tieni presente le seguenti limitazioni quando utilizzi app Web.
+ Numero massimo di risultati di ricerca per query: 10.000
+ I bucket Amazon S3 utilizzati dall'app web Transfer Family devono trovarsi nello stesso account dell'app Web stessa. I bucket tra più account non sono attualmente supportati.
+ Ampiezza massima di ricerca per query: 10.000 file ricercati
+ Dimensione massima di caricamento per file: 160 GB (149 GiB)
+ Dimensione massima del file per la copia: 5,36 GB (5 GiB)
+ I nomi di cartella che iniziano o finiscono con punti (.) non sono supportati

## Esperienza utente per gli utenti di IAM Identity Center
<a name="end-user-identity-center"></a>

Questa sezione descrive l'esperienza utente se l'organizzazione ha utilizzato IAM Identity Center per configurare i propri utenti.

**Per accedere a un'app web Transfer Family**

1. Dovresti ricevere un'email da **no-reply@login.awsapps.com** intitolata «Invito a partecipare» AWS IAM Identity Center. Accetta l'invito ad attivare il tuo account utente.

1. Nel messaggio, scegli l'URL sotto l'URL del **tuo portale di AWS accesso**.

   Verrà visualizzata la schermata di AWS accesso.  
![\[Schermata che mostra la schermata di AWS accesso.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-enduser-signin.png)

1. Inserisci le tue credenziali e scegli **Accedi**.

   Si accede a Portale di accesso AWS, che mostra un elenco delle applicazioni disponibili.

1. Scegli l'applicazione per la tua app web Transfer Family.

## Esperienza utente per utenti di provider di identità di terze parti
<a name="end-user-3p"></a>

Se la tua organizzazione non ha utilizzato AWS IAM Identity Center la configurazione dei propri utenti, la tua esperienza di onboarding dipenderà dall'applicazione del provider di identità utilizzata per configurare i propri utenti finali. Dopo l'autenticazione e l'accesso, l'interfaccia dell'app Web è la stessa descritta nella sezione successiva.

**Nota**  
Se un utente appartiene a più gruppi di Active Directory che dispongono di concessioni per lo stesso bucket Amazon S3, il bucket viene visualizzato più volte nell'interfaccia dell'app Web. Ciò si verifica perché l'app Web elenca tutte le sovvenzioni di primo livello associate all'UID o GID dell'utente, incluse le concessioni duplicate allo stesso bucket. Per evitare offerte duplicate, gli amministratori possono consolidare più concessioni in modo che ogni utente abbia una sola concessione per sede Amazon S3.

## Interfaccia utente finale Transfer Family
<a name="end-user-interface"></a>

Dopo l'autenticazione e l'accesso, puoi interagire con l'app web.

Esistono quattro viste principali.
+ **Home page:** la tua home page elenca le sedi S3 a cui puoi accedere, oltre alle autorizzazioni per ciascuna di esse. Una *posizione* S3 è un bucket o prefisso S3, che puoi definire quando usi S3 Access Grants. Questa è la vista iniziale per gli utenti che mostra le risorse S3 di livello principale a cui gli utenti finali hanno accesso e le autorizzazioni per ogni posizione S3.  
![\[Schermata che mostra la posizione principale di un utente finale di un'app Web.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-enduser-home.png)
+ **Dettagli sulla posizione:** questa vista consente agli utenti di sfogliare i file e le cartelle in S3 e di caricare o scaricare i file
+ **Azione sulla posizione:** dopo aver scelto un'azione (come **Carica**), si apre un'altra visualizzazione della posizione del file.
+ **Puntini di **sospensione verticali:** l'icona con i puntini di sospensione verticali apre il menu Azioni.**

## Operazioni disponibili
<a name="end-user-actions"></a>

**La maggior parte delle azioni è disponibile nel menu Azioni.** Per l'altra azione principale, il download dei file, si utilizza l'icona di download dopo aver selezionato un file (attualmente è possibile scaricare solo un file alla volta).

![\[Schermata che mostra i file e le relative icone di download.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-enduser-download.png)


Da una cartella, utilizzate il menu **Azioni** per eseguire una delle seguenti attività:
+ Copiare uno o più file in un'altra posizione.
+ Creare una cartella.
+ Eliminare uno o più file.
+ Carica uno o più file.
+ Carica un'intera cartella (comprese le sottocartelle, se presenti).
+ Seleziona una cartella e accedi ad essa. È quindi possibile eseguire una qualsiasi delle azioni elencate in precedenza.
+ Ordina per pagina.
+ Filtra per nome del file o della cartella per cartella e sottocartelle.

![\[Schermata che mostra una cartella di esempio per un utente finale di un'app Web.\]](http://docs.aws.amazon.com/it_it/transfer/latest/userguide/images/webapp-enduser-actions.png)
