info.magnolia.cms.security
Class MgnlUserManager

java.lang.Object
  extended by info.magnolia.cms.security.MgnlUserManager
All Implemented Interfaces:
UserManager
Direct Known Subclasses:
HierarchicalUserManager, SystemUserManager

public class MgnlUserManager
extends java.lang.Object
implements UserManager

Manages the users stored in magnolia itself.

Version:
$Revision: 33092 $ ($Author: gjoseph $)
Author:
philipp

Field Summary
static java.lang.String NODE_ACLUSERS
           
static java.lang.String PROPERTY_EMAIL
           
static java.lang.String PROPERTY_LANGUAGE
           
static java.lang.String PROPERTY_LASTACCESS
           
static java.lang.String PROPERTY_PASSWORD
           
static java.lang.String PROPERTY_TITLE
           
 
Fields inherited from interface info.magnolia.cms.security.UserManager
ANONYMOUS_USER, SYSTEM_PSWD, SYSTEM_USER
 
Constructor Summary
MgnlUserManager()
          Do not instantiate it!
 
Method Summary
 void changePassword(User user, java.lang.String newPassword)
           
 User createUser(java.lang.String name, java.lang.String pw)
          Creates a user without security restrictions
protected  Content createUserNode(java.lang.String name)
           
protected  java.lang.String encodePassword(java.lang.String clearPassword)
           
protected  Content findUserNode(java.lang.String realm, java.lang.String name)
          Helper method to find a user in a certain realm.
 java.util.Collection<User> getAllUsers()
          All users
 User getAnonymousUser()
          SystemUserManager does this.
protected  User getFromRepository(java.lang.String name)
           
protected  HierarchyManager getHierarchyManager()
          return the user HierarchyManager (through the system context)
 java.lang.String getName()
           
 java.lang.String getRealmName()
           
 User getSystemUser()
          SystemUserManager does this.
 User getUser(java.lang.String name)
          Get the user object.
 User getUser(javax.security.auth.Subject subject)
          Initialize new user using JAAS authenticated/authorized subject
protected  User newUserInstance(Content node)
          Creates a MgnlUser out of a jcr node.
 void setName(java.lang.String name)
           
protected  void setPasswordProperty(Content userNode, java.lang.String clearPassword)
           
protected  MgnlUser userInstance(Content node)
          Deprecated. since 4.3.1 - use newUserInstance(info.magnolia.cms.core.Content)
protected  void validateUsername(java.lang.String name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROPERTY_EMAIL

public static final java.lang.String PROPERTY_EMAIL
See Also:
Constant Field Values

PROPERTY_LANGUAGE

public static final java.lang.String PROPERTY_LANGUAGE
See Also:
Constant Field Values

PROPERTY_LASTACCESS

public static final java.lang.String PROPERTY_LASTACCESS
See Also:
Constant Field Values

PROPERTY_PASSWORD

public static final java.lang.String PROPERTY_PASSWORD
See Also:
Constant Field Values

PROPERTY_TITLE

public static final java.lang.String PROPERTY_TITLE
See Also:
Constant Field Values

NODE_ACLUSERS

public static final java.lang.String NODE_ACLUSERS
See Also:
Constant Field Values
Constructor Detail

MgnlUserManager

public MgnlUserManager()
Do not instantiate it!

Method Detail

getName

public java.lang.String getName()

setName

public void setName(java.lang.String name)

getRealmName

public java.lang.String getRealmName()

getUser

public User getUser(java.lang.String name)
Get the user object. Uses a search

Specified by:
getUser in interface UserManager
Parameters:
name -
Returns:
the user object

getUser

public User getUser(javax.security.auth.Subject subject)
             throws java.lang.UnsupportedOperationException
Description copied from interface: UserManager
Initialize new user using JAAS authenticated/authorized subject

Specified by:
getUser in interface UserManager
Throws:
java.lang.UnsupportedOperationException

getFromRepository

protected User getFromRepository(java.lang.String name)
                          throws javax.jcr.RepositoryException
Throws:
javax.jcr.RepositoryException

findUserNode

protected Content findUserNode(java.lang.String realm,
                               java.lang.String name)
                        throws javax.jcr.RepositoryException
Helper method to find a user in a certain realm. Uses JCR Query.

Throws:
javax.jcr.RepositoryException

getSystemUser

public User getSystemUser()
                   throws java.lang.UnsupportedOperationException
SystemUserManager does this.

Specified by:
getSystemUser in interface UserManager
Returns:
system user
Throws:
java.lang.UnsupportedOperationException

getAnonymousUser

public User getAnonymousUser()
                      throws java.lang.UnsupportedOperationException
SystemUserManager does this.

Specified by:
getAnonymousUser in interface UserManager
Returns:
anonymous user
Throws:
java.lang.UnsupportedOperationException

getAllUsers

public java.util.Collection<User> getAllUsers()
All users

Specified by:
getAllUsers in interface UserManager
Returns:
collection of User objects

createUser

public User createUser(java.lang.String name,
                       java.lang.String pw)
Description copied from interface: UserManager
Creates a user without security restrictions

Specified by:
createUser in interface UserManager
Parameters:
name -
pw -
Returns:
the created User

changePassword

public void changePassword(User user,
                           java.lang.String newPassword)
Specified by:
changePassword in interface UserManager

setPasswordProperty

protected void setPasswordProperty(Content userNode,
                                   java.lang.String clearPassword)
                            throws javax.jcr.RepositoryException
Throws:
javax.jcr.RepositoryException

encodePassword

protected java.lang.String encodePassword(java.lang.String clearPassword)

validateUsername

protected void validateUsername(java.lang.String name)

createUserNode

protected Content createUserNode(java.lang.String name)
                          throws javax.jcr.RepositoryException
Throws:
javax.jcr.RepositoryException

getHierarchyManager

protected HierarchyManager getHierarchyManager()
return the user HierarchyManager (through the system context)


userInstance

protected MgnlUser userInstance(Content node)
Deprecated. since 4.3.1 - use newUserInstance(info.magnolia.cms.core.Content)


newUserInstance

protected User newUserInstance(Content node)
Creates a MgnlUser out of a jcr node. Can be overridden in order to provide a different implementation.

Since:
4.3.1


Copyright © 2003-2010 Magnolia International Ltd.. All Rights Reserved.