Class: HeimdallAuth::RouteConstraint
- Inherits:
-
Object
- Object
- HeimdallAuth::RouteConstraint
- Defined in:
- lib/heimdall_auth/route_constraint.rb
Instance Method Summary collapse
-
#initialize(action, resource, accessible_via_token) ⇒ RouteConstraint
constructor
A new instance of RouteConstraint.
- #matches?(matching_request) ⇒ Boolean
Constructor Details
#initialize(action, resource, accessible_via_token) ⇒ RouteConstraint
Returns a new instance of RouteConstraint.
35 36 37 38 39 |
# File 'lib/heimdall_auth/route_constraint.rb', line 35 def initialize(action, resource, accessible_via_token) @action = action @resource = resource @accessible_via_token = accessible_via_token end |
Instance Method Details
#matches?(matching_request) ⇒ Boolean
41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/heimdall_auth/route_constraint.rb', line 41 def matches?(matching_request) if @accessible_via_token && matching_request.query_parameters["token"] @accessible_via_token.keys.each do |path| if path.to_s == matching_request.path.to_s expected_token = @accessible_via_token[path] if expected_token && ActiveSupport::SecurityUtils.secure_compare(matching_request.query_parameters["token"], expected_token) return true end end end end AuthenticationChecker.new(matching_request).can?(@action, @resource) end |