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, region
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
create, presignGetObject, presignPutObject
close
public static S3Presigner.Builder builder()
S3Presigner
S3Presigner.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 S3Presigner
public PresignedGetObjectRequest presignGetObject(GetObjectPresignRequest request)
S3Presigner
GetObjectRequest
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 S3Presigner
public PresignedPutObjectRequest presignPutObject(PutObjectPresignRequest request)
S3Presigner
PutObjectRequest
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 S3Presigner
Copyright © 2019. All rights reserved.