一、后端加密,前端直传
1. WED端直传的流程图
SecretId SecretKey等参数可以参考官方文档获取
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>cos_api</artifactId>
<version>5.6.24</version>
</dependency>
<dependency>
<groupId>com.tencent.cloud</groupId>
<artifactId>cos-sts-java</artifactId>
<version>3.0.8</version>
</dependency>
2. 请求用户服务器获取到密钥信息
public JSON uploading() throws Exception {
TreeMap<String, Object> config = new TreeMap<String, Object>();
config.put("SecretId", secretId);
config.put("SecretKey", secretKey);
config.put("durationSeconds", durationSeconds);
config.put("bucket", bucket);
config.put("region", region);
config.put("allowPrefix", allowPrefix);
String[] allowActions = new String[]{
"name/cos:PutObject",
"name/cos:PostObject",
"name/cos:InitiateMultipartUpload",
"name/cos:ListMultipartUploads",
"name/cos:ListParts",
"name/cos:UploadPart",
"name/cos:CompleteMultipartUpload"
};
config.put("allowActions", allowActions);
JSONObject credential = CosStsClient.getCredential(config);
JSON parse = JSONUtil.parse(credential.toString());
return parse;
}
{
"code": 200,
"message": "操作成功",
"data": {
"credentials": {
"tmpSecretKey": "******zi7CVEhVM+uodU0/DS2/fQC+yx8ZltU=",
"tmpSecretId": "******6J4osSrP1c3Ufv8DJYudtkc9_UNsGlflrR3aHjvTbEIMp25CJbtT4b_tC1Xn",
"sessionT