【问题标题】:AWS S3 NotResource/Deny and Resource/ConditionAWS S3 NotResource/Deny 和 Resource/Condition
【发布时间】:2017-10-16 14:34:14
【问题描述】:

我正在尝试按如下方式使用 NotResource/Deny

  "Action": [
    "s3:*"
  ],
  "NotResource": [
    "arn:aws:s3:::bucket/file.txt",
  ],
  "Effect": "Deny"
},

s3:ListObjectVersions 的 StringLike 条件如下

 {
      "Action": [
        "s3:List*"
      ],
      "Resource": [
        "arn:aws:s3:::bucket"
      ],
      "Condition": {
        "StringLike": {
          "s3:prefix": [
            "anotherfile.txt"
          ]
        }
      },
      "Effect": "Allow"
    }

NotResource/Deny 阻塞有条件的资源。有没有办法让这个工作?

【问题讨论】:

  • 你能清楚地知道你想让它工作吗..
  • 我想锁定 S3,以便所有 s3 操作都被拒绝,并且只允许 List* (ListObjectVersions) 用于显示的条件。
  • S3 默认被锁定。如果有允许的操作,您可能需要调查这是如何发生的。另请注意,IAM 政策解释永远不会模棱两可——匹配的Deny 始终优于匹配的Allow

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


【解决方案1】:

优先访问策略如下:

Explicit Deny > Explicit Allow > Default Deny All

根据您的设置映射:

Deny "NotResource" > Allow "StringLike" > Default Deny All

您可以使用以下策略来允许所有其他不是arn:aws:s3:::bucket/file.txt

{
      "Action": [
        "s3:List*"
      ],
      "Resource": [
        "arn:aws:s3:::bucket/*"
      ],
      "Condition": {
        "StringNotEquals": {
          "s3:prefix": "file.txt"
        }
      },
      "Effect": "Allow"
    }

【讨论】:

    猜你喜欢
    • 2020-07-04
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    • 2017-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多