class Aws::Signers::V3

Public Instance Methods

sign(http_req) click to toggle source
# File lib/aws-sdk-core/signers/v3.rb, line 10
def sign(http_req)

  date = Time.now.httpdate
  http_req.headers['Date'] = date

  if @credentials.session_token
    http_req.headers['X-Amz-Security-Token'] = @credentials.session_token
  end

  parts = []
  parts << "AWS3-HTTPS AWSAccessKeyId=#{@credentials.access_key_id}"
  parts << "Algorithm=HmacSHA256"
  parts << "Signature=#{signature(date)}"
  http_req.headers['X-Amzn-Authorization'] = parts.join(',')
end

Private Instance Methods

signature(date) click to toggle source
# File lib/aws-sdk-core/signers/v3.rb, line 28
def signature(date)
  sha256_hmac(date)
end