Как дать нескольким пользователям доступ к одной учетной записи Amazon S3 И определить, кто добавил файл? - PullRequest
2 голосов
/ 08 марта 2012

У меня есть аккаунт AWS S3, который содержит 3 корзины. Мне нужно иметь возможность генерировать коды доступа для нового пользователя, чтобы они могли получить доступ к корзинам и добавлять / удалять файлы (желательно только свои, но не прерыватели сделки).

Мне удалось получить доступ к новым пользователям, использующим IAM. Однако когда я читаю метаданные загруженных объектов (в PHP с использованием AWS SDK), владелец возвращается в качестве основной учетной записи AWS.

Я прочитал страниц документации, но не могу найти ничего, связанного с определением, кто был владельцем (или загрузчиком) файла.

Любой совет или направление высоко ценится!

Спасибо.

1 Ответ

2 голосов
/ 24 марта 2012

Если ваша единственная проблема - найти владельца загруженного файла.

Вы можете передать информацию о владельце в виде метаданных загруженного файла.Проверьте http://docs.amazonwebservices.com/AmazonS3/latest/dev/UsingMetadata.html

в php-коде при загрузке:

// Instantiate the class.
$s3 = new AmazonS3();

$response = $s3->create_object(
$bucket,
$keyname2,
array(
   'fileUpload'  => $filePath,
   'acl'         => AmazonS3::ACL_PUBLIC,
   'contentType' => 'text/plain',
   'storage'     => AmazonS3::STORAGE_REDUCED,
   'headers'     => array( // raw headers
                      'Cache-Control'    => 'max-age',
                      'Content-Encoding' => 'gzip',
                      'Content-Language' => 'en-US',
                      'Expires'       => 'Thu, 01 Dec 1994 16:00:00 GMT',
      ),
     'meta'     => array(
                     'uploadedBy' => 'user1',
     ) )
);
print_r($response);

Проверьте php api для получения дополнительной информации.

...