class ThreeScale::Middleware::BaseAuthenticator

Attributes

client[RW]

Public Class Methods

new(client) click to toggle source
# File lib/3scale/middleware.rb, line 35
def initialize(client)
  @client = client
end

Public Instance Methods

credentials(*) click to toggle source
# File lib/3scale/middleware.rb, line 43
def credentials(*)
  nil
end
provided?(username, password) click to toggle source
# File lib/3scale/middleware.rb, line 39
def provided?(username, password)
  username && !username.empty? && password && !password.empty?
end
to_proc() click to toggle source
# File lib/3scale/middleware.rb, line 47
def to_proc
  lambda { |username, password|
    return false unless provided?(username, password)

    auth = credentials(username, password)
    # Do not do authrep for now, as rate limitin requires more work:
    # we would need to send headers with remaining limits & proper codes
    response = @client.authorize(auth)
    response.success?
  }
end