Class: ZeroRailsAdapter::RequestVerifiers::ApiKey

Inherits:
Object
  • Object
show all
Defined in:
lib/zero_rails_adapter/request_verifiers/api_key.rb

Instance Method Summary collapse

Constructor Details

#initialize(key:, header: "X-Api-Key") ⇒ ApiKey

Returns a new instance of ApiKey.



8
9
10
11
# File 'lib/zero_rails_adapter/request_verifiers/api_key.rb', line 8

def initialize(key:, header: "X-Api-Key")
  @key = key.to_s
  @header = header
end

Instance Method Details

#call(request) ⇒ Object



13
14
15
16
17
18
# File 'lib/zero_rails_adapter/request_verifiers/api_key.rb', line 13

def call(request)
  candidate = request.headers[@header].to_s
  return false if @key.empty? || candidate.bytesize != @key.bytesize

  ActiveSupport::SecurityUtils.secure_compare(candidate, @key)
end