【问题标题】:Receiving Access Denied when trying to access Amazon AWS S3 service with nodejs尝试使用 nodejs 访问 Amazon AWS S3 服务时接收访问被拒绝
【发布时间】:2015-07-27 08:19:30
【问题描述】:
var AWS = require('aws-sdk');
var S3FS = require('s3fs');

AWS.config.update({region: 'us-east-1'});
var options = {}; 
exports.storeMedia = function(req, res){
        var fsImpl = new S3FS('test-bucket', options);
        fsImpl.writeFile('message.txt', 'Hello Node', function (err) {
                  if (err) throw err;
                    console.log('It\'s saved!');
        }); 
}

我的代码只是我尝试从文档样本中测试的示例代码。我已将 aws 密钥 ID 和密钥保存在我的 macbook 上 .aws 下的凭证文件中。我已经建立了一个用户并为其分配了访问策略,以便我能够通过 AWS 控制台上的分配用户获取和放置对象。我还应该看什么?显然,我缺少一些基本的东西,只需要一点帮助就可以了。

【问题讨论】:

    标签: node.js amazon-web-services amazon-ec2 amazon-s3


    【解决方案1】:

    我研究了一些额外的东西。一,我查看了来自https://www.npmjs.com/package/s3fs 的模块页面,其中列出了 s3fs 所需的最低权限。 其次,我尝试使用基础 aws-sdk。我很惊讶地发现我可以毫无问题地做一个 ListBucket。然后,我尝试将一个对象放入现有的存储桶中,并且没有问题。我能够在这方面取得进展,但我需要更多地了解我可能没有给予哪些特权,以便我清楚地了解缺少哪些特权。

    我的存储桶政策如下:

    {
        "Version": "2012-10-17",
        "Id": "Policy1437933054275",
        "Statement": [
            {
                "Sid": "Stmt1437932987273",
                "Effect": "Allow",
                "Principal": "*",
                "Action": "s3:*",
                "Resource": [
                    "arn:aws:s3:::meetsites-images/*",
                    "arn:aws:s3:::meetsites-images"
                ]
            }
        ]
    }
    

    用户的策略是

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "s3:*",
                "Resource": "*"
            }
        ]
    }
    

    我也能找到一个关于这个主题的好博客,很难找到更好的提及 [a link] (http://blogs.aws.amazon.com/security/post/TxPOJBY6FE360K/IAM-policies-and-Bucket-Policies-and-ACLs-Oh-My-Controlling-Access-to-S3-Resourc)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-30
      • 1970-01-01
      • 2017-08-04
      相关资源
      最近更新 更多