如何防止删除S3存储桶?


Answers:


16

AWS策略生成器是勘探和这些政策的创建一个非常有用的工具,它的使用在相应的说明介绍的博客文章(直接链接到它,它是同时可沿着内大多数政策报名表格AWS管理控制台以及)。

我已经根据您的规范创建了一个示例(当然,请确保为您自己的资源生成一个新的示例):

{
  "Id": "ExamplePolicyId12345678",
  "Statement": [
    {
      "Sid": "ExampleStmtSid12345678",
      "Action": [
        "s3:DeleteBucket"
      ],
      "Effect": "Deny",
      "Resource": "arn:aws:s3:::test-example-com",
      "Principal": {
        "AWS": [
          "*"
        ]
      }
    }
  ]
}

请注意,AWS管理控制台当前既不隐藏delete命令,也没有报告其执行对于具有此类策略的存储桶而言不成功,但是,该存储桶仍然存在;)


您仍然可以通过登录AWS控制面板删除存储桶吗?
Henley Chiu

万分谢意。我刚刚将此应用到了一个我不想被意外删除的存储桶中。并不是说我特别想在我的活动存储桶上测试删除;)
克里斯·

5

因此,@ Steffen的答案是正确的,但我想提出另一个重要说明。虽然该策略可以防止实际的存储桶被删除。它无法防止删除存储桶中的项目。这是有道理的,但是您应该知道的是,在AWS控制台中,如果您选择Delete bucket,它将删除存储桶中的所有项目,然后无法删除存储桶。因此,您存储在存储桶中的所有数据都会消失。起初这并不明显,如果某人不知道,可能会给他们带来严重的问题。

TL;DR; Trying to delete the bucket even with delete bucket prohibited will kill all the items in the bucket but keep the bucket around


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.