org.mortbay.jetty.plus.security
Class DataSourceUserRealm

java.lang.Object
  extended by org.mortbay.component.AbstractLifeCycle
      extended by org.mortbay.jetty.security.HashUserRealm
          extended by org.mortbay.jetty.plus.security.DataSourceUserRealm
All Implemented Interfaces:
LifeCycle, SSORealm, UserRealm

public class DataSourceUserRealm
extends HashUserRealm

DataSourceUserRealm Obtain user/password/role information from a database via jndi DataSource.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.mortbay.component.LifeCycle
LifeCycle.Listener
 
Field Summary
 
Fields inherited from class org.mortbay.jetty.security.HashUserRealm
__SSO, _roles, _users
 
Fields inherited from class org.mortbay.component.AbstractLifeCycle
_listeners
 
Fields inherited from interface org.mortbay.jetty.UserRealm
NO_USER, NOBODY, NOT_CHECKED
 
Constructor Summary
DataSourceUserRealm()
           
DataSourceUserRealm(String jndiName)
           
 
Method Summary
 Principal authenticate(String username, Object credentials, Request request)
          Check if user is authentic
 int getCacheMs()
           
 String getRoleTableKey()
           
 String getRoleTableName()
           
 String getRoleTableRoleField()
           
 Server getServer()
           
 String getUserRoleTableName()
           
 String getUserRoleTableRoleKey()
           
 String getUserRoleTableUserKey()
           
 String getUserTableKey()
           
 String getUserTableName()
           
 String getUserTablePasswordField()
           
 String getUserTableUserField()
           
 boolean isUserInRole(Principal user, String roleName)
          Check if a user is in a role.
protected  void loadConfig()
          Load database configuration from properties file.
 void setCacheMs(int ms)
           
 void setRoleTableKey(String tableKey)
           
 void setRoleTableName(String tableName)
           
 void setRoleTableRoleField(String tableRoleField)
           
 void setServer(Server server)
           
 void setUserRoleTableName(String roleTableName)
           
 void setUserRoleTableRoleKey(String roleTableRoleKey)
           
 void setUserRoleTableUserKey(String roleTableUserKey)
           
 void setUserTableKey(String tableKey)
           
 void setUserTableName(String name)
           
 void setUserTablePasswordField(String tablePasswordField)
           
 void setUserTableUserField(String tableUserField)
           
 
Methods inherited from class org.mortbay.jetty.security.HashUserRealm
addUserToRole, clearSingleSignOn, disassociate, doStart, doStop, dump, getConfig, getConfigResource, getName, getPrincipal, getRefreshInterval, getSingleSignOn, getSSORealm, logout, popRole, pushRole, put, reauthenticate, setConfig, setName, setRefreshInterval, setSingleSignOn, setSSORealm, toString
 
Methods inherited from class org.mortbay.component.AbstractLifeCycle
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DataSourceUserRealm

public DataSourceUserRealm(String jndiName)

DataSourceUserRealm

public DataSourceUserRealm()
Method Detail

setServer

public void setServer(Server server)

getServer

public Server getServer()

setUserTableName

public void setUserTableName(String name)

getUserTableName

public String getUserTableName()

getUserTableKey

public String getUserTableKey()

setUserTableKey

public void setUserTableKey(String tableKey)

getUserTableUserField

public String getUserTableUserField()

setUserTableUserField

public void setUserTableUserField(String tableUserField)

getUserTablePasswordField

public String getUserTablePasswordField()

setUserTablePasswordField

public void setUserTablePasswordField(String tablePasswordField)

getRoleTableName

public String getRoleTableName()

setRoleTableName

public void setRoleTableName(String tableName)

getRoleTableKey

public String getRoleTableKey()

setRoleTableKey

public void setRoleTableKey(String tableKey)

getRoleTableRoleField

public String getRoleTableRoleField()

setRoleTableRoleField

public void setRoleTableRoleField(String tableRoleField)

getUserRoleTableName

public String getUserRoleTableName()

setUserRoleTableName

public void setUserRoleTableName(String roleTableName)

getUserRoleTableUserKey

public String getUserRoleTableUserKey()

setUserRoleTableUserKey

public void setUserRoleTableUserKey(String roleTableUserKey)

getUserRoleTableRoleKey

public String getUserRoleTableRoleKey()

setUserRoleTableRoleKey

public void setUserRoleTableRoleKey(String roleTableRoleKey)

setCacheMs

public void setCacheMs(int ms)

getCacheMs

public int getCacheMs()

authenticate

public Principal authenticate(String username,
                              Object credentials,
                              Request request)
Check if user is authentic

Specified by:
authenticate in interface UserRealm
Overrides:
authenticate in class HashUserRealm
Parameters:
username - The username.
credentials - The user credentials, normally a String password.
request - The request to be authenticated. Additional parameters may be extracted or set on this request as needed for the authentication mechanism (none required for BASIC and FORM authentication).
Returns:
The authenticated UserPrincipal.
See Also:
HashUserRealm.authenticate(java.lang.String, java.lang.Object, org.mortbay.jetty.Request)

isUserInRole

public boolean isUserInRole(Principal user,
                            String roleName)
Check if a user is in a role.

Specified by:
isUserInRole in interface UserRealm
Overrides:
isUserInRole in class HashUserRealm
Parameters:
user - The user, which must be from this realm
roleName -
Returns:
True if the user can act in the role.

loadConfig

protected void loadConfig()
                   throws IOException
Load database configuration from properties file. This is really here to satisfy the HashUserRealm interface. Setters should be used instead.

Overrides:
loadConfig in class HashUserRealm
Throws:
IOException


Copyright © 1995-2008 Mort Bay Consulting. All Rights Reserved.