Class BaseAws4Signer
- java.lang.Object
-
- software.amazon.awssdk.auth.signer.internal.AbstractAwsSigner
-
- software.amazon.awssdk.auth.signer.internal.AbstractAws4Signer<Aws4SignerParams,Aws4PresignerParams>
-
- software.amazon.awssdk.auth.signer.internal.BaseAws4Signer
-
- Direct Known Subclasses:
AsyncAws4Signer
,Aws4Signer
,Aws4UnsignedPayloadSigner
,BaseAsyncAws4Signer
public abstract class BaseAws4Signer extends AbstractAws4Signer<Aws4SignerParams,Aws4PresignerParams>
Abstract base class for concrete implementations of Aws4 signers.
-
-
Field Summary
-
Fields inherited from class software.amazon.awssdk.auth.signer.internal.AbstractAws4Signer
EMPTY_STRING_SHA256_HEX
-
-
Constructor Summary
Constructors Constructor Description BaseAws4Signer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
calculateContentHashPresign(SdkHttpFullRequest.Builder mutableRequest, Aws4PresignerParams signerParams)
Calculate the hash of the request's payload.SdkHttpFullRequest
presign(SdkHttpFullRequest request, Aws4PresignerParams signingParams)
SdkHttpFullRequest
presign(SdkHttpFullRequest requestToSign, ExecutionAttributes executionAttributes)
protected void
processRequestPayload(SdkHttpFullRequest.Builder mutableRequest, byte[] signature, byte[] signingKey, Aws4SignerRequestParams signerRequestParams, Aws4SignerParams signerParams)
Subclass could override this method to perform any additional procedure on the request payload, with access to the result from signing the header.protected void
processRequestPayload(SdkHttpFullRequest.Builder mutableRequest, byte[] signature, byte[] signingKey, Aws4SignerRequestParams signerRequestParams, Aws4SignerParams signerParams, SdkChecksum sdkChecksum)
This method overloads processRequestPayload with sdkChecksum.SdkHttpFullRequest
sign(SdkHttpFullRequest request, Aws4SignerParams signingParams)
SdkHttpFullRequest
sign(SdkHttpFullRequest request, ExecutionAttributes executionAttributes)
-
Methods inherited from class software.amazon.awssdk.auth.signer.internal.AbstractAws4Signer
addSessionCredentials, calculateContentHash, calculateContentHash, deriveSigningKey, deriveSigningKey, doPresign, doSign, doSign, extractPresignerParams, extractSignerParams
-
Methods inherited from class software.amazon.awssdk.auth.signer.internal.AbstractAwsSigner
getBinaryRequestPayloadStream, sanitizeCredentials, sign, sign, signAndBase64Encode, signWithMac
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.core.signer.Signer
credentialType
-
-
-
-
Method Detail
-
sign
public SdkHttpFullRequest sign(SdkHttpFullRequest request, ExecutionAttributes executionAttributes)
-
sign
public SdkHttpFullRequest sign(SdkHttpFullRequest request, Aws4SignerParams signingParams)
-
presign
public SdkHttpFullRequest presign(SdkHttpFullRequest requestToSign, ExecutionAttributes executionAttributes)
-
presign
public SdkHttpFullRequest presign(SdkHttpFullRequest request, Aws4PresignerParams signingParams)
-
processRequestPayload
protected void processRequestPayload(SdkHttpFullRequest.Builder mutableRequest, byte[] signature, byte[] signingKey, Aws4SignerRequestParams signerRequestParams, Aws4SignerParams signerParams)
Subclass could override this method to perform any additional procedure on the request payload, with access to the result from signing the header. (e.g. Signing the payload by chunk-encoding). The default implementation doesn't need to do anything.- Specified by:
processRequestPayload
in classAbstractAws4Signer<Aws4SignerParams,Aws4PresignerParams>
-
processRequestPayload
protected void processRequestPayload(SdkHttpFullRequest.Builder mutableRequest, byte[] signature, byte[] signingKey, Aws4SignerRequestParams signerRequestParams, Aws4SignerParams signerParams, SdkChecksum sdkChecksum)
This method overloads processRequestPayload with sdkChecksum. The sdkChecksum if passed, is computed while processing request payload.- Specified by:
processRequestPayload
in classAbstractAws4Signer<Aws4SignerParams,Aws4PresignerParams>
-
calculateContentHashPresign
protected String calculateContentHashPresign(SdkHttpFullRequest.Builder mutableRequest, Aws4PresignerParams signerParams)
Calculate the hash of the request's payload. In case of pre-sign, the existing code would generate the hash of an empty byte array and returns it. This method can be overridden by sub classes to provide different values (e.g) For S3 pre-signing, the content hash calculation is different from the general implementation.- Specified by:
calculateContentHashPresign
in classAbstractAws4Signer<Aws4SignerParams,Aws4PresignerParams>
-
-