Как получить объекты S3, созданные текущим пользователем в AWS SDK (Ruby on Rails)? - PullRequest
0 голосов
/ 10 июля 2019

Используя AWS SDK, возможно ли программно получить список всех объектов корзины, созданных конкретным пользователем (текущим пользователем)?

Ответы [ 2 ]

0 голосов
/ 10 июля 2019

Невозможно определить «пользователя», создавшего объект.

Когда в Amazon S3 выполняется вызов API для загрузки / создания объекта, проверяются учетные данные, чтобы подтвердить, что они разрешенывыполнить операцию.Как только это будет подтверждено, созданный объект «принадлежит» учетной записи AWS, а не конкретному пользователю в учетной записи.

Вы можете включить ведение журнала уровня объекта для корзины S3 , но это только выводит информацию журнала.Он не связывает объект с пользователем.

0 голосов
/ 10 июля 2019

Это вам поможет:

require 'aws-sdk-s3'  # v2: require 'aws-sdk'

region = 'us-west-2'
s3 = Aws::S3::Resource.new(region: region)

s3.buckets.limit(50).each do |b|
  puts "#{b.name}"
end

Источник

Кроме того, здесь будут перечислены объекты корзины:

s3_bucket.objects.with_prefix('folder_name').collect(&:key)

С версией 2 это:

s3_bucket.objects(prefix: 'folder_name').collect(&:key)

Источник

Сочетание обоих поможет вам достичь вашей цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...