Class: Txgh::TransifexRequestAuth

Inherits:
Object
  • Object
show all
Defined in:
lib/txgh/transifex_request_auth.rb

Constant Summary collapse

HMAC_DIGEST =
OpenSSL::Digest.new('sha1')
RACK_HEADER =
'HTTP_X_TX_SIGNATURE'
TRANSIFEX_HEADER =
'X-TX-Signature'

Class Method Summary collapse

Class Method Details

.authentic_request?(request, secret) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
13
14
15
# File 'lib/txgh/transifex_request_auth.rb', line 10

def authentic_request?(request, secret)
  request.body.rewind
  expected_signature = header_value(request.body.read, secret)
  actual_signature = request.env[RACK_HEADER]
  actual_signature == expected_signature
end

.header_value(content, secret) ⇒ Object



17
18
19
# File 'lib/txgh/transifex_request_auth.rb', line 17

def header_value(content, secret)
  digest(transform(content), secret)
end