【问题标题】:S3 Bucket Creation: Restrict to Specific Name PatternS3 存储桶创建:仅限于特定名称模式
【发布时间】:2017-09-24 22:48:20
【问题描述】:

有没有办法指定存储桶创建策略,使分配了角色的用户只能创建具有指定名称模式(例如company-dbbackup-*)的存储桶,而不能创建其他名称模式?

例如,将允许用户创建名称为 company-dbbackup-March2017company-dbbackup-fullarchive 但不能使用 test-bucketname-invalid 的存储桶。

我现在拥有的:

{
    "Sid": "Stmt1493212897117",
    "Action": [
        "s3:CreateBucket",
        "s3:ListAllMyBuckets"
    ],
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::*"
}

但这允许我创建任何名称的存储桶。

【问题讨论】:

    标签: amazon-web-services amazon-s3 amazon-iam


    【解决方案1】:

    事实证明它相对简单(除非我忽略了一些东西)。我只是将权限拆分如下:

    {
        "Sid": "RestrictCreationToNamePolicy",
        "Action": [
            "s3:CreateBucket"
        ],
        "Effect": "Allow",
        "Resource": "arn:aws:s3:::company-dbbackup-*"
    }
    
    {
        "Sid": "AllowListingOfBuckets",
        "Action": [
            "s3:ListAllMyBuckets"
        ],
        "Effect": "Allow",
        "Resource": "arn:aws:s3:::*"
    }
    

    我还没有找到一种方法来限制仅列出具有命名策略的存储桶。如果我将第二条语句限制为资源 arn:aws:s3:::company-dbbackup-*,则在尝试列出存储桶时会收到拒绝访问。

    编辑:显然限制列表是不可能的,here's a good Stack Overflow answer 有可能的解决方法。这是also another good discussion

    【讨论】:

      猜你喜欢
      • 2020-07-16
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      • 2022-06-21
      • 2019-08-02
      • 1970-01-01
      • 2018-09-07
      相关资源
      最近更新 更多