Class: Twilio::Util::RequestValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/twilio-ruby/util/request_validator.rb

Instance Method Summary collapse

Constructor Details

#initialize(auth_token) ⇒ RequestValidator

Returns a new instance of RequestValidator.



5
6
7
# File 'lib/twilio-ruby/util/request_validator.rb', line 5

def initialize(auth_token)
  @auth_token = auth_token
end

Instance Method Details

#build_signature_for(url, params) ⇒ Object



14
15
16
17
18
# File 'lib/twilio-ruby/util/request_validator.rb', line 14

def build_signature_for(url, params)
  data = url + params.sort.join
  digest = OpenSSL::Digest::Digest.new('sha1')
  Base64.encode64(OpenSSL::HMAC.digest(digest, @auth_token, data)).strip
end

#validate(url, params, signature) ⇒ Object



9
10
11
12
# File 'lib/twilio-ruby/util/request_validator.rb', line 9

def validate(url, params, signature)
  expected = build_signature_for url, params
  expected == signature
end