Perché AWS consiglia di utilizzare secchi S3 pubblici?


54

"Consigliamo vivamente di non concedere mai alcun tipo di accesso pubblico al tuo bucket S3."

Ho impostato una politica pubblica molto granulare (s3: GetObject) per un bucket che utilizzo per ospitare un sito Web. Route53 supporta esplicitamente l'aliasing di un bucket per questo scopo. Questo avviso è solo ridondante o sto facendo qualcosa di sbagliato?


1
@MichaelHampton Lo mostrerà nella console S3, senza molto contesto aggiuntivo. businessinsights.bitdefender.com/…
ceejayoz

Correlati: AWS può vedere in un bucket privato o deve essere pubblico affinché AWS possa accedere ai file all'interno?
Criggie,

@Criggie AWS è il loro team di supporto? O qualcos'altro?
Ceejayoz,

@ceejayoz sì, il team di supporto AWS.
Criggie il

Immagino che a un certo livello di supporto potrebbero penetrare all'interno, anche se S3 supporta la crittografia con una chiave non Amazon. I loro processi dovrebbero garantire che non vengano eseguiti senza un'autorizzazione esplicita, credo.
Ceejayoz,

Risposte:


69

Sì, se sai cosa stai facendo ( modifica: e anche tutti gli altri che hanno accesso ad esso ...), puoi ignorare questo avviso.

Esiste perché anche le grandi organizzazioni che dovrebbero conoscerle meglio hanno accidentalmente collocato dati privati ​​in bucket pubblici. Amazon ti invierà anche email head-up se lasci i bucket pubblici oltre agli avvisi nella console.

Le informazioni sugli elettori e sulle informazioni militari di Accenture, Verizon, Viacom, Illinois sono state trovate inavvertitamente lasciate aperte a tutti online a causa di errori di configurazione dei silos S3 da parte dei responsabili IT.

Se sei assolutamente sicuro al 100% che tutto nel secchio dovrebbe essere pubblico e che nessuno inserirà accidentalmente dati privati ​​in esso - un sito HTML statico è un buon esempio - allora lascialo pubblico.


2
In pratica, non sei praticamente mai sicuro al 100%, quindi la migliore pratica è non farlo.
Shadur,

Solo pochi mesi fa l'FBI o la CIA hanno lasciato dati privati ​​che avrebbero dovuto essere protetti su un S3 pubblico. Vedrò se riesco a trovare un link all'articolo di notizie.
Reactgular,


Buon padre, puoi guidarmi come consentire specificamente solo al mio sito Web e all'app Android di accedere agli oggetti del mio bucket? Fondamentalmente non voglio che la gente gratta il contenuto del mio secchio. Ma il mio sito Web e la mia app dovrebbero essere in grado di caricarli.
bad_keypoints il

35

Il problema della privacy descritto nella risposta di ceejayoz non è l'unico problema.
La lettura di oggetti da un bucket S3 ha un prezzo. Ti verrà addebitato da AWS per ogni download da questo bucket. E se hai molto traffico (o se qualcuno che vuole danneggiare la tua attività inizia a scaricare file per tutto il giorno) diventerà rapidamente costoso.

Se si desidera che i file dal proprio bucket siano accessibili pubblicamente, è necessario creare una distribuzione Cloudfront che punti e abbia accesso al bucket S3 .

Ora puoi utilizzare il nome di dominio della distribuzione di Cloudfront per pubblicare i tuoi file senza concedere l'accesso S3 al pubblico.
In questa configurazione, paghi per l'utilizzo dei dati di Cloudfront anziché per S3. E a volumi più alti è molto più economico.


2
Anche CloudFlare funziona ed è probabile che sia ancora più economico.
Chrylis
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.