minio文件加密/文件切割合并

springboot2.x + minio7.0.2

本文记录 minio的调用关键步骤和关键文档.  主要记录大文件分片上传和文件合并记录

- minio官网地址  http://www.minio.org.cn

- minio 安装参考官网说明

- mino 文件加密需要https证书. 可以使用签名证书

- minio 服务启动脚本 start.sh

#!/bin/bash

export MINIO_ACCESS_KEY=admin
export MINIO_SECRET_KEY=admin123

# minio 存放位置
dir=/data/menhu/minio

# https证书位置minio/certs 
$dir/minio --certs-dir $dir/certs/ server $dir/data/minio &> $dir/logs/minio.log &

minio 客户端maven配置

<dependency>
    <groupId>io.minio</groupId>
    <artifactId>minio</artifactId>
    <version>7.0.2</version>
</dependency>

minio 配置类

/**
 * minio 配置类
 *
 * @author dennis
 * @date 2021/5/26
 */
@Component
public class MinioConfig {

    @Value("${minio.host:https://play.min.io}")
    private String host;

    @Value("${minio.accessKey:Q3AM3UQ867SPQQA43P2F}")
    private String accessKey;

    @Value("${minio.secretKey:zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG}")
    private String secretKey;
    
    // 文件是否加密存储
    @Value("${minio.encryption:false}")
    private Boolean encryption;

    @Bean
    public MinioClient getMinioClient() {
        try {
            MinioClient minioClient = new MinioClient(host, accessKey, secretKey);
            minioClient.ignoreCertCheck(); //忽略自签名证书有效性
            return minioClient;
        } catch (Exception e) {
            e.printStackTrace();
            throw new ValidatorException(e.fillInStackTrace().getMessage());
        }
    }
    
    /**
     * 如何是https环境可以启用 文件加密
     * @return
     */
    public SecretKey getSecretKey() {
        if (encryption && StringUtils.startsWith(host, "https")) {
            try {
                KeyGenerator aes = KeyGenerator.getInstance("AES");
                aes.init(256);
                return aes.generateKey();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        return null;
    }
}

minio 工具类

/**
 * minio 工具类
 *
 * @author dennis
 * @date 2021/5/26
 */
@Component
public class MinioUtil {

    @Autowired
    private MinioClient minioClient;

    private static final int DEFAULT_
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值