Un utente esterno ha accesso al nostro secchio S3, utilizzando queste azioni nella nostra politica di secchio:S3: l'utente non può accedere all'oggetto nel suo secchio s3 se creato da un altro utente
"Action": [
"s3:GetObjectAcl",
"s3:GetObject",
"s3:PutObjectAcl",
"s3:ListMultipartUploadParts",
"s3:PutObject"
]
Che user generated temporary credentials, che sono stati poi utilizzati per caricare un file nel nostro bucket.
Ora, non riesco ad accedere al file. Nell'interfaccia utente s3, se tento di scaricare il file, ottengo un 403. Se tento di modificare le autorizzazioni su quell'oggetto, vedo il messaggio: "Spiacenti, non hai le autorizzazioni per visualizzare questo bucket". Se l'utente esterno imposta l'intestazione appropriata (x-amz-acl bucket-owner-full-control) durante il caricamento del file con le credenziali temporanee, posso accedere normalmente al file. Mi sembra strano che, anche se possiedo il bucket, è possibile che l'utente esterno inserisca dei file che non riesco ad accedere.
E 'possibile che ci sia qualche politica posso impostare in modo da poter accedere al file, o in modo che io sono in grado di accedere a qualsiasi di file che viene aggiunto al mio secchio, indipendentemente da come si aggiunge? Grazie!
Hai ragione, e questo è di design. Se consenti ad altri utenti di caricare nel tuo bucket e non imponi 'bucket-owner-full-control' sui caricamenti con il criterio bucket, l'azione * only * disponibile per il proprietario del bucket è di eliminare l'oggetto. Tutto il resto richiede il permesso di essere concesso dal proprietario dell'oggetto. –
molto utile, grazie. – eric
Come nota a piè di pagina, affinché questo funzioni con il comando 'cp' o' mv' l'utente ha bisogno del permesso per l'azione 'PutObjectAcl', questa conoscenza mi risparmierebbe un'ora;) –