From a8f6916b49d9f3afa55ba2cc7eb5de340b11f363 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 4 Jul 2025 18:13:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/nflg/wms/starter/config/MinIOConfig.java | 4 ++++ .../nflg/wms/starter/service/impl/MinIOServiceImpl.java | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/MinIOConfig.java b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/MinIOConfig.java index 789ba52a..5b41f4dc 100644 --- a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/MinIOConfig.java +++ b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/MinIOConfig.java @@ -3,6 +3,7 @@ package com.nflg.wms.starter.config; import io.minio.BucketExistsArgs; import io.minio.MakeBucketArgs; import io.minio.MinioClient; +import io.minio.SetBucketPolicyArgs; import jakarta.annotation.PreDestroy; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; @@ -39,6 +40,9 @@ public class MinIOConfig { if (!client.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build())) { client.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build()); } + String policyJsonString = """ + {"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":"*","Action":"s3:GetObject","Resource":"arn:aws:s3:::%s/*"}]}""".formatted(bucketName); + client.setBucketPolicy(SetBucketPolicyArgs.builder().bucket(bucketName).config(policyJsonString).build()); return client; } diff --git a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/service/impl/MinIOServiceImpl.java b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/service/impl/MinIOServiceImpl.java index a252cdeb..982dad66 100644 --- a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/service/impl/MinIOServiceImpl.java +++ b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/service/impl/MinIOServiceImpl.java @@ -39,6 +39,12 @@ public class MinIOServiceImpl implements FileUploadService { .object(filePath) .stream(stream, stream.available(), -1) .build()); - return StrUtil.format("{}/{}", domain, filePath); +// return minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder() +// .method(Method.GET) +// .bucket(bucketName) +// .object(filePath) +// .expiry(7, TimeUnit.DAYS) +// .build()); + return StrUtil.format("{}/{}/{}", domain,bucketName, filePath); } }