Class MapPolicyStore
- java.lang.Object
-
- org.keycloak.models.map.authorization.MapPolicyStore
-
- All Implemented Interfaces:
PolicyStore
public class MapPolicyStore extends Object implements PolicyStore
-
-
Constructor Summary
Constructors Constructor Description MapPolicyStore(KeycloakSession session, MapStorage<MapPolicyEntity,Policy> policyStore, AuthorizationProvider provider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Policycreate(ResourceServer resourceServer, AbstractPolicyRepresentation representation)Creates a newPolicyinstance.voiddelete(RealmModel realm, String id)Deletes a policy from the underlying persistence mechanism.List<Policy>find(RealmModel realm, ResourceServer resourceServer, Map<Policy.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults)PolicyfindById(RealmModel realm, ResourceServer resourceServer, String id)Returns aPolicywith the givenidPolicyfindByName(ResourceServer resourceServer, String name)Returns aPolicywith the givennamevoidfindByResource(ResourceServer resourceServer, Resource resource, Consumer<Policy> consumer)Searches for all policies associated with theResourceand passes the result to theconsumerList<Policy>findByResourceServer(ResourceServer resourceServer)Returns a list ofPolicyassociated with theResourceServervoidfindByResourceType(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)voidfindByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes, Consumer<Policy> consumer)Effectively the same method asPolicyStore.findByScopes(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.voidpreRemove(RealmModel realm)voidpreRemove(RealmModel realm, ResourceServer resourceServer)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.keycloak.authorization.store.PolicyStore
findByResource, findByResourceType, findByScopes
-
-
-
-
Constructor Detail
-
MapPolicyStore
public MapPolicyStore(KeycloakSession session, MapStorage<MapPolicyEntity,Policy> policyStore, AuthorizationProvider provider)
-
-
Method Detail
-
create
public Policy create(ResourceServer resourceServer, AbstractPolicyRepresentation representation)
Description copied from interface:PolicyStoreCreates a newPolicyinstance. The new instance is not necessarily persisted though, which may require a call to the {#save} method to actually make it persistent.- Specified by:
createin interfacePolicyStore- Parameters:
resourceServer- the resource server to which this policy belongs. Cannot benull.representation- the policy representation- Returns:
- a new instance of
Policy
-
delete
public void delete(RealmModel realm, String id)
Description copied from interface:PolicyStoreDeletes a policy from the underlying persistence mechanism.- Specified by:
deletein interfacePolicyStore- Parameters:
realm- the realm that the removed policy belongs to. Cannot benullid- the id of the policy to delete
-
findById
public Policy findById(RealmModel realm, ResourceServer resourceServer, String id)
Description copied from interface:PolicyStoreReturns aPolicywith the givenid- Specified by:
findByIdin interfacePolicyStore- Parameters:
realm- the realm. Cannot benull.resourceServer- the resource server. Ignored ifnull.id- the identifier of the policy- Returns:
- a policy with the given identifier.
-
findByName
public Policy findByName(ResourceServer resourceServer, String name)
Description copied from interface:PolicyStoreReturns aPolicywith the givenname- Specified by:
findByNamein interfacePolicyStore- Parameters:
resourceServer- the resource server. Cannot benullname- the name of the policy- Returns:
- a policy with the given name or
nullif no such policy exists.
-
findByResourceServer
public List<Policy> findByResourceServer(ResourceServer resourceServer)
Description copied from interface:PolicyStoreReturns a list ofPolicyassociated with theResourceServer- Specified by:
findByResourceServerin interfacePolicyStore- Parameters:
resourceServer- the resource server. Cannot benull.- Returns:
- a list of policies that belong to the given resource server
-
find
public List<Policy> find(RealmModel realm, ResourceServer resourceServer, Map<Policy.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults)
Description copied from interface:PolicyStore- Specified by:
findin interfacePolicyStore- Parameters:
realm- the realm. Cannot benull.resourceServer- the identifier of a resource server. Ignored ifnull.attributes- 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
-
findByResource
public void findByResource(ResourceServer resourceServer, Resource resource, Consumer<Policy> consumer)
Description copied from interface:PolicyStoreSearches for all policies associated with theResourceand passes the result to theconsumer- Specified by:
findByResourcein interfacePolicyStore- Parameters:
resourceServer- the resourceServer. Cannot benull.resource- the resource. Cannot benull.consumer- consumer of policies resulted from the search
-
findByResourceType
public void findByResourceType(ResourceServer resourceServer, String type, Consumer<Policy> policyConsumer)
Description copied from interface:PolicyStoreSearches for policies associated with aResourceServerand passes the result to the consumer- Specified by:
findByResourceTypein interfacePolicyStore- Parameters:
resourceServer- the resourceServer. Cannot benull.type- the type of a resourcepolicyConsumer- consumer of policies resulted from the search
-
findByScopes
public List<Policy> findByScopes(ResourceServer resourceServer, List<Scope> scopes)
Description copied from interface:PolicyStore- Specified by:
findByScopesin interfacePolicyStore- Parameters:
resourceServer- the resource server. Cannot benull.scopes- the scopes- Returns:
- a list of policies associated with the given scopes
-
findByScopes
public void findByScopes(ResourceServer resourceServer, Resource resource, List<Scope> scopes, Consumer<Policy> consumer)
Description copied from interface:PolicyStoreEffectively the same method asPolicyStore.findByScopes(ResourceServer, Resource, List), however in the end theconsumeris fed with the result.- Specified by:
findByScopesin interfacePolicyStore
-
findByType
public List<Policy> findByType(ResourceServer resourceServer, String type)
Description copied from interface:PolicyStoreReturns a list ofPolicywith the giventype.- Specified by:
findByTypein interfacePolicyStore- Parameters:
resourceServer- the resource server id. Cannot benull.type- the type of the policy- Returns:
- a list of policies with the given type
-
findDependentPolicies
public List<Policy> findDependentPolicies(ResourceServer resourceServer, String id)
Description copied from interface:PolicyStoreReturns a list ofPolicythat depends on another policy with the givenid.- Specified by:
findDependentPoliciesin interfacePolicyStore- 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
-
preRemove
public void preRemove(RealmModel realm)
-
preRemove
public void preRemove(RealmModel realm, ResourceServer resourceServer)
-
-