Class DataSourceLoginService

  • All Implemented Interfaces:
    org.eclipse.jetty.security.LoginService, org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.Dumpable.DumpableContainer, org.eclipse.jetty.util.component.LifeCycle

    public class DataSourceLoginService
    extends org.eclipse.jetty.security.AbstractLoginService
    DataSourceUserRealm

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

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      class  DataSourceLoginService.DBUserPrincipal
      DBUser
      • Nested classes/interfaces inherited from class org.eclipse.jetty.security.AbstractLoginService

        org.eclipse.jetty.security.AbstractLoginService.RolePrincipal, org.eclipse.jetty.security.AbstractLoginService.UserPrincipal
      • Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container

        org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable

        org.eclipse.jetty.util.component.Dumpable.DumpableContainer
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

        org.eclipse.jetty.util.component.LifeCycle.Listener
    • Field Summary

      • Fields inherited from class org.eclipse.jetty.security.AbstractLoginService

        _fullValidate, _identityService, _name
      • Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
      • Fields inherited from interface org.eclipse.jetty.util.component.Dumpable

        KEY
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean getCreateTables()  
      java.lang.String getJndiName()  
      java.lang.String getRoleTableKey()  
      java.lang.String getRoleTableName()  
      java.lang.String getRoleTableRoleField()  
      org.eclipse.jetty.server.Server getServer()  
      java.lang.String getUserRoleTableName()  
      java.lang.String getUserRoleTableRoleKey()  
      java.lang.String getUserRoleTableUserKey()  
      java.lang.String getUserTableKey()  
      java.lang.String getUserTableName()  
      java.lang.String getUserTablePasswordField()  
      java.lang.String getUserTableUserField()  
      void initDb()
      Lookup the datasource for the jndiName and formulate the necessary sql query strings based on the configured table and column names.
      java.lang.String[] loadRoleInfo​(org.eclipse.jetty.security.AbstractLoginService.UserPrincipal user)  
      org.eclipse.jetty.security.AbstractLoginService.UserPrincipal loadUserInfo​(java.lang.String username)  
      void setCreateTables​(boolean createTables)  
      void setJndiName​(java.lang.String jndi)  
      void setRoleTableKey​(java.lang.String tableKey)  
      void setRoleTableName​(java.lang.String tableName)  
      void setRoleTableRoleField​(java.lang.String tableRoleField)  
      void setServer​(org.eclipse.jetty.server.Server server)  
      void setUserRoleTableName​(java.lang.String roleTableName)  
      void setUserRoleTableRoleKey​(java.lang.String roleTableRoleKey)  
      void setUserRoleTableUserKey​(java.lang.String roleTableUserKey)  
      void setUserTableKey​(java.lang.String tableKey)  
      void setUserTableName​(java.lang.String name)  
      void setUserTablePasswordField​(java.lang.String tablePasswordField)  
      void setUserTableUserField​(java.lang.String tableUserField)  
      • Methods inherited from class org.eclipse.jetty.security.AbstractLoginService

        getIdentityService, getName, isFullValidate, login, logout, setFullValidate, setIdentityService, setName, toString, validate
      • Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle

        addBean, addBean, addEventListener, addManaged, contains, destroy, doStart, doStop, dump, dump, dump, dump, dump, dumpBeans, dumpObject, dumpObjects, dumpStdErr, dumpThis, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, start, stop, unmanage, updateBean, updateBean, updateBeans
      • Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        addLifeCycleListener, getState, getState, getStopTimeout, 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
      • Methods inherited from interface org.eclipse.jetty.util.component.Dumpable

        dumpSelf
      • Methods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer

        isDumpable
    • Constructor Detail

      • DataSourceLoginService

        public DataSourceLoginService()
      • DataSourceLoginService

        public DataSourceLoginService​(java.lang.String name)
      • DataSourceLoginService

        public DataSourceLoginService​(java.lang.String name,
                                      org.eclipse.jetty.security.IdentityService identityService)
    • Method Detail

      • setJndiName

        public void setJndiName​(java.lang.String jndi)
      • getJndiName

        public java.lang.String getJndiName()
      • setServer

        public void setServer​(org.eclipse.jetty.server.Server server)
      • getServer

        public org.eclipse.jetty.server.Server getServer()
      • setCreateTables

        public void setCreateTables​(boolean createTables)
      • getCreateTables

        public boolean getCreateTables()
      • setUserTableName

        public void setUserTableName​(java.lang.String name)
      • getUserTableName

        public java.lang.String getUserTableName()
      • getUserTableKey

        public java.lang.String getUserTableKey()
      • setUserTableKey

        public void setUserTableKey​(java.lang.String tableKey)
      • getUserTableUserField

        public java.lang.String getUserTableUserField()
      • setUserTableUserField

        public void setUserTableUserField​(java.lang.String tableUserField)
      • getUserTablePasswordField

        public java.lang.String getUserTablePasswordField()
      • setUserTablePasswordField

        public void setUserTablePasswordField​(java.lang.String tablePasswordField)
      • getRoleTableName

        public java.lang.String getRoleTableName()
      • setRoleTableName

        public void setRoleTableName​(java.lang.String tableName)
      • getRoleTableKey

        public java.lang.String getRoleTableKey()
      • setRoleTableKey

        public void setRoleTableKey​(java.lang.String tableKey)
      • getRoleTableRoleField

        public java.lang.String getRoleTableRoleField()
      • setRoleTableRoleField

        public void setRoleTableRoleField​(java.lang.String tableRoleField)
      • getUserRoleTableName

        public java.lang.String getUserRoleTableName()
      • setUserRoleTableName

        public void setUserRoleTableName​(java.lang.String roleTableName)
      • getUserRoleTableUserKey

        public java.lang.String getUserRoleTableUserKey()
      • setUserRoleTableUserKey

        public void setUserRoleTableUserKey​(java.lang.String roleTableUserKey)
      • getUserRoleTableRoleKey

        public java.lang.String getUserRoleTableRoleKey()
      • setUserRoleTableRoleKey

        public void setUserRoleTableRoleKey​(java.lang.String roleTableRoleKey)
      • loadUserInfo

        public org.eclipse.jetty.security.AbstractLoginService.UserPrincipal loadUserInfo​(java.lang.String username)
        Specified by:
        loadUserInfo in class org.eclipse.jetty.security.AbstractLoginService
      • loadRoleInfo

        public java.lang.String[] loadRoleInfo​(org.eclipse.jetty.security.AbstractLoginService.UserPrincipal user)
        Specified by:
        loadRoleInfo in class org.eclipse.jetty.security.AbstractLoginService
      • initDb

        public void initDb()
                    throws javax.naming.NamingException,
                           java.sql.SQLException
        Lookup the datasource for the jndiName and formulate the necessary sql query strings based on the configured table and column names.
        Throws:
        javax.naming.NamingException - if unable to init jndi
        java.sql.SQLException - if unable to init database