我在尝试托管我的棱角应用程序。但是当我公开我的桶并启用静态网站托管后,当我尝试访问它时,我仍然可以得到403。水桶政策似乎出了点问题,但我不知道哪里错了。请给我任何建议。谢谢。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::[my-bucket-name]"
}
]
}发布于 2022-12-04 10:56:25
安全建议:上面的桶策略允许世界上的任何人使用您的桶做任何事情,包括上传文件、下载文件、删除文件和删除桶本身。从不在桶策略中授予s3:*权限。(它有一个错误,详见下文,它阻止了一些这些操作,但警告仍然有效。)
至于您的403错误,亚马逊S3中的一些操作适用于桶本身,而一些操作则适用于objects。
例如,列出存储桶的内容需要对桶本身的权限:
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::[my-bucket-name]"存储桶中的对象上的操作需要对象级别的权限
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::[my-bucket-name]/*"末端的/*向桶中的任何对象授予权限。
因此,如果您希望使桶“公开”,以便任何人如果知道对象的名称,就可以在桶中读取/下载对象,则可以使用以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::[my-bucket-name]/*"
}
]
}https://stackoverflow.com/questions/74673788
复制相似问题