首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >针对特定文件夹的RW的IAM用户策略

针对特定文件夹的RW的IAM用户策略
EN

Server Fault用户
提问于 2018-02-14 13:25:48
回答 1查看 247关注 0票数 0

我正在试用CloudBerry驱动器工具,将S3存储桶作为我的网络驱动器。我在里面有一个桶和两个文件夹,假设桶名为环境,两个文件夹作为dev和prod。我有三套用户将使用这个-管理,开发和Prod。管理员-必须对这两个文件夹都有R/W权限。Dev -应该只对dev文件夹具有写访问权限,Prod应该有对dev文件夹的读访问权和对prod文件夹的写访问权。

但是,我对IAM权限感到困惑。Admin可以很好地使用S3完全访问权限。但其他两个账户的运作情况并不好。

Dev

代码语言:javascript
复制
{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "VisualEditor0",
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:DeleteObjectVersion",
            "s3:RestoreObject",
            "s3:PutObjectVersionTagging",
            "s3:PutObjectTagging",
            "s3:DeleteObject"
        ],
        "Resource": "arn:aws:s3:::environment/dev/*"
    }
  ]
}

有了这个,我应该能够R/W到开发文件夹,这是我无法做到的。使用CloudBerry驱动器,我可以复制粘贴文件,但不能上传到S3。此外,S3中的文件在这里列出(这是必需的),但不能访问相同的文件(错误附加)。

Prod

代码语言:javascript
复制
{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "VisualEditor0",
        "Effect": "Allow",
        "Action": [
            "s3:DeleteObjectTagging",
            "s3:DeleteObjectVersion",
            "s3:GetObjectVersionTagging",
            "s3:ReplicateTags",
            "s3:RestoreObject",
            "s3:PutObjectVersionTagging",
            "s3:DeleteObjectVersionTagging",
            "s3:ListMultipartUploadParts",
            "s3:ReplicateObject",
            "s3:GetObjectVersionTorrent",
            "s3:PutObject",
            "s3:GetObjectAcl",
            "s3:GetObject",
            "s3:ObjectOwnerOverrideToBucketOwner",
            "s3:GetObjectTorrent",
            "s3:AbortMultipartUpload",
            "s3:GetObjectVersionAcl",
            "s3:GetObjectTagging",
            "s3:PutObjectTagging",
            "s3:GetObjectVersionForReplication",
            "s3:DeleteObject",
            "s3:ReplicateDelete",
            "s3:GetObjectVersion"
        ],
        "Resource": "arn:aws:s3:::environment/Prod"
    }
  ]
}

有了这个,我应该能够R/W到prod文件夹,这是我无法做到的。使用CloudBerry驱动器,我可以复制粘贴文件,但不能上传到S3。

代码语言:javascript
复制
{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "VisualEditor0",
        "Effect": "Allow",
        "Action": [
            "s3:GetObjectVersionTorrent",
            "s3:GetObjectAcl",
            "s3:GetObject",
            "s3:GetObjectTorrent",
            "s3:GetObjectVersionTagging",
            "s3:GetObjectVersionAcl",
            "s3:GetObjectTagging",
            "s3:GetObjectVersionForReplication",
            "s3:GetObjectVersion",
            "s3:ListMultipartUploadParts"
        ],
        "Resource": [
            "arn:aws:s3:::environment"
        ],
        "Condition": {
            "StringLike": {
                "s3:prefix": [
                    "dev/*"
                ]
            }
        }
    }
  ]
}

这里列出了S3中的文件(这是必需的),但无法访问相同的文件(错误附加)。

希望我清楚自己的要求:1.dev用户只能访问dev文件夹,prod用户可以访问prod文件夹,R/W用户可以访问dev文件夹3,所有这些都是使用CloudBerry驱动器为S3完成的。

注意:我已经搜索了很多,并且尝试了几乎所有的东西,包括一些策略,这些策略展示了如何为特定的用户文件夹提供写权限。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2019-01-11 13:30:19

很抱歉写了一个延迟的答案:但是在我的脚本中,用这样的方式改变条件:

代码语言:javascript
复制
"Condition":{"StringLike":{"s3:prefix":["home/David/*"]}}

感谢ceejayoz指出了这个错误。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/897218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档