Interface UserConfiguration
-
- All Superinterfaces:
SecurityConfiguration
- All Known Implementing Classes:
UserConfigurationImpl
public interface UserConfiguration extends SecurityConfiguration
Configuration interface for user management.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.spi.security.SecurityConfiguration
SecurityConfiguration.Default
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default @Nullable CachedMembershipReader
getCachedMembershipReader(@NotNull Root root, @NotNull CachePrincipalFactory cachePrincipalFactory, @NotNull String propName)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of theCachedMembershipReader
interface for the principals represented by the user/groups known to this implementation.default @Nullable CachedMembershipReader
getCachedMembershipReader(@NotNull Root root, @NotNull CachePrincipalFactory cachePrincipalFactory, @NotNull String propName, @NotNull String expirationPropName)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of theCachedMembershipReader
interface for the principals represented by the user/groups known to this implementation.@NotNull UserManager
getUserManager(Root root, NamePathMapper namePathMapper)
Create a newUserManager
instance@Nullable PrincipalProvider
getUserPrincipalProvider(@NotNull Root root, @NotNull NamePathMapper namePathMapper)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of thePrincipalProvider
interface for the principals represented by the user/groups known to this implementation.-
Methods inherited from interface org.apache.jackrabbit.oak.spi.security.SecurityConfiguration
getCommitHooks, getConflictHandlers, getContext, getMonitors, getName, getParameters, getProtectedItemImporters, getRepositoryInitializer, getValidators, getWorkspaceInitializer
-
-
-
-
Field Detail
-
NAME
static final String NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getUserManager
@NotNull @NotNull UserManager getUserManager(Root root, NamePathMapper namePathMapper)
Create a newUserManager
instance- Parameters:
root
- The root associated with the user manager.namePathMapper
- A name path mapper used for conversion of jcr/oak names/paths.- Returns:
- a new instance of
UserManager
-
getUserPrincipalProvider
@Nullable @Nullable PrincipalProvider getUserPrincipalProvider(@NotNull @NotNull Root root, @NotNull @NotNull NamePathMapper namePathMapper)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of thePrincipalProvider
interface for the principals represented by the user/groups known to this implementation. If this method returnsnull
the security setup will by default use a basicPrincipalProvider
implementation based on public user management API or a combination of otherPrincipalProvider
s as configured with the repository setup.- Parameters:
root
- The root used to read the principal information from.namePathMapper
- TheNamePathMapper
to convert oak paths to JCR paths.- Returns:
- An implementation of
PrincipalProvider
ornull
if principal discovery is provided by other means of if the default principal provider implementation should be used that acts on public user management API. - See Also:
PrincipalConfiguration
-
getCachedMembershipReader
@Nullable default @Nullable CachedMembershipReader getCachedMembershipReader(@NotNull @NotNull Root root, @NotNull @NotNull CachePrincipalFactory cachePrincipalFactory, @NotNull @NotNull String propName)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of theCachedMembershipReader
interface for the principals represented by the user/groups known to this implementation. If this method returnsnull
the security setup won't, by default, use a cached membership reader.- Parameters:
root
- The root used to read the principal information from.cachePrincipalFactory
- The factory to create the principal from the cache.propName
- The name of the property that contains the cache.- Returns:
- An implementation of
CachedMembershipReader
ornull
if the UserConfiguration implementation does not provide a cached membership reader.
-
getCachedMembershipReader
@Nullable default @Nullable CachedMembershipReader getCachedMembershipReader(@NotNull @NotNull Root root, @NotNull @NotNull CachePrincipalFactory cachePrincipalFactory, @NotNull @NotNull String propName, @NotNull @NotNull String expirationPropName)
Optional method that allows a given user management implementation to provide a specific and optimized implementation of theCachedMembershipReader
interface for the principals represented by the user/groups known to this implementation. If this method returnsnull
the security setup won't, by default, use a cached membership reader.- Parameters:
root
- The root used to read the principal information from.cachePrincipalFactory
- The factory to create the principal from the cache.propName
- The name of the property that contains the cache.expirationPropName
- The name of the property that contains cache expiration time.- Returns:
- An implementation of
CachedMembershipReader
ornull
if the UserConfiguration implementation does not provide a cached membership reader.
-
-