

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

# GAMESEC04-BP01 Limita l'accesso ai contenuti scaricabili a clienti e utenti autorizzati
<a name="gamesec04-bp01"></a>

 Limita l'accesso ai contenuti del gioco da parte di applicazioni e client autorizzati. Prendi in considerazione l'utilizzo di Amazon S3 come fonte economica e scalabile per l'archiviazione di contenuti di gioco scaricabili e Amazon per fornire CloudFront ai giocatori una distribuzione di contenuti efficiente a livello globale. Entrambi i servizi forniscono meccanismi integrati per limitare l'accesso ai dati archiviati, ad esempio limitare l'accesso agli utenti autenticati. 

 **Livello di rischio associato se questa best practice non fosse adottata:** elevato 

## Guida all’implementazione
<a name="implementation-guidance-24"></a>

 **Concessione dell'accesso ai contenuti archiviati in Amazon S3 ** 

 Quando devi concedere l'accesso ai contenuti archiviati in S3, ci sono diversi fattori da considerare. Per impostazione predefinita, solo chi Account AWS ha creato un bucket S3 può accedere agli oggetti memorizzati al suo interno. Per concedere l'accesso alle tue applicazioni interne e gestire i contenuti archiviati nei bucket Amazon S3, utilizza [AWS Identity and Access Management (IAM) ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) per creare policy che forniscano l'accesso appropriato.  

 [I ruoli IAM ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) possono essere associati a utenti, sistemi o applicazioni federati ospitati in servizi, come Amazon EC2 AWS Lambda, e applicazioni basate su container ospitate in Amazon EKS e Amazon ECS. Ad esempio, potresti utilizzare l' AWS SDK o pubblicare e gestire risorse di contenuti AWS CLI di gioco in bucket S3. Per supportare questo caso d'uso, puoi creare un ruolo IAM con accesso appropriato per leggere e scrivere contenuti di gioco nei tuoi bucket S3 e associarlo alle istanze EC2 che ospitano il tuo software e i tuoi script. 

 Resource-based le policy possono essere definite per il bucket e per oggetti specifici. [https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html)Le policy dei bucket S3 sono associate a un bucket S3 e possono essere utilizzate per limitare l'accesso al bucket e agli oggetti al suo interno, nonché per concedere l'accesso alle risorse Amazon S3 da altri account. Ad esempio, in scenari in cui più team o studi di sviluppo di giochi separati lavorano sugli stessi contenuti di gioco e richiedono lo stesso accesso ai contenuti ospitati centralmente in Amazon S3, puoi utilizzare una policy bucket S3 per definire le autorizzazioni per l'accesso tra account alle risorse S3. Prendi in considerazione l'utilizzo dei punti di accesso [ S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html), che possono semplificare la gestione dell'accesso ai dati condivisi creando punti di accesso con nomi e autorizzazioni specifici per ogni applicazione o set di applicazioni. La documentazione di Amazon S3 contiene [ best practice aggiuntive per il controllo degli accessi in Amazon S3. ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-best-practices.html#access-control-best-practices-store-share) 

```
Granting short-term access to your content
```

 Se l'accesso è necessario solo per un determinato periodo di tempo limitato, genera URL temporanei che consentano l'accesso a breve termine ai tuoi contenuti. Amazon S3 fornisce supporto per la generazione di URL [ prefirmati](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html), che consentono ai proprietari degli oggetti di concedere un accesso limitato nel tempo agli oggetti in Amazon S3 senza aggiornare la policy del bucket. In questo modo, all'utente finale o all'applicazione a cui viene concesso l'accesso non è necessario disporre di un account o di autorizzazioni IAM e utilizza invece l'URL prefirmato per accedere al contenuto.  

 Si tratta di una best practice comunemente utilizzata in diversi casi d'uso dei giochi, ad esempio per concedere ai giocatori autorizzati l'accesso ai contenuti scaricabili a cui hanno diritto e fornire l'accesso temporaneo a contenuti di gioco per un periodo limitato. Gli URL prefirmati possono essere utilizzati anche per fornire autorizzazioni temporanee per il caricamento di contenuti in un bucket S3. Ad esempio, potresti prendere in considerazione l'utilizzo di un URL prefirmato per fornire a un giocatore l'accesso ai log dei clienti per aiutare il tuo team di supporto a risolvere un caso di assistenza ai giocatori. 

 **Utilizzare una rete di distribuzione di contenuti per fornire l'accesso ai tuoi contenuti ** 

 Sebbene le tue applicazioni, gli sviluppatori di giochi, gli artisti e altro personale possano aver bisogno di accedere direttamente ai contenuti dei bucket S3 per scopi di sviluppo e gestione, utilizza una rete di distribuzione dei contenuti per fornire l'accesso ai contenuti che sono disponibili pubblicamente ai giocatori o ad altri utenti su Internet. Questo approccio migliora le prestazioni di download e riduce i costi memorizzando nella cache i contenuti a cui si accede di frequente. Amazon CloudFront può distribuire a livello globale i tuoi contenuti memorizzandoli nella cache e rendendoli più vicini ai tuoi giocatori, riducendo al contempo il carico sull'origine del download del gioco, come Amazon S3. 

 Anziché pubblicare i tuoi contenuti pubblici direttamente dai bucket S3, ti consigliamo di mantenerli privati e di pubblicarli utilizzando. CloudFront CloudFront può essere configurato per richiedere ai giocatori di accedere ai tuoi contenuti privati (ad esempio il download di un nuovo gioco solo per i giocatori a pagamento) utilizzando URL [ firmati ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html) o [ cookie firmati. ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html) Puoi quindi sviluppare la tua applicazione per creare e distribuire URL firmati agli utenti autenticati o per inviare intestazioni set-cookie che impostano cookie firmati per utenti autenticati. Quando crei URL firmati o cookie firmati per controllare l'accesso ai tuoi file, puoi specificare una data e un'ora di fine, dopo le quali l'URL e i cookie non sono più validi.  

 Facoltativamente, puoi anche specificare l'indirizzo IP o l'intervallo di indirizzi dei computer che possono essere utilizzati per accedere ai tuoi contenuti, il che è utile se desideri limitare l'accesso a specifici partner di studi di sviluppo di giochi o reti di appaltatori. Utilizza i cookie firmati quando desideri fornire l'accesso a più file con restrizioni o se non desideri modificare gli URL correnti. Utilizza gli URL firmati quando desideri limitare l'accesso a singoli file o se i tuoi utenti utilizzano un client che non supporta i cookie. Gli URL firmati hanno la precedenza sui cookie firmati. 

### Passaggi dell’implementazione
<a name="implementation-steps-24"></a>
+  Utilizza i ruoli e le policy dei bucket IAM per concedere l'accesso appropriato ai bucket S3 per applicazioni interne, team o scenari con più account. 
+  Genera URL prefirmati per concedere l'accesso a breve termine agli oggetti S3, adatti per contenuti scaricabili o caricamenti temporanei come i log dei clienti. 
+  Usa Amazon CloudFront con URL o cookie firmati per fornire contenuti privati in modo più sicuro agli utenti autenticati 