Как установить разрешение на файлы во время выгрузки через Amazon s3 API - PullRequest
2 голосов
/ 05 октября 2010

Есть ли способ установить разрешение для файла во время загрузки файлов через Amazon S3 API.

В моем текущем решении я могу загрузить файл в мое ведро, но я не могу просмотреть файл через URL, который указан в разделе свойств файла. Он открывается, когда я передаю ключи доступа в строке запроса.

Есть ли какие-либо настройки, необходимые в Amazon S3, или мне нужно установить права доступа ко всем файлам во время загрузки.

Заранее спасибо.

Камаль Кант Пансари

Ответы [ 3 ]

3 голосов
/ 24 мая 2012

В C #, когда вы создаете объект ответа> mazon, в методе ответа вы найдете Addheader.

Вам нужно установить заголовок как

response.Addheader("x-amz-acl","public-read");

Amazon, предоставляющий эти методыв API своих веб-сервисов, пожалуйста, укажите это.

3 голосов
/ 05 октября 2010

Добавьте заголовок к вашему запросу PUT:

x-amz-acl: public-read

2 голосов
/ 06 октября 2010

Вы также можете использовать Bucket Policies .

Ниже приведен пример политики сегментов, которая указывает amazon s3 сделать все файлы общедоступными, включая новые загружаемые файлы:

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

Замените your.bucket.name на ваше фактическое имя корзины

Вы можете просматривать и редактировать Bucket Policies с S3 Browser Freeware. Вы можете найти больше примеров Bucket Policies здесь .

...