Principal Management : Differences wrt Jackrabbit 2.x
Replacement for Jackrabbit Internals
As of Oak 1.0 the following interfaces and class that were internal to Jackrabbit have been made part of public API exposed by Oak:
- org.apache.jackrabbit.oak.spi.security.principal.PrincipalProvider: corresponds to o.a.j.core.security.principal.PrincipalProvider
- org.apache.jackrabbit.oak.spi.security.principal.AdminPrincipal: corresponds to o.a.j.core.security.principal.AdminPrincipal
- org.apache.jackrabbit.oak.spi.security.principal.EveryonePrincipal: corresponds to o.a.j.core.security.principal.EveryonePrincipal
- org.apache.jackrabbit.oak.spi.security.principal.SystemPrincipal: corresponds to o.a.j.core.security.SystemPrincipal
Combining Principals from Different Sources
In contrast to Jackrabbit 2.x Oak only deals with a single PrincipalProvider
. In
order to combine principals from different sources a implementation that properly
handles the different sources is required; the CompositePrincipalProvider is an
example that combines multiple implementations.
See section Pluggability for an example.