我有一个 TypeScript 应用程序,lists a buckets从 aws-s3。问题是,我的凭据只允许我与特定的人进行交互(读 / 写)。
下面是一个例子:
ListBuckets
returns['bucket-1','bucket-2','bucket-3','bucket-4']
但是,我的凭证 / ACL 只允许我读取 / 写入['bucket-2', 'bucket-4']
那么,我怎么能只列出我被允许读 / 写的桶?
这是我的代码:
const localS3Object = new AWS.S3();
// ... the localS3Object is initialized with the secrets in here
localS3Object.listBuckets(function(err: AWS.AWSError, data) {
if (err) {
resolve({
connected: false,
resources: undefined
});
} else {
resolve({
connected: true,
resources: data.Buckets
});
}
});

不幸的是,没有真正的好方法来做你想做的事情。listBuckets
操作(ListAllMyBuckets
权限)是一个全有或全无的操作。您可以做的最好的事情是自己过滤掉存储桶,可能是尝试采取一些措施(listObjects
也许),看看您是否收到权限错误。无论如何都不优雅。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(52条)