class Workarea::BasicAuth::Middleware::Request
Public Instance Methods
basic?()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 54 def basic? "basic" == scheme end
credentials()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 58 def credentials @credentials ||= params.unpack("m*").first.split(/:/, 2) end
ip_whitelisted?()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 50 def ip_whitelisted? whitelisted_ips.any? { |ip| ip.include?(request.ip) } end
path_is_protected?()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 45 def path_is_protected? return false if excluded_routes.matches?(request) protected_routes.matches?(request) end
required?()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 41 def required? !ip_whitelisted? && path_is_protected? end
username()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 62 def username credentials.first end
Private Instance Methods
excluded_routes()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 72 def excluded_routes Workarea.config.basic_auth.exclude_routes end
protected_routes()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 68 def protected_routes Workarea.config.basic_auth.protect_routes end
whitelisted_ips()
click to toggle source
# File lib/workarea/basic_auth/middleware.rb, line 76 def whitelisted_ips Array.wrap(Workarea.config.basic_auth.whitelisted_ips) end