在AWS中,您可以使用存储桶策略和访问控制列表(ACL)来控制存储桶的访问权限。如果您阻止了存储桶的公共访问权限,这将影响其他AWS账号的访问,除非您为这些账号授予了适当的访问权限。
以下是一个示例的解决方法,阻止所有存储桶的公共访问权限,并允许指定的AWS账号访问存储桶:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BlockPublicAccess",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::your-bucket-name/*",
"Condition": {
"Bool": {
"aws:SecureTransport": "false"
}
}
},
{
"Sid": "AllowAccessForSpecificAccount",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::account-id:user/username"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::your-bucket-name",
"arn:aws:s3:::your-bucket-name/*"
]
}
]
}
替换your-bucket-name
为您的存储桶名称,account-id
为您的AWS账号ID,username
为您的IAM用户名。
aws s3api put-bucket-policy --bucket your-bucket-name --policy file://policy.json
确保您已配置AWS CLI并具有适当的权限来执行此命令。
上述策略将阻止存储桶的公共访问权限,并允许特定的AWS账号访问存储桶。您可以根据需要修改策略文件,以满足您的具体需求。
上一篇:AWS:主机名没有关联的地址。