Class SimpleSecurityManager
- java.lang.Object
-
- org.apache.jackrabbit.core.security.simple.SimpleSecurityManager
-
- All Implemented Interfaces:
JackrabbitSecurityManager
public class SimpleSecurityManager extends Object implements JackrabbitSecurityManager
SimpleSecurityManager
: simple implementation ignoring both configuration entries for 'principalProvider' and for 'workspaceAccessManager'. The AccessManager is initialized usingAccessManager.init(org.apache.jackrabbit.core.security.AMContext)
.
-
-
Constructor Summary
Constructors Constructor Description SimpleSecurityManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Disposes this security manager instance and cleans all internal caches.void
dispose(String workspaceName)
Disposes those parts of this security manager that are related to the workspace indicated by the givenworkspaceName
.protected AccessControlProvider
getAccessControlProvider(Session systemSession, String workspaceName)
Always returnsnull
.AccessManager
getAccessManager(Session session, AMContext amContext)
Retrieve theAccessManager
for the givensession
.AuthContext
getAuthContext(Credentials creds, Subject subject, String workspaceName)
Creates an AuthContext for the givenCredentials
andSubject
.
This includes selection of applicatoin specific LoginModules and initalization with credentials and Session to System-WorkspacePrincipalManager
getPrincipalManager(Session session)
Retrieve the principal manager for the givensession
.String
getUserID(Subject subject, String workspaceName)
Retrieve the id to be displayed uponSession.getUserID()
for the specified subject.UserManager
getUserManager(Session session)
Returns the user manager for the specifiedsession
.void
init(Repository repository, Session systemSession)
-
-
-
Method Detail
-
getAccessControlProvider
protected AccessControlProvider getAccessControlProvider(Session systemSession, String workspaceName)
Always returnsnull
. AccessControlProvider configuration is ignored with this security manager. Subclasses may overwrite this lazy behavior that originates from theSimpleAccessManager
.- Parameters:
systemSession
- The system session used to init the security manager.workspaceName
- The name of the workspace for which the provider should be retrieved.- Returns:
- Always returns
null
.
-
init
public void init(Repository repository, Session systemSession) throws RepositoryException
- Specified by:
init
in interfaceJackrabbitSecurityManager
- Throws:
RepositoryException
- See Also:
JackrabbitSecurityManager.init(Repository, Session)
-
dispose
public void dispose(String workspaceName)
Description copied from interface:JackrabbitSecurityManager
Disposes those parts of this security manager that are related to the workspace indicated by the givenworkspaceName
.- Specified by:
dispose
in interfaceJackrabbitSecurityManager
- Parameters:
workspaceName
- Name of the workspace that is being disposed.- See Also:
JackrabbitSecurityManager.dispose(String)
-
close
public void close()
Description copied from interface:JackrabbitSecurityManager
Disposes this security manager instance and cleans all internal caches.- Specified by:
close
in interfaceJackrabbitSecurityManager
- See Also:
JackrabbitSecurityManager.close()
-
getAccessManager
public AccessManager getAccessManager(Session session, AMContext amContext) throws RepositoryException
Description copied from interface:JackrabbitSecurityManager
Retrieve theAccessManager
for the givensession
.- Specified by:
getAccessManager
in interfaceJackrabbitSecurityManager
- Returns:
AccessManager
for the specifiedsession
.- Throws:
RepositoryException
- See Also:
JackrabbitSecurityManager.getAccessManager(Session,AMContext)
-
getPrincipalManager
public PrincipalManager getPrincipalManager(Session session) throws RepositoryException
Description copied from interface:JackrabbitSecurityManager
Retrieve the principal manager for the givensession
.- Specified by:
getPrincipalManager
in interfaceJackrabbitSecurityManager
- Returns:
- PrincipalManager for the given
session
. - Throws:
UnsupportedRepositoryOperationException
- If principal management is not supported.RepositoryException
- if an error occurs- See Also:
JackrabbitSecurityManager.getPrincipalManager(Session)
-
getUserManager
public UserManager getUserManager(Session session) throws RepositoryException
Description copied from interface:JackrabbitSecurityManager
Returns the user manager for the specifiedsession
.- Specified by:
getUserManager
in interfaceJackrabbitSecurityManager
- Returns:
- UserManager for the given
session
. - Throws:
UnsupportedRepositoryOperationException
- If user management is not supported.RepositoryException
- See Also:
JackrabbitSecurityManager.getUserManager(Session)
-
getUserID
public String getUserID(Subject subject, String workspaceName) throws RepositoryException
Description copied from interface:JackrabbitSecurityManager
Retrieve the id to be displayed uponSession.getUserID()
for the specified subject.- Specified by:
getUserID
in interfaceJackrabbitSecurityManager
- Returns:
- userID to be displayed upon
Session.getUserID()
. - Throws:
RepositoryException
- See Also:
JackrabbitSecurityManager.getUserID(javax.security.auth.Subject, String)
-
getAuthContext
public AuthContext getAuthContext(Credentials creds, Subject subject, String workspaceName) throws RepositoryException
Creates an AuthContext for the givenCredentials
andSubject
.
This includes selection of applicatoin specific LoginModules and initalization with credentials and Session to System-Workspace- Specified by:
getAuthContext
in interfaceJackrabbitSecurityManager
workspaceName
- The name of the workspace to login.- Returns:
- an
AuthContext
for the given Credentials, Subject - Throws:
RepositoryException
- in other exceptional repository states
-
-