Class: RailsIam::Authorization::PermissionResolver

Inherits:
RailsIamService show all
Defined in:
app/services/rails_iam/authorization/permission_resolver.rb

Constant Summary collapse

ALLOW_SOURCES =
[
  Authorization::PermissionSources::RolePermissionSource,
  Authorization::PermissionSources::UserPermissionSource,
].freeze
DENY_SOURCES =
[
  Authorization::PermissionSources::UserDeniedPermissionSource,
].freeze

Instance Method Summary collapse

Methods inherited from RailsIamService

call

Methods included from ConfigLoader

#authentication_strategies, #authorization_rule_error, #cookie_options, #jwt_algorithm, #jwt_audience, #jwt_expiry, #jwt_issuer, #jwt_secret_key, #refresh_token_transport, #session_strategy, #user_class

Constructor Details

#initialize(user) ⇒ PermissionResolver

Returns a new instance of PermissionResolver.



20
21
22
23
24
# File 'app/services/rails_iam/authorization/permission_resolver.rb', line 20

def initialize(user)
  super()

  @user = user
end

Instance Method Details

#callObject



26
27
28
29
30
# File 'app/services/rails_iam/authorization/permission_resolver.rb', line 26

def call
  Cache.read_or_write(:permissions, user.id) do
    resolve
  end
end