Я создаю настройку для пользователей, чтобы загружать файлы в корзину S3. Пользователи будут входить через Cyberduck S3 для доступа к своим корзинам.
Это базовый c способ размещения файлов:
- bucket / user1 / fileX
- bucket / user1 / fileY
- bucket / user2 / fileX
- bucket / user2 / fileY
Когда пользователь просматривает файлы для загрузки, я бы хотел, чтобы они не могли видеть, какие другие пользователи имеют доступ к корзине. User1 не должен видеть папку user2. Возможно ли это?
Текущая политика:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowUserToSeeBucketListInTheConsole",
"Action": [
"s3:ListAllMyBuckets",
"s3:GetBucketLocation"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::*"
]
},
{
"Sid": "AllowRootAndHomeListingOfCompanyBucket",
"Action": [
"s3:ListBucket"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::bucketname"
],
"Condition": {
"StringEquals": {
"s3:prefix": [
""
]
}
}
},
{
"Sid": "AllowListingOfUserFolder",
"Action": [
"s3:ListBucket"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::bucketname"
],
"Condition": {
"StringLike": {
"s3:prefix": [
"${aws:username}/*"
]
}
}
},
{
"Sid": "AllowAllS3ActionsInUserFolder",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::bucketname/${aws:username}/*"
]
}
]
}