Root 用户被拒绝从 s3 存储桶下载
Root user is denied downloading from s3 bucket
使用 s3cmd
配置我的根权限(访问密钥和密钥)后,每当我尝试使用 sync
或 get
从存储桶下载内容时,我都会收到此消息我的根帐户出现奇怪的权限错误:
WARNING: Remote file S3Error: 403 (Forbidden):
所有者是我使用 IAM 控制台创建的另一个用户,但我认为根用户应始终获得完全且不受限制的访问权限是否正确?
同样使用 aws
-cli 我得到一个未知错误
A client error (Unknown) occurred when calling the GetObject operation: Unknown
我还认为我必须添加一个存储桶策略以允许 root 访问(听起来很奇怪),作为我使用此策略添加匿名访问的第一步
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::myBucket/*"
]
}
]
}
但是还是和上面一样报错。 bucket的拥有者也是root用户(尝试访问的就是owner)。我在这里理解错了什么?如何恢复 root 用户对我自己的 IAM 用户创建的存储桶的访问权限?
最好重新检查存储状态,以及 S3 是否处于生命周期中,这样在这种情况下它就可以转移到 Glacier。在这里,我尝试使用 s3cmd
命令访问 Glacier 对象,但我收到了无信息且不相关的权限错误。最好将此添加为 s3cmd
未来版本的增强功能,以获得更好的 warning/error 消息。
要使任何 S3 读取权限生效,您不仅需要允许这些对象,还需要允许存储桶上的 ListBucket
、ListAllMyBuckets
和 GetBucketLocation
,我的合并版:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "arn:aws:s3:::*"
},
{
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::myBucket/*",
"arn:aws:s3:::myBucket"
]
}
]
}
查看更多示例
使用 s3cmd
配置我的根权限(访问密钥和密钥)后,每当我尝试使用 sync
或 get
从存储桶下载内容时,我都会收到此消息我的根帐户出现奇怪的权限错误:
WARNING: Remote file S3Error: 403 (Forbidden):
所有者是我使用 IAM 控制台创建的另一个用户,但我认为根用户应始终获得完全且不受限制的访问权限是否正确?
同样使用 aws
-cli 我得到一个未知错误
A client error (Unknown) occurred when calling the GetObject operation: Unknown
我还认为我必须添加一个存储桶策略以允许 root 访问(听起来很奇怪),作为我使用此策略添加匿名访问的第一步
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::myBucket/*"
]
}
]
}
但是还是和上面一样报错。 bucket的拥有者也是root用户(尝试访问的就是owner)。我在这里理解错了什么?如何恢复 root 用户对我自己的 IAM 用户创建的存储桶的访问权限?
最好重新检查存储状态,以及 S3 是否处于生命周期中,这样在这种情况下它就可以转移到 Glacier。在这里,我尝试使用 s3cmd
命令访问 Glacier 对象,但我收到了无信息且不相关的权限错误。最好将此添加为 s3cmd
未来版本的增强功能,以获得更好的 warning/error 消息。
要使任何 S3 读取权限生效,您不仅需要允许这些对象,还需要允许存储桶上的 ListBucket
、ListAllMyBuckets
和 GetBucketLocation
,我的合并版:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "arn:aws:s3:::*"
},
{
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::myBucket/*",
"arn:aws:s3:::myBucket"
]
}
]
}
查看更多示例