Class DataSourceLoginService

  • All Implemented Interfaces:
    org.eclipse.jetty.security.LoginService, 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.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
    • 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