Розгублений, чому відповідь не перевіряли?
Розбимо кожну заяву про політику із наведених вище рішень:
Ця заява політика від відноситься до змісту ковша, але не сам долар. Напевно, це не запитання, про яке ви задавались, оскільки ви не бачите, що знаходиться у відрі
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:GetObjectAcl",
"s3:PutObjectAcl",
"s3:ListBucket",
"s3:GetBucketAcl",
"s3:PutBucketAcl",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::your_bucket_here/*",
"Condition": {}
}
Ця політика двох висловлювань, що випливає з, надає лише доступ до відра на ( arn:aws:s3:::your_bucket_here/
) readonly , але все ще дозволяє CRUD відключати вміст відра ( arn:aws:s3:::your_bucket_here/*
).
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation",
"s3:ListBucketMultipartUploads"
],
"Resource": "arn:aws:s3:::your_bucket_here",
"Condition": {}
},
{
"Effect": "Allow",
"Action": [
"s3:AbortMultipartUpload",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:GetObjectVersion",
"s3:GetObjectVersionAcl",
"s3:PutObject",
"s3:PutObjectAcl",
"s3:PutObjectAclVersion"
],
"Resource": "arn:aws:s3:::your_bucket_here/*",
"Condition": {}
}
Однак політика включає заяву нижче, що дозволяє користувачеві бачити всі відрізки в кінцевій точці. Це, мабуть, не те, про що задавали питання.
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "*",
"Condition": {}
}
Однак вищесказане дуже корисно, якщо ви користуєтесь клієнтом, який переглядає магазин S3. Якщо ваш клієнт отримує доступ до магазину, а не до відра безпосередньо, значить, вам потрібен доступ до списку відправ у корені.