Module: AccessPolicy
- Defined in:
- lib/access_policy.rb,
lib/access_policy/version.rb,
lib/access_policy/policy_check.rb,
lib/access_policy/rspec_matchers.rb,
lib/access_policy/policy_enforcer.rb
Defined Under Namespace
Modules: ClassMethods, RspecMatchers
Classes: AuthorizeNotCalledError, NotAuthorizedError, NotDefinedError, PolicyCheck, PolicyEnforcer
Constant Summary
collapse
- VERSION =
"0.0.5"
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.included(base) ⇒ Object
18
19
20
|
# File 'lib/access_policy.rb', line 18
def self.included(base)
base.extend ClassMethods
end
|
Instance Method Details
#_authorize(query) ⇒ Object
36
37
38
|
# File 'lib/access_policy.rb', line 36
def _authorize(query)
_guard.authorize self, query.to_sym
end
|
#_default_error_policy ⇒ Object
22
23
24
|
# File 'lib/access_policy.rb', line 22
def _default_error_policy
->(*){raise}
end
|
#_guard ⇒ Object
30
31
32
33
34
|
# File 'lib/access_policy.rb', line 30
def _guard
@_guard ||= PolicyCheck.new(default_error_policy: _default_error_policy,
scope_storage: _scope_storage
)
end
|
#_scope_storage ⇒ Object
26
27
28
|
# File 'lib/access_policy.rb', line 26
def _scope_storage
ScopedStorage::ThreadLocalStorage
end
|
#with_user_or_role(user_or_role, error_policy = _default_error_policy, &block) ⇒ Object
40
41
42
|
# File 'lib/access_policy.rb', line 40
def with_user_or_role(user_or_role, error_policy = _default_error_policy ,&block)
_guard.with_user_or_role(user_or_role, error_policy, &block)
end
|