org.hippoecm.hst.security.impl
Class JcrAuthenticationProvider

java.lang.Object
  extended by org.hippoecm.hst.security.impl.JcrAuthenticationProvider
All Implemented Interfaces:
AuthenticationProvider
Direct Known Subclasses:
HippoAuthenticationProvider

public class JcrAuthenticationProvider
extends Object
implements AuthenticationProvider

JcrAuthenticationProvider

Basic authentication provider implementation which queries role nodes by the specified rolesOfUserQuery. The default configuration is to query group nodes from the Hippo Repository.

Version:
$Id$

Field Summary
static String DEFAULT_ROLES_OF_USER_QUERY
           
 
Constructor Summary
JcrAuthenticationProvider(javax.jcr.Repository systemRepository, javax.jcr.Credentials systemCreds, javax.jcr.Repository userAuthRepository)
           
 
Method Summary
 User authenticate(String userName, char[] password)
          Authenticate a user.
 String getDefaultRoleName()
           
 String getQueryLanguage()
           
protected  Set<String> getRoleNamesOfUser(String username)
           
 Set<Role> getRolesByUsername(String username)
          Returns security roles of the given username
 String getRolesOfUserQuery()
           
 javax.jcr.Credentials getSystemCredentials()
           
 javax.jcr.Repository getSystemRepository()
           
 javax.jcr.Repository getUserAuthRepository()
           
 void setDefaultRoleName(String defaultRoleName)
           
 void setQueryLanguage(String queryLanguage)
           
 void setRolesOfUserQuery(String rolesOfUserQuery)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_ROLES_OF_USER_QUERY

public static final String DEFAULT_ROLES_OF_USER_QUERY
See Also:
Constant Field Values
Constructor Detail

JcrAuthenticationProvider

public JcrAuthenticationProvider(javax.jcr.Repository systemRepository,
                                 javax.jcr.Credentials systemCreds,
                                 javax.jcr.Repository userAuthRepository)
Method Detail

getSystemRepository

public javax.jcr.Repository getSystemRepository()

getSystemCredentials

public javax.jcr.Credentials getSystemCredentials()

getUserAuthRepository

public javax.jcr.Repository getUserAuthRepository()

setRolesOfUserQuery

public void setRolesOfUserQuery(String rolesOfUserQuery)

getRolesOfUserQuery

public String getRolesOfUserQuery()

setQueryLanguage

public void setQueryLanguage(String queryLanguage)

getQueryLanguage

public String getQueryLanguage()

setDefaultRoleName

public void setDefaultRoleName(String defaultRoleName)

getDefaultRoleName

public String getDefaultRoleName()

authenticate

public User authenticate(String userName,
                         char[] password)
                  throws SecurityException
Description copied from interface: AuthenticationProvider
Authenticate a user.

Specified by:
authenticate in interface AuthenticationProvider
Parameters:
userName - The user name.
password - The user password.
Returns:
the User
Throws:
SecurityException

getRolesByUsername

public Set<Role> getRolesByUsername(String username)
                             throws SecurityException
Description copied from interface: AuthenticationProvider
Returns security roles of the given username

Specified by:
getRolesByUsername in interface AuthenticationProvider
Returns:
Throws:
SecurityException

getRoleNamesOfUser

protected Set<String> getRoleNamesOfUser(String username)
                                  throws javax.jcr.LoginException,
                                         javax.jcr.RepositoryException
Throws:
javax.jcr.LoginException
javax.jcr.RepositoryException


Copyright © 2008-2012 Hippo. All Rights Reserved.