A ver si te entedi lo que quieres hacer es autenticar usando una base de datos si es eso te paso esta configuracion para que mires como tienes que poner en el conf.xml
Cita: <?xml version='1.0' encoding='utf-8'?>
<Server>
<Listener className="org.apache.catalina.mbeans.ServerLifecy cleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResour cesLifecycleListener"/>
<GlobalNamingResources>
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
<Resource name="UsersDB" type="javax.sql.DataSource"/> <!--El objeto JNDI que usaras para conectarte con la base de datos-->
<ResourceParams name="UserDatabase">
<parameter>
<name>factory</name>
<value>org.apache.catalina.users.MemoryUserDatabas eFactory</value>
</parameter>
<parameter>
<name>pathname</name>
<value>conf/tomcat-users.xml</value>
</parameter>
<!--Parametros del objeto JNDI-->
</ResourceParams>
<ResourceParams name="UsersDB">
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>4</value>
</parameter>
<parameter>
<name>username</name> <!--Usuario de la Base de Datos-->
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>DataBasePassword</value> <!--Password de la Base de Datos-->
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost/usersdb</value> <!--URL de Fuente de Datos-->
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value> <!--Clase de Manejador JDBC-->
</parameter>
<parameter>
<name>maxIdle</name>
<value>2</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>
<Service name="Catalina">
<Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
</Connector>
<Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkC oyoteHandler" redirectPort="8443">
</Connector>
<Engine defaultHost="localhost" name="Catalina">
<Host appBase="webapps" name="localhost">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
</Host>
<Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
<Realm className = "org.apache.catalina.realm.UserDatabaseRealm"/> <!--Defines la forma en que usara para autenticar-->
</Engine>
</Service>
</Server>
En este caso se conecta con la base de datos userdb utilizando una base de datos MySQL usando el conector JDBC
Cita: mysql> show tables;
+-------------------+
| Tables_in_usersdb |
+-------------------+
| user_roles |
| users |
+-------------------+
mysql> desc user_roles;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| user_name | varchar(15) | | PRI | | |
| role_name | varchar(15) | | PRI | | |
+-----------+-------------+------+-----+---------+-------+
mysql> desc users;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| user_name | varchar(15) | | PRI | | |
| user_pass | varchar(15) | | | | |
+-----------+-------------+------+-----+---------+-------+