Package org.keycloak.authorization.store
Interface PolicyStore
-
public interface PolicyStoreAPolicyStoreis responsible to manage the persistence ofPolicyinstances.- Author:
- Pedro Igor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Policycreate(ResourceServer resourceServer, AbstractPolicyRepresentation representation)Creates a newPolicyinstance.voiddelete(String id)Deletes a policy from the underlying persistence mechanism.PolicyfindById(ResourceServer resourceServer, String id)Returns aPolicywith the givenidPolicyfindByName(ResourceServer resourceServer, String name)Returns aPolicywith the givennamedefault List<Policy>findByResource(ResourceServer resourceServer, Resource resource)voidfindByResource(ResourceServer resourceServer, Resource resource, Consumer<Policy> consumer)Searches for all policies associated with theResourceand passes the result to theconsumerList<Policy>findByResourceServer(ResourceServer resourceServer)List<Policy>findByResourceServer(ResourceServer resourceServer, Map<Policy.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults)default List<Policy>findByResourceType(ResourceServer resourceServer, String resourceType)voidfindByResourceType(ResourceServer resourceServer, String type, Consumer<Policy> policyConsumer)Searches for policies associated with aResourceServerand passes the result to the consumerList<Policy>findByScopes(ResourceServer resourceServer, List<Scope> scopes)default List<Policy>findByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes)voidfindByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes, Consumer<Policy> consumer)Effectively the same method asfindByScopes(ResourceServer, Resource, List), however in the end theconsumeris fed with the result.List<Policy>findByType(ResourceServer resourceServer, String type)Returns a list ofPolicywith the giventype.List<Policy>findDependentPolicies(ResourceServer resourceServer, String id)Returns a list ofPolicythat depends on another policy with the givenid.
-
-
-
Method Detail
-
create
Policy create(ResourceServer resourceServer, AbstractPolicyRepresentation representation)
Creates a newPolicyinstance. The new instance is not necessarily persisted though, which may require a call to the {#save} method to actually make it persistent.- Parameters:
resourceServer- the resource server to which this policy belongsrepresentation- the policy representation- Returns:
- a new instance of
Policy
-
delete
void delete(String id)
Deletes a policy from the underlying persistence mechanism.- Parameters:
id- the id of the policy to delete
-
findById
Policy findById(ResourceServer resourceServer, String id)
Returns aPolicywith the givenid- Parameters:
resourceServer- the resource serverid- the identifier of the policy- Returns:
- a policy with the given identifier.
-
findByName
Policy findByName(ResourceServer resourceServer, String name)
Returns aPolicywith the givenname- Parameters:
resourceServer- the resource servername- the name of the policy- Returns:
- a policy with the given name.
-
findByResourceServer
List<Policy> findByResourceServer(ResourceServer resourceServer)
- Parameters:
resourceServer- the identifier of a resource server- Returns:
- a list of policies that belong to the given resource server
-
findByResourceServer
List<Policy> findByResourceServer(ResourceServer resourceServer, Map<Policy.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults)
- Parameters:
resourceServer- the identifier of a resource serverattributes- a map holding the attributes that will be used as a filter; possible filter options are given byPolicy.FilterOptionfirstResult- first result to return. Ignored if negative ornull.maxResults- maximum number of results to return. Ignored if negative ornull.- Returns:
- a list of policies that belong to the given resource server
- Throws:
IllegalArgumentException- when there is an unknown attribute in theattributesmap
-
findByResource
default List<Policy> findByResource(ResourceServer resourceServer, Resource resource)
- Parameters:
resourceServer- the resource serverresource- the resource- Returns:
- a list of policies associated with the given resource
-
findByResource
void findByResource(ResourceServer resourceServer, Resource resource, Consumer<Policy> consumer)
Searches for all policies associated with theResourceand passes the result to theconsumer- Parameters:
resourceServer- the resourceServerresource- the resourceconsumer- consumer of policies resulted from the search
-
findByResourceType
default List<Policy> findByResourceType(ResourceServer resourceServer, String resourceType)
- Parameters:
resourceServer- the resource server idresourceType- the type of a resource- Returns:
- a list of policies associated with the given resource type
-
findByResourceType
void findByResourceType(ResourceServer resourceServer, String type, Consumer<Policy> policyConsumer)
Searches for policies associated with aResourceServerand passes the result to the consumer- Parameters:
resourceServer- the resourceServertype- the type of a resourcepolicyConsumer- consumer of policies resulted from the search
-
findByScopes
List<Policy> findByScopes(ResourceServer resourceServer, List<Scope> scopes)
- Parameters:
resourceServer- the resource serverscopes- the scopes- Returns:
- a list of policies associated with the given scopes
-
findByScopes
default List<Policy> findByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes)
- Parameters:
resourceServer- the resource serverresource- the resource. Ignored ifnull.scopes- the scopes- Returns:
- a list of policies associated with the given scopes
-
findByScopes
void findByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes, Consumer<Policy> consumer)
Effectively the same method asfindByScopes(ResourceServer, Resource, List), however in the end theconsumeris fed with the result.
-
findByType
List<Policy> findByType(ResourceServer resourceServer, String type)
Returns a list ofPolicywith the giventype.- Parameters:
resourceServer- the resource server idtype- the type of the policy- Returns:
- a list of policies with the given type
-
findDependentPolicies
List<Policy> findDependentPolicies(ResourceServer resourceServer, String id)
Returns a list ofPolicythat depends on another policy with the givenid.- Parameters:
resourceServer- the resource serverid- the id of the policy to query its dependents- Returns:
- a list of policies that depends on the a policy with the given identifier
-
-