このガイドは、公開時点で利用可能な最新のバージョンタグである 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"
}
バケット内で利用可能なファイルを誰でも一覧表示できるようにしている行は、'Action' プロパティ内の s3:ListBucket
です。これを削除し、次のコマンドでポリシーを再アップロードします。
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'。‘Access Denied’ と表示される XML 形式のエラーが返ってくれば、想定どおりに動作しています!