From 3bfcb8cb9cb8c15630b4a9c957b45a2d66db1075 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Fri, 23 Jan 2026 18:03:26 +0800
Subject: [PATCH] 2026-01-23 zwy HTTPS的临时凭证给大疆测试媒体文件上传
---
ard-sample/src/main/java/com/ard/sample/utils/MinioStsUtils.java | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/ard-sample/src/main/java/com/ard/sample/utils/MinioStsUtils.java b/ard-sample/src/main/java/com/ard/sample/utils/MinioStsUtils.java
index bea7e67..4208225 100644
--- a/ard-sample/src/main/java/com/ard/sample/utils/MinioStsUtils.java
+++ b/ard-sample/src/main/java/com/ard/sample/utils/MinioStsUtils.java
@@ -7,6 +7,8 @@
import okhttp3.OkHttpClient;
import org.springframework.stereotype.Component;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.security.NoSuchAlgorithmException;
import java.security.ProviderException;
import java.util.concurrent.TimeUnit;
@@ -25,10 +27,14 @@
// 构建适配HTTP协议的OkHttpClient(移除所有SSL相关配置)
OkHttpClient httpClient = new OkHttpClient.Builder()
// 保留原代码的连接池配置(禁用连接复用,如需复用可删除此行)
- .connectionPool(new ConnectionPool(0, 1, TimeUnit.SECONDS))
+ .connectionPool(new ConnectionPool(5, 30, TimeUnit.SECONDS))
+ .connectTimeout(10, TimeUnit.SECONDS) // 连接超时
+ .readTimeout(30, TimeUnit.SECONDS) // 读取超时
+ .writeTimeout(30, TimeUnit.SECONDS) // 写入超时
.build();
// 构建 AssumeRoleProvider,使用简化后的HTTP客户端
+ String roleSessionName = "dji-sts-session-" + System.currentTimeMillis(); // 唯一会话名称(必需,避免重复)
AssumeRoleProvider provider = new AssumeRoleProvider(
endpoint, // 注意:此处endpoint需改为HTTP地址(如 http://sts.example.com)
accessKey, // 主账号AccessKey
@@ -36,10 +42,14 @@
Math.toIntExact(expire), // 凭证过期时间(转int)
null, // 可选参数(如RoleArn,根据实际SDK调整)
region, // 地域(如cn-hangzhou)
- null, null, null, // 其他可选参数
+ null,
+ roleSessionName,
+ null, // 其他可选参数
httpClient // 传入HTTP版本的OkHttpClient
);
+ log.info("生成临时凭证条件:{}",provider);
+
// 获取 STS 临时凭证
var stsCredentials = provider.fetch();
return new CredentialsDTO(stsCredentials, expire);
--
Gitblit v1.9.3