Это руководство создано для выпуска MinIO RELEASE.2025-05-24T17-08-30Z
.
bash
mc alias set myminio https://minio.example.com ВАШ_КЛЮЧ_ДОСТУПА ВАШ_СЕКРЕТНЫЙ_КЛЮЧ
mc mb myminio/public
bash
mc anonymous set download myminio/public
Это делает следующее:
Сначала выполните следующую команду, чтобы получить текущую политику JSON, созданную на предыдущем шаге.
bash
mc anonymous get-json myminio/public
Вывод будет выглядеть так: «Это политика, определенная пресетом 'download'.
json
{
"Statement": [
{
"Action": [
"s3:GetBucketLocation",
"s3:ListBucket"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3::: public"
]
},
{
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3::: public/*"
]
}
],
"Version": "2012-10-17"
}
Строка, которая позволяет любому перечислять файлы в корзине, это s3:ListBucket
в свойстве 'Action'. Просто удалите её и загрузите политику снова с помощью следующей команды.
bash
mc anonymous set-json /path-to-your-edited-json-policy.json myminio/public
Файл /path-to-your-edited-json-policy.json
содержит отредактированную версию вашей политики.
json
{
"Statement": [
{
"Action": [
"s3:GetBucketLocation"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3::: public"
]
},
{
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3:::public/*"
]
}
],
"Version": "2012-10-17"
}
Откройте корень вашей конечной точки MinIO S3. Например: 'youbucket.s3.yourdomain.com'. Если вы получаете ошибку формата XML с сообщением «Доступ запрещен», то всё работает как надо!