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 ClassesNested 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
ConstructorsConstructorDescriptionCompositeAuthorizationConfiguration
(@NotNull SecurityProvider securityProvider) -
Method Summary
Modifier and TypeMethodDescription@NotNull AccessControlManager
getAccessControlManager
(@NotNull Root root, @NotNull NamePathMapper namePathMapper) @NotNull PermissionProvider
getPermissionProvider
(@NotNull Root root, @NotNull String workspaceName, @NotNull Set<Principal> principals) @NotNull RestrictionProvider
void
withAggregationFilter
(@NotNull AggregationFilter aggregationFilter) void
withCompositionType
(@Nullable 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 Details
-
CompositeAuthorizationConfiguration
public CompositeAuthorizationConfiguration() -
CompositeAuthorizationConfiguration
-
-
Method Details
-
withCompositionType
-
withAggregationFilter
-
getAccessControlManager
@NotNull public @NotNull AccessControlManager getAccessControlManager(@NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper) - Specified by:
getAccessControlManager
in interfaceAuthorizationConfiguration
-
getRestrictionProvider
- Specified by:
getRestrictionProvider
in interfaceAuthorizationConfiguration
-
getPermissionProvider
@NotNull public @NotNull PermissionProvider getPermissionProvider(@NotNull @NotNull Root root, @NotNull @NotNull String workspaceName, @NotNull @NotNull Set<Principal> principals) - Specified by:
getPermissionProvider
in interfaceAuthorizationConfiguration
-