Skip to content

Commit a78dda6

Browse files
committed
calculatePostSignature support signature v4.
1 parent 0b01498 commit a78dda6

File tree

3 files changed

+17
-1
lines changed

3 files changed

+17
-1
lines changed

src/main/java/com/aliyun/oss/OSS.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3001,6 +3001,17 @@ public CompleteMultipartUploadResult completeMultipartUpload(CompleteMultipartUp
30013001
*/
30023002
public String calculatePostSignature(String postPolicy);
30033003

3004+
/**
3005+
* Calculates the signature based on the policy and access key secret.
3006+
*
3007+
* @param postPolicy
3008+
* Post policy string in JSON which is generated from
3009+
* {@link #generatePostPolicy(Date, PolicyConditions)}.
3010+
* @param date the signing time
3011+
* @return Post signature in bas464 string.
3012+
*/
3013+
public String calculatePostSignature(String postPolicy, Date date);
3014+
30043015
/**
30053016
* Sets the {@link Bucket}'s lifecycle rule.
30063017
*

src/main/java/com/aliyun/oss/OSSClient.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,6 +1187,11 @@ public String calculatePostSignature(String postPolicy) throws ClientException {
11871187
}
11881188
}
11891189

1190+
@Override
1191+
public String calculatePostSignature(String postPolicy, Date date) {
1192+
return objectOperation.calculatePostSignature(postPolicy, date);
1193+
}
1194+
11901195
@Override
11911196
public VoidResult setBucketLifecycle(SetBucketLifecycleRequest setBucketLifecycleRequest)
11921197
throws OSSException, ClientException {

src/main/java/com/aliyun/oss/internal/OSSObjectOperation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1440,7 +1440,7 @@ public String calculatePostSignature(String postPolicy, Date date) throws Client
14401440
params.setRegion(region);
14411441
params.setCloudBoxId(cloudBoxId);
14421442
OSSV4Signer singer = (OSSV4Signer)OSSSignerBase.createRequestSigner(signVersion, params);
1443-
return singer.signPolicy(postPolicy, date);
1443+
return singer.signPolicy(encPolicy, date);
14441444
} else {
14451445
return ServiceSignature.create().computeSignature(credsProvider.getCredentials().getSecretAccessKey(),
14461446
encPolicy);

0 commit comments

Comments
 (0)