Class CompositeAuthorizationConfiguration
- java.lang.Object
-
- org.apache.jackrabbit.oak.spi.security.CompositeConfiguration<AuthorizationConfiguration>
-
- org.apache.jackrabbit.oak.security.authorization.composite.CompositeAuthorizationConfiguration
-
- All Implemented Interfaces:
AuthorizationConfiguration
,SecurityConfiguration
public class CompositeAuthorizationConfiguration extends CompositeConfiguration<AuthorizationConfiguration> implements AuthorizationConfiguration
CompositeAuthorizationConfiguration
that combines different authorization models. This implementation has the following characteristics:AccessControlManager
- This method will return an aggregation of
AccessControlManager
s in case multipleAuthorizationConfiguration
s are present (seeCompositeAccessControlManager
). - If the composite only contains a single entry the
AccessControlManager
of this implementation is return without extra wrapping. - If the list of configurations is empty an
IllegalStateException
is thrown.
PermissionProvider
- This method will return an aggregation of
PermissionProvider
s in case multipleAuthorizationConfiguration
s exposing anAggregatedPermissionProvider
are present (seeCompositePermissionProvider
. Note however, that providers not implementing theAggregatedPermissionProvider
extension will be ignored. - If the composite only contains a single entry the
PermissionProvider
of this implementation is return without extra wrapping. - If the list of configurations is empty an
IllegalStateException
is thrown.
RestrictionProvider
- This method will return an aggregation of
RestrictionProvider
s in case multipleAuthorizationConfiguration
s are present (seeCompositeRestrictionProvider
). - If the composite only contains a single entry the
RestrictionProvider
of this implementation is return without extra wrapping. - If the list of configurations is empty
RestrictionProvider.EMPTY
is returned.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CompositeAuthorizationConfiguration.CompositionType
-
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.spi.security.SecurityConfiguration
SecurityConfiguration.Default
-
-
Field Summary
-
Fields inherited from class org.apache.jackrabbit.oak.spi.security.CompositeConfiguration
PARAM_RANKING
-
Fields inherited from interface org.apache.jackrabbit.oak.spi.security.authorization.AuthorizationConfiguration
NAME
-
-
Constructor Summary
Constructors Constructor Description CompositeAuthorizationConfiguration()
CompositeAuthorizationConfiguration(@NotNull SecurityProvider securityProvider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull AccessControlManager
getAccessControlManager(@NotNull Root root, @NotNull NamePathMapper namePathMapper)
@NotNull PermissionProvider
getPermissionProvider(@NotNull Root root, @NotNull java.lang.String workspaceName, @NotNull java.util.Set<java.security.Principal> principals)
@NotNull RestrictionProvider
getRestrictionProvider()
void
withAggregationFilter(@NotNull AggregationFilter aggregationFilter)
void
withCompositionType(@Nullable java.lang.String ct)
-
Methods inherited from class org.apache.jackrabbit.oak.spi.security.CompositeConfiguration
addConfiguration, addConfiguration, getCommitHooks, getConfigurations, getConflictHandlers, getContext, getDefaultConfig, getMonitors, getName, getParameters, getProtectedItemImporters, getRepositoryInitializer, getRootProvider, getSecurityProvider, getTreeProvider, getValidators, getWorkspaceInitializer, removeConfiguration, setDefaultConfig, setRootProvider, setSecurityProvider, setTreeProvider
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.jackrabbit.oak.spi.security.SecurityConfiguration
getCommitHooks, getConflictHandlers, getContext, getMonitors, getName, getParameters, getProtectedItemImporters, getRepositoryInitializer, getValidators, getWorkspaceInitializer
-
-
-
-
Constructor Detail
-
CompositeAuthorizationConfiguration
public CompositeAuthorizationConfiguration()
-
CompositeAuthorizationConfiguration
public CompositeAuthorizationConfiguration(@NotNull @NotNull SecurityProvider securityProvider)
-
-
Method Detail
-
withCompositionType
public void withCompositionType(@Nullable @Nullable java.lang.String ct)
-
withAggregationFilter
public void withAggregationFilter(@NotNull @NotNull AggregationFilter aggregationFilter)
-
getAccessControlManager
@NotNull public @NotNull AccessControlManager getAccessControlManager(@NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper)
- Specified by:
getAccessControlManager
in interfaceAuthorizationConfiguration
-
getRestrictionProvider
@NotNull public @NotNull RestrictionProvider getRestrictionProvider()
- Specified by:
getRestrictionProvider
in interfaceAuthorizationConfiguration
-
getPermissionProvider
@NotNull public @NotNull PermissionProvider getPermissionProvider(@NotNull @NotNull Root root, @NotNull @NotNull java.lang.String workspaceName, @NotNull @NotNull java.util.Set<java.security.Principal> principals)
- Specified by:
getPermissionProvider
in interfaceAuthorizationConfiguration
-
-