module AWS::Core::Signature::Version3HTTPS
def self.included base
def self.included base base.send(:include, Signer) end
def add_authorization! credentials
def add_authorization! credentials self.access_key_id = credentials.access_key_id parts = [] parts << "AWS3-HTTPS AWSAccessKeyId=#{access_key_id}" parts << "Algorithm=HmacSHA256" parts << "Signature=#{signature(credentials)}" headers['x-amzn-authorization'] = parts.join(',') headers['x-amz-security-token'] = credentials.session_token if credentials.session_token end
def signature credentials
def signature credentials Signer.sign(credentials.secret_access_key, string_to_sign) end
def string_to_sign
def string_to_sign headers['date'] ||= Time.now.httpdate end