Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何解锁或删除无意中使用bucket策略锁定的AWS S3 bucket?_Amazon Web Services_Amazon S3_Aws Cli - Fatal编程技术网

Amazon web services 如何解锁或删除无意中使用bucket策略锁定的AWS S3 bucket?

Amazon web services 如何解锁或删除无意中使用bucket策略锁定的AWS S3 bucket?,amazon-web-services,amazon-s3,aws-cli,Amazon Web Services,Amazon S3,Aws Cli,我是AWS帐户的所有者,管理员(IAM和root密码-我知道不推荐,但有一些依赖root pw的遗留应用程序)。我最近添加了一个bucket策略,该策略随后使bucket锁定为不可访问的: $ aws s3 rb s3://<my-bucket> --force A client error (AccessDenied) occurred when calling the ListObjects operation: Access Denied Completed 1 part(

我是AWS帐户的所有者,管理员(IAM和root密码-我知道不推荐,但有一些依赖root pw的遗留应用程序)。我最近添加了一个bucket策略,该策略随后使bucket锁定为不可访问的:

$ aws s3 rb s3://<my-bucket> --force
A client error (AccessDenied) occurred when calling the ListObjects operation:   Access Denied
Completed 1 part(s) with ... file(s) remaining
remove_bucket failed: s3://<my-bucket>/ A client error (AccessDenied) occurred when calling the DeleteBucket operation: Access Denied
$aws s3 rb s3://--强制
调用ListObjects操作时发生客户端错误(AccessDenied):拒绝访问
已完成1部分,包括。。。剩余文件
remove_bucket失败:s3:///调用DeleteBucket操作时发生客户端错误(AccessDenied):访问被拒绝
我尝试了CLI和AWS S3控制台,但只收到错误:
抱歉!您没有查看此存储桶的权限。

这个水桶完全空了,这让我松了一口气,但我需要使用这个特殊的名称,我被卡住了,因为我不能用它做任何事情

我希望我不是唯一一个经历过这种困境的人

(注意-我会发布我使用的确切bucket策略,但我使用控制台创建了它,如果我输入的某些部分如我所怀疑的不正确,我无法让它为您复制/粘贴到这里…)


问候您,Jeff。

因为您是root用户,我认为这种方法可能会有帮助:

步骤1:创建IAM用户

步骤2:创建具有删除桶权限的策略,并将其与步骤1中创建的IAM用户关联

步骤3:将用户与s3存储桶关联


使用创建的用户凭据登录并尝试删除该存储桶。

如果您以root用户身份登录,请转到S3管理控制台并找到该存储桶

在列表中选择bucket而不打开它

单击“操作”,然后单击“属性”

删除“权限”部分中的bucket策略


然后使用“操作”菜单删除存储桶。

直接从AWS支持:

你好,

G**这里有AWS支持。我知道你对S3的桶政策 bucket“s3 bucket name”阻止访问或删除bucket。那里 有几种方法可以删除bucket策略,如下所示 然后删除存储桶本身:

  • 使用root凭据登录AWS S3控制台。请注意,根帐户与“管理员”帐户不同 访问“[1]。根帐户应有权修改/删除此项 桶政策。不幸的是,我注意到这是一种变化无常的行为 只有在某些情况下才有效的选项。或
  • (选项始终有效)通过AWS cli按如下方式删除存储桶策略(Linux和Windows选项):
  • 通过Linux:$export AWS\u DEFAULT\u REGION=us-east-1$export AWS\u ACCESS\u KEY\u ID=“ROOT\u KEY\u ID”$export AWS\u SECRET\u ACCESS\u KEY=“ROOT\u SECRET\u KEY”$AWS s3api 删除bucket策略——bucket s3 bucket名称

    通过Windows:设置AWS\u默认\u区域=us-east-1设置 AWS\u访问密钥\u ID=“根密钥\u ID”集合 AWS\u SECRET\u ACCESS\u KEY=“ROOT\u SECRET\u KEY”AWS s3api删除存储桶策略 --bucket s3 bucket名称

    如果是这样的话,请您提供以下内容的输出: 设置根帐户凭据:$aws s3api 删除bucket策略--bucket s3 bucket name--调试

    请注意,它们都使用根帐户凭据。请 尝试这些方法,如果您有任何问题,请告诉我。我希望 这一信息很有帮助。请随时与我联系 任何其他问题或顾虑

    [1] 根帐户与IAM用户-

    向你问好,G**

    选择2对我有效


    干杯

    lonewarrior556选项2也适用于我(完全跳过了选项1)-非常感谢!这对macOS Sierra也很有效。选项2对我来说很成功,谢谢。不过,我最终还是不得不在EC2实例上做了,它似乎不喜欢我在VPC之外做这件事。完成后不要忘记删除根密钥/机密!