当前位置: 首页 > news >正文

Minio使用https自签证书

自签证书参考:window和ubuntu自签证书_windows 自签证书-CSDN博客

// certFilePath: 直接放在 resources 目录下 或者可以自定实现读取逻辑  // 读取的是  .crt 证书文件public static OkHttpClient createTrustingOkHttpClient(String certFilePath) throws Exception {// 1. 加载证书CertificateFactory cf = CertificateFactory.getInstance("X.509");InputStream certInput = SSLUtil.class.getClassLoader().getResourceAsStream(certFilePath);if (certInput == null || certInput.available() == 0) {throw new RuntimeException("证书读取失败");}X509Certificate ca = (X509Certificate) cf.generateCertificate(certInput);// 2. 创建KeyStore并导入证书KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());keyStore.load(null, null);keyStore.setCertificateEntry("ca", ca);// 3. 创建TrustManager信任我们的KeyStoreTrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());tmf.init(keyStore);// 4. 创建SSLContextSSLContext sslContext = SSLContext.getInstance("TLS");sslContext.init(null, tmf.getTrustManagers(), null);// 5. 创建OkHttpClientreturn new OkHttpClient.Builder().sslSocketFactory(sslContext.getSocketFactory(), (X509TrustManager) tmf.getTrustManagers()[0]).hostnameVerifier((hostname, session) -> true) // 可选:禁用主机名验证.build();}public static void main(String[] args) throws Exception {// 构建 OkHttpClientOkHttpClient insecureClient = createTrustingOkHttpClient("test_10.crt");MinioClient client = MinioClient.builder().endpoint("https://192.168.0.101:9000").credentials("abc-bucket", "123456").region("us-east-1").httpClient(insecureClient).build();List<Bucket> buckets = client.listBuckets();System.out.println(buckets);}

相关文章:

  • Excel学习01
  • 面试题:设计一个分布式“附近的人”功能(如微信附近的人、交友应用位置匹配)
  • 数字华容道智力小游戏微信流量主小程序开源
  • ros中相机话题在web页面上的显示,尝试js解析sensor_msgs/Image数据
  • DHCP服务
  • 亚马逊云科技中国峰会召开 解码Agentic AI时代企业加速创新路径
  • 猜数字小游戏微信流量主小程序开源
  • [Data Pipeline] docs | Mysql源 | Spark处理
  • c++ STL---vector使用
  • web布局02
  • (十六)深入了解 AVFoundation - 编辑:音视频裁剪与拼接的Demo项目实现
  • 如何将文件从安卓设备传输到电脑?
  • 如何使用 USB 数据线将文件从 PC 传输到 iPhone
  • 编程马拉松的定义、运作与发展
  • Linux内存进阶
  • OpenAI的Prompt工程
  • ABP VNext + MongoDB 数据存储:多模型支持与 NoSQL 扩展
  • 动态规划算法思路详解
  • 基于微信小程序在肠造口病人健康宣教中的应用
  • C#编程与1200PLC S7通信
  • 零基础学习网站建设/搜索引擎优化的含义
  • 学习做网站的网站/推广方案应该有哪些方面
  • 有没有专门做图的网站/百度查一下
  • 网站给他人做付刑事责任/上海疫情最新情况
  • 重庆做木门网站公司/最近一周的重大热点新闻
  • 和外国人做古玩生意的网站/域名信息查询网站