View Source Permit.Ecto.Resolver (permit_ecto v0.1.1)
Implementation of Permit.ResolverBase
behaviour, resolving and checks authorization of records or lists of records based on automatic Ecto query construction, taking parameters as input and :base_query
and :finalize_query
functions as means to transform the query based on e.g. current controller context.
For a resolver implementation not using Ecto for fetching resources, see Permit.Resolver
from the permit
library.
The usage of Permit.Ecto.Resolver
as opposed to Permit.Resolver
in permit_ecto
library occurs because in the m:Permit.Ecto.__using__/1
macro the resolver_module/0
function is overridden to point to Permit.Ecto.Resolver
.
This module is to be considered a private API of the authorization framework. It should not be directly used by application code, but rather by wrappers providing integration with e.g. Plug or LiveView.
Link to this section Summary
Link to this section Functions
authorize_and_preload_all!(subject, authorization_module, resource_module, action, meta)
View Source@spec authorize_and_preload_all!( Permit.Types.subject(), module(), Permit.Types.resource_module(), Permit.Types.action_group(), map() ) :: {:authorized, [struct()]} | :unauthorized | {:not_found, term()}
authorize_and_preload_one!(subject, authorization_module, resource_module, action, meta)
View Source@spec authorize_and_preload_one!( Permit.Types.subject(), module(), Permit.Types.resource_module(), Permit.Types.action_group(), map() ) :: {:authorized, [struct()]} | :unauthorized
authorized?(subject, authorization_module, resource_or_module, action)
View Source@spec authorized?( Permit.Types.subject(), module(), Permit.Types.object_or_resource_module(), Permit.Types.action_group() ) :: boolean()