【发布时间】:2015-05-02 10:52:36
【问题描述】:
我的网络应用正在使用 Auth0 和 AWS(委托令牌)来访问 S3 中的一些资源。
我在名为 testinfo 的存储桶中有以下目录结构 -目录1 - 子目录 11 - 子目录 11 -目录2 - 子目录 21 -目录3
我对 S3 存储桶有以下政策。 { “版本”:“2012-10-17”, “陈述”: [ { “席德”:“Stmt1423804993000”, “效果”:“允许”, “行动”: [ “s3:” ], “资源”:[ "arn:aws:s3:::testinfo/Directory1", “arn:aws:s3:::testinfo/Directory1/” ] } ] }
我有以下 javascript 代码来显示存储桶的内容
var getTokenPromise = auth.getToken({api: 'aws', role: "xyz", principal: "xyz"});
getTokenPromise.then(function (value) {
console.log('delegation: ' + value);
bucket = new AWS.S3({params: {Bucket: 'testinfo'}});
bucket.config.credentials =new AWS.Credentials('x','y','z');
bucket.listObjects({}, function (err, data) {
if (err)
alert(err);
var files = [];
for (var i in data.Contents) {
//show files
}
});
}, function (reason) {
console.log('failed: ' + reason);
});
根据策略,仅显示 Directory1 的内容。不幸的是,我遇到了拒绝访问异常。 有人可以帮忙解决这个问题吗?
干杯
【问题讨论】:
标签: javascript amazon-web-services policy auth0