2014-12-05 3 views
0

Я могу загружать изображения в ведро Amazon s3 из метеорита, но когда я иду проверять ({my-bucket} .s3.amazonaws.com/{filename}), он дает мне доступ к ошибке отказа.Разрешение ACL в amazon s3

Вот код конфигурации -

S3.config = { 
    key: 'amazons3key', 
    secret: 'amazons3keysecret', 
    bucket: 'my-bucket', 
    acl: 'public-read-write' 
    }; 

Правильно ли это или я что-то пропустил?

я могу получить доступ к одному файлу, если я войти в амазонки s3 и изменить права доступа к файлу их

ответ

0

Проведя несколько часов в этом выпуске, я наконец нашел ответ.

Вы должны изменить политику ведра в Amazon. Под правами/добавить ведро политики добавить этот код -

{ 
    "Version":"2008-10-17", 
    "Statement":[{ 
    "Sid":"AllowPublicRead", 
     "Effect":"Allow", 
     "Principal": { 
      "AWS": "*" 
     }, 
     "Action":["s3:GetObject"], 
     "Resource":["arn:aws:s3:::bucket/*" 
     ] 
    } 
    ] 
} 

Убедитесь, что вы заменить ведро Арн: AWS: s3 ::: ведро/* с ведром name.This пример даст доступ каждому по всем файлам чтения в вашем ковше.

0

Я призываю вас, чтобы проверить

  • Каковы права на уровне ведра?
  • Как вы проверяете свое ведро?

Если вы поместите адрес ведра в браузер, HTTP-вызов будет неаутентифицирован. Вы можете использовать подписанный URL, чтобы подтвердить свою личность на S3, см. http://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURLJavaSDK.html (то же самое относится к другим языкам)

Смежные вопросы