J'essaie d'utiliser une requête ajax pour obtenir tous les fichiers image dans un sous-dossier de mon compartiment s3.Accès aux fichiers dans le sous-dossier AWS S3
J'ai rendu le sous-dossier public en utilisant le menu déroulant (voir image), mais je reçois toujours une réponse 403 (Forbidden)
. J'ai également essayé d'ajouter une politique de compartiment pour ce dossier spécifique mais toujours pas de chance.
Y a-t-il quelque chose que je devrais faire en ce qui concerne les permissions que je manque? J'aurais pensé que rendre le sous-dossier public aurait fait l'affaire.
Voici mon code d'appel si cela aide:
var imgUrl = "http://s3.amazonaws.com/[BUCKET NAME]/images/gallery";
var loadedImages;
var imgData = {
images: []
}
$.ajax({
url: imgUrl,
success: function getData(data) {
$(data).find("a").attr("href", function(i, val) {
if (val.match(/\.(jpe?g|png|gif)$/)) {
loadedImages = $(this).attr("href"),
imgData.images.push($(loadedImages));
console.log(imgData)
}
});
}
});
EDIT: Voici ma permission seau dans son état actuel:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::[BUCKET NAME]/*"
},
{
"Sid":"PublicReadGetObject",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::[BUCKET NAME]/images/gallery/*"
]
}
]
}
vous trouverez peut-être cette page https://brandonwamboldt.ca/understanding-s3-permissions-1662/ intéressante – Vorsprung
connexes: https://stackoverflow.com/questions/41251450/how-to -make-ajax-call-à-aws-s3-bucket-to-get-file-names-from-folder – jarmod
Notez que "make public" s'applique uniquement aux objets existants, pas aux futurs objets. –