module AWS::Core::AuthorizeV2

def add_authorization! signer

def add_authorization! signer
  self.access_key_id = signer.access_key_id
  add_param('AWSAccessKeyId', access_key_id)
  add_param('SignatureVersion', '2')
  add_param('SignatureMethod', 'HmacSHA256')
  add_param('Signature', signer.sign(string_to_sign))
end

def string_to_sign

def string_to_sign
  parts = [http_method,
           host,
           path,
           params.sort.collect { |p| p.encoded }.join('&')]
  parts.join("\n")
end