External auth db

good evening,

i have installed the wildfire server successfully on an debian woody system (user db: mysql). There is already an existing user database with passwords saved in varchar32 (md5) fields. i just found the “Custom Database Integration Guide” but after editing the config file and restart the server i’'ve got some problems with the auth process…

i just add

in the config file… but if i try to login with an existing username with the adapted pasword i get allways the same error (something like “auth failed”). can someone help me?

ps. sorry for my bad english

kind regrads

daniel

i test some queries, that would be succesfully executed but i always get the same error…

2006.12.11 21:06:24 [org.jivesoftware.wildfire.auth.JDBCAuthProvider.getPasswordValue(JDBCAuthProvi der.java:208)

] Exception in JDBCAuthProvider

java.sql.SQLException: The url cannot be null

at java.sql.DriverManager.getConnection(Unknown Source)

at java.sql.DriverManager.getConnection(Unknown Source)

at org.jivesoftware.wildfire.auth.JDBCAuthProvider.getPasswordValue(JDBCAuthProvid er.java:194)

at org.jivesoftware.wildfire.auth.JDBCAuthProvider.authenticate(JDBCAuthProvider.j ava:104)

at org.jivesoftware.wildfire.auth.AuthFactory.authenticate(AuthFactory.java:156)

at org.jivesoftware.wildfire.admin.login_jsp._jspService(login_jsp.java:137)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:428)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:830)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:39)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:821)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:821)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:821)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:821)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplica tionHandler.java:821)

at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler. java:471)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568)

at org.mortbay.http.HttpContext.handle(HttpContext.java:1530)

at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.ja va:633)

at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)

at org.mortbay.http.HttpServer.service(HttpServer.java:909)

at org.mortbay.http.HttpConnection.service(HttpConnection.java:816)

at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:982)

at org.mortbay.http.HttpConnection.handle(HttpConnection.java:833)

at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)

at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)

query:

SELECT freunde_dev.tbluser.fldPasswort FROM freunde_dev.tbluser WHERE freunde_dev.tbluser.fldNick=?

The field “fldPasswort” is filled with a MD5 encrypted password string

config settings

I dont have any idea what this error mean to me. I don’'t have any experience with this java stuff

edit: i’'m using mysql 5.0.27

Message was edited by: DanielWithD

Hi Daniel,

you need to specify which ext. database you want to use for auth., like:

LG

So it don’'t choose automaticly the “defaultProvider” when nothing else is set?

This “jdbcProvider” I have to define in the “provider”-section?

Daniel,

Yes, exactly right. The thinking behind this is that you’‘ll generally always have an external database if you’'re trying to do JDBC auth.

-Matt

Hi Daniel,

right as Matt said.

It’'s not a good idea to use the ext. auth-database also for Wildfire. If either Wildfire of the ext. application happen to share a table name nothing will work anymore.

You should really create a new database within MySQL which you use only for Wildfire.

LG

Hey,…

that might be right but if my connection can access the second database to it would be easier to define only one connection instead of two same conections. So whatever… now it works thanks for your help