首页 > 解决方案 > IAM 用户的读/写 AWS S3 策略在哪里

问题描述

我正在添加一个 IAM 用户,用于从 React Native 应用程序对 AWS S3 存储桶中的对象进行读写访问。我计划使用签名 URL 来访问 S3 存储桶中的对象,因此该策略应该用于以编程方式访问。创建 IAM 用户只是为了对 S3 存储桶进行读/写访问。当我打开现有策略可供选择时,只有 4 个 S3 相关策略:

在此处输入图像描述

我可以使用只读访问。但是我没有找到写访问权限。对存储桶的完全访问似乎需要付出很多。其中一些还描述了管理控制台的使用,我不确定该策略是否可以以编程方式使用。

标签: amazon-s3

解决方案


您似乎在询问如何将特定存储桶的读取和写入权限分配给特定用户。

这可以通过将内联策略附加到 IAM 用户来完成。它会是这样的:

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:ListAllMyBuckets"
         ],
         "Resource":"arn:aws:s3:::*"
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:ListBucket",
            "s3:GetBucketLocation"
         ],
         "Resource":"arn:aws:s3:::examplebucket"
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:PutObject",
            "s3:PutObjectAcl",
            "s3:GetObject",
            "s3:GetObjectAcl",
            "s3:DeleteObject"
         ],
         "Resource":"arn:aws:s3:::examplebucket/*"
      }
   ]
}

请注意,某些权限是针对存储桶授予的(例如ListBucket),而某些权限是在存储桶内授予(例如GetBucket)。

请参阅:用户策略示例 - Amazon Simple Storage Service


推荐阅读