class Aws::Sigv2::Signer
def sign_request(request)
-
(Hash)
- Returns a hash of un-escaped signature
Options Hash:
(**request)
-
:params
(optional, Hash
) -- Request -
:url
(required, String, URI::HTTPS, URI::HTTP
) -- -
:http_method
(required, String
) -- One of
Parameters:
-
request
(Hash
) --
def sign_request(request) creds = @credentials_provider.credentials http_method = extract_http_method(request) url = extract_url(request) params = request[:params] || {} timestamp = params['Timestamp'] timestamp ||= Time.now.utc.strftime('%Y-%m-%dT%H:%M:%SZ') auth_params = {} auth_params['AWSAccessKeyId'] = creds.access_key_id auth_params['SecurityToken'] = creds.session_token if creds.session_token auth_params['Timestamp'] = timestamp auth_params['SignatureVersion'] = '2' auth_params['SignatureMethod'] = 'HmacSHA256' sts = string_to_sign(http_method, url, params.merge(auth_params)) auth_params['Signature'] = signature(sts, creds.secret_access_key) auth_params end