public abstract class AbstractAWSSigner extends Object implements Signer
Not intended to be sub-classed by developers.
限定符和类型 | 字段和说明 |
---|---|
protected static String |
DEFAULT_ENCODING
The default encoding to use when URL encoding
|
构造器和说明 |
---|
AbstractAWSSigner() |
限定符和类型 | 方法和说明 |
---|---|
protected abstract void |
addSessionCredentials(Request<?> request,
AWSSessionCredentials credentials)
Adds session credentials to the request given.
|
protected byte[] |
getBinaryRequestPayload(Request<?> request)
Returns the request's payload as binary data.
|
protected InputStream |
getBinaryRequestPayloadStream(Request<?> request) |
protected InputStream |
getBinaryRequestPayloadStreamWithoutQueryParams(Request<?> request) |
protected byte[] |
getBinaryRequestPayloadWithoutQueryParams(Request<?> request)
Returns the request's payload contents as binary data, without processing
any query string params (i.e. no form encoding for query params).
|
protected String |
getCanonicalizedEndpoint(URI endpoint) |
protected String |
getCanonicalizedQueryString(Map<String,String> parameters)
Examines the specified query string parameters and returns a
canonicalized form.
|
protected String |
getCanonicalizedQueryString(Request<?> request) |
protected String |
getCanonicalizedResourcePath(String resourcePath) |
protected String |
getCanonicalizedResourcePath(String resourcePath,
boolean urlEncode) |
protected String |
getRequestPayload(Request<?> request)
Returns the request's payload as a String.
|
protected String |
getRequestPayloadWithoutQueryParams(Request<?> request)
Returns the request's payload contents as a String, without processing
any query string params (i.e. no form encoding for query params).
|
protected Date |
getSignatureDate(int timeOffset) |
protected int |
getTimeOffset(Request<?> request) |
byte[] |
hash(byte[] data)
Hashes the binary data using the SHA-256 algorithm.
|
protected byte[] |
hash(InputStream input) |
byte[] |
hash(String text)
Hashes the string contents (assumed to be UTF-8) using the SHA-256
algorithm.
|
protected String |
newString(byte[] bytes)
Safely converts a UTF-8 encoded byte array into a String.
|
protected AWSCredentials |
sanitizeCredentials(AWSCredentials credentials)
Loads the individual access key ID and secret key from the specified
credentials, ensuring that access to the credentials is synchronized on
the credentials object itself, and trimming any extra whitespace from the
credentials.
|
protected byte[] |
sign(byte[] data,
byte[] key,
SigningAlgorithm algorithm) |
byte[] |
sign(String stringData,
byte[] key,
SigningAlgorithm algorithm) |
protected String |
signAndBase64Encode(byte[] data,
String key,
SigningAlgorithm algorithm)
Computes an RFC 2104-compliant HMAC signature for an array of bytes and
returns the result as a Base64 encoded string.
|
protected String |
signAndBase64Encode(String data,
String key,
SigningAlgorithm algorithm)
Computes an RFC 2104-compliant HMAC signature and returns the result as a
Base64 encoded string.
|
protected String signAndBase64Encode(String data, String key, SigningAlgorithm algorithm) throws SCSClientException
protected String signAndBase64Encode(byte[] data, String key, SigningAlgorithm algorithm) throws SCSClientException
public byte[] sign(String stringData, byte[] key, SigningAlgorithm algorithm) throws SCSClientException
protected byte[] sign(byte[] data, byte[] key, SigningAlgorithm algorithm) throws SCSClientException
public byte[] hash(String text) throws SCSClientException
text
- The string to hash.SCSClientException
- If the hash cannot be computed.protected byte[] hash(InputStream input) throws SCSClientException
public byte[] hash(byte[] data) throws SCSClientException
data
- The binary data to hash.SCSClientException
- If the hash cannot be computed.protected String getCanonicalizedQueryString(Map<String,String> parameters)
The canonicalized query string is formed by first sorting all the query string parameters, then URI encoding both the key and value and then joining them, in order, separating key value pairs with an '&'.
parameters
- The query string parameters to be canonicalized.protected byte[] getBinaryRequestPayload(Request<?> request)
request
- The requestprotected String getRequestPayload(Request<?> request)
request
- The requestprotected String getRequestPayloadWithoutQueryParams(Request<?> request)
request
- The requestprotected byte[] getBinaryRequestPayloadWithoutQueryParams(Request<?> request)
request
- The requestprotected InputStream getBinaryRequestPayloadStream(Request<?> request)
protected InputStream getBinaryRequestPayloadStreamWithoutQueryParams(Request<?> request)
protected String getCanonicalizedResourcePath(String resourcePath, boolean urlEncode)
protected AWSCredentials sanitizeCredentials(AWSCredentials credentials)
Returns either a BasicSessionCredentials
or a
BasicAWSCredentials
object, depending on the input type.
credentials
- protected String newString(byte[] bytes)
bytes
- UTF-8 encoded binary character data.protected Date getSignatureDate(int timeOffset)
protected int getTimeOffset(Request<?> request)
protected abstract void addSessionCredentials(Request<?> request, AWSSessionCredentials credentials)
request
- The request to add session credentials information tocredentials
- The session credentials to add to the requestCopyright © 2016. All rights reserved.