5

Alla fine del capitolo 11 di The Rails Tutorial di Michael Hartl sono riuscito a abilitare i caricamenti degli utenti al servizio Amazons S3 creando un bucket, utilizzando IAM per impostare un utente e concedere l'utente una politica di AmazonS3FullAccess. Sembra sporco e poco sicuro consentire a un utente sconosciuto sul mio sito web di avere pieno accesso a un bucket per il caricamento delle immagini sul mio sito Web e non sono sicuro se dovrei sentirmi in questo modo. Ho creato un criterio personalizzato aAutorizzazioni appropriate per s3 per gli utenti che caricano file di immagini con carrierwave

Quale è la seguente:

 { 
     "Version": "2012-10-17", 
     "Statement": [ 
     { 
      "Sid": "Stmt1445501067518", 
      "Action": [ 
      "s3:GetObject", 
      "s3:PutObject" 
      ], 
      "Effect": "Allow", 
      "Resource": "arn:aws:s3:::bucketname" 
     } 
     ] 
    }

Non sono fiducioso nella mia soluzione e non sono riuscito a trovare alcuna risposta googling per il modo migliore per andare su questo. Sto usando carrierwave (con l'intenzione di usare carrierwave_direct per il mio progetto), nebbia e gemme mini_magick.

risposta

4

Il modo migliore e probabilmente il più sicuro per consentire agli utenti di caricare file sul tuo sito (ad esempio S3) è utilizzare i caricamenti dei post basati sul browser.

Ciò consente agli utenti di caricare direttamente su S3 senza dover passare attraverso i server. Sui server si crea semplicemente una firma della richiesta utilizzando le chiavi di accesso.

Si può leggere di più su di esso qui: Browser Based Uploads Using Post

io non sono a conoscenza carrierwave me stesso, ma si possono trovare questo utile: Uploading directly to S3 in rails

+0

Grazie per la risposta io check this out. –

Problemi correlati