在Ruby AWS sdk中迭代s3对象中的对象时拒绝访问

时间:2014-05-06 08:03:05

标签: ruby amazon-s3

我在尝试列出S3中的存储桶时遇到了麻烦。权限由我的客户端设置,我的Ruby脚本不能"看到"桶中的所有对象。我想评估每个对象以查看是否可以进入它,但是对象。在迭代器尝试查询对象上的acl之前,它会抛出一个拒绝访问。

`return_or_raise': Access Denied (AWS::S3::Errors::AccessDenied)
迭代器上的

,意思是我从来没有看过它,看看我是否可以阅读它。从我所看到的,没有关于此的文档,我不认为我应该让我的客户端使对象可列表,以便我的迭代器可以看到它们。如何处理此异常并继续迭代集合,忽略s3客户端抛出的明显致命错误。使用开始/救援是没有用的..

 def order_exists?
   bucket_content = S3Helper.list_bucket_content(@s3,"important_bucket")
     p bucket_content #ok
     bucket_content.objects.each do | s3_object |

       # NEVER dumps, as I don't have access to one of "important_buckets" 
       p s3_object child
     end

奇怪的是,通过控制台,我可以列出所有存储桶,所以我会有相同的IAM用户可以在SDK中列出它们

非常感谢任何帮助...

麦克

0 个答案:

没有答案