我无法从使用虚拟 MFA 设备配置文件的 IAM 用户账户中删除存储桶
我已经生成了会话 toekns 并将其添加到文件profile
部分~/.aws/credentials
。并且配置文件配置已添加到~/.aws/config
文件中
❯ cat config
[default]
output = json
region = us-east-1
[mfa]
output = json
region = us-east-1
和
[default]
aws_access_key_id = XXXXXXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[mfa]
aws_access_key_id = XXXXXXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXX
aws_session_token = XXXXXXXXXXXXXXXXXXXXX
当我运行命令删除此存储桶时(它是空的)
❯ aws s3 rm s3://iac-bucket --recursive --region us-east-1 --endpoint-url https://s3.us-east-1.amazonaws.com --profile mfa
fatal error: An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
此外,存储桶不会显示在管理控制台或ls
命令中
❯ aws s3 mb s3://iac-bucket --profile mfa
没有输出,并且
❯ aws s3 ls s3://iac-bucket --profile mfa --region us-east-1 --endpoint-url https://s3.us-east-1.amazonaws.com
An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
我通过群组将以下策略附加到此用户
我如何删除这个存储桶?为什么它根本不显示?我知道它存在,因为
❯ aws s3 mb s3://iac-bucket --profile mfa --region us-east-1 --endpoint-url https://s3.us-east-1.amazonaws.com
make_bucket failed: s3://iac-bucket An error occurred (BucketAlreadyExists) when calling the CreateBucket operation: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.
答案1
分区内的存储桶名称必须是唯一的。分区是区域的分组。AWS 目前有三个分区:aws(标准区域)、aws-cn(中国区域)和 aws-us-gov(AWS GovCloud [美国] 区域)。
来自Bucket 命名规则。很可能是该名称的存储桶是由不受您控制的其他帐户创建的。这就是它不显示的原因。据我所知,除了为您的存储桶选择不同的名称外,没有其他方法可以解决这个问题。