public final class DefaultS3Presigner extends DefaultSdkPresigner implements S3Presigner
S3Presigner interface.| Modifier and Type | Class and Description |
|---|---|
static class |
DefaultS3Presigner.Builder |
| Modifier and Type | Method and Description |
|---|---|
static S3Presigner.Builder |
builder()
Create an
S3Presigner.Builder that can be used to configure and create a S3Presigner. |
PresignedGetObjectRequest |
presignGetObject(GetObjectPresignRequest request)
Presign a
GetObjectRequest so that it can be executed at a later time without requiring additional
signing or authentication. |
PresignedPutObjectRequest |
presignPutObject(PutObjectPresignRequest request)
Presign a
PutObjectRequest so that it can be executed at a later time without requiring additional
signing or authentication. |
close, credentialsProvider, endpointOverride, regionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreate, presignGetObject, presignPutObjectclosepublic static S3Presigner.Builder builder()
S3PresignerS3Presigner.Builder that can be used to configure and create a S3Presigner.
This is usually done at application startup, because creating a presigner can be expensive. It is recommended to
SdkPresigner.close() the S3Presigner when it is done being used.builder in interface S3Presignerpublic PresignedGetObjectRequest presignGetObject(GetObjectPresignRequest request)
S3PresignerGetObjectRequest so that it can be executed at a later time without requiring additional
signing or authentication.
Example Usage
S3Presigner presigner = ...;
// Create a GetObjectRequest to be pre-signed
GetObjectRequest getObjectRequest = ...;
// Create a GetObjectPresignRequest to specify the signature duration
GetObjectPresignRequest getObjectPresignRequest =
GetObjectPresignRequest.builder()
.signatureDuration(Duration.ofMinutes(10))
.getObjectRequest(request)
.build();
// Generate the presigned request
PresignedGetObjectRequest presignedGetObjectRequest =
presigner.presignGetObject(getObjectPresignRequest);
if (presignedGetObjectRequest.isBrowserExecutable())
System.out.println("The pre-signed request can be executed using a web browser by " +
"visiting the following URL: " + presignedGetObjectRequest.url());
else
System.out.println("The pre-signed request has an HTTP method, headers or a payload " +
"that prohibits it from being executed by a web browser. See the S3Presigner " +
"class-level documentation for an example of how to execute this pre-signed " +
"request from Java code.");
presignGetObject in interface S3Presignerpublic PresignedPutObjectRequest presignPutObject(PutObjectPresignRequest request)
S3PresignerPutObjectRequest so that it can be executed at a later time without requiring additional
signing or authentication.
Example Usage
S3Presigner presigner = ...;
// Create a PutObjectRequest to be pre-signed
PutObjectRequest putObjectRequest = ...;
// Create a PutObjectPresignRequest to specify the signature duration
PutObjectPresignRequest putObjectPresignRequest =
PutObjectPresignRequest.builder()
.signatureDuration(Duration.ofMinutes(10))
.putObjectRequest(request)
.build();
// Generate the presigned request
PresignedPutObjectRequest presignedPutObjectRequest =
presigner.presignPutObject(putObjectPresignRequest);
presignPutObject in interface S3PresignerCopyright © 2020. All rights reserved.