Это руководство подготовлено для релиза MinIO RELEASE.2025-05-24T17-08-30Z
, который на момент публикации является последним доступным тегом версии.
bash
mc alias set myminio https://minio.example.com YOUR_ACCESS_KEY YOUR_SECRET_KEY
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 с текстом ‘Access Denied’, значит всё работает как задумано!