Regarding Admin Console Authentication

Hi All,

This is VaasDasari i am new to this Community , i am Working as (Java) Senior Software Engineer in IMI Mobiles Pvt Ltd Hyderabad. I visited the "iginite realtime "

recently last month. i have gone through the documentation , it’s pretty interesting. i download the entire source code as well as respected API’s.

and i started using this code in my project, it helped me a lot for connecting other IM Clients Simultaneously with available plugins ( Kraken ) using Openfire XMPP Server.

So my Question is :

I have a Database ( XYZ ) :

Eg: i have one Table Called OfUser in my database XYZ with respected columns like , username,password,firstname,email,date

and there after , i installed openfire sourcecode in my eclipse IDE, i deployed the project and i given the database like " openfire " after successfull installation , several tables are imported into the openfire database.

so now i have a database openfire with several tables. this database realted to openfire XMPP Server Application.

and i have a databse XYZ with several tables . this is my application.

and there after i created the VIEW in datbase openfire with name OfUser …so i am getting rows information from XYZ database.

Eg: create view ofuser as
(select username as username,password as plainPassword,password as encryptedPassword,first_name as name,email_address as email,date_of_registration as creationDate,date_of_registration as modificationDate from Database.TableName).

so now my intention i renamed the ofuser table as ofuser1 in openfire database and after that i created the view with the name ( ofuser ) in my XYZ database.

so now i have plenty of records in ofuser table which are getting from my application in Openfire Database.

so now i login to the application and i provided the credentials as admin ( username ) admin ( password) in admin console window and i clicked on submit button . so here i am unable to login into the application, but however it not even showing the errors in the application, simply it refreshing the

page. i don’t know what the problem.

so i tested the application in debug mode :

the controls are going like this…

  1. AuthFactory --> validating Authenticate() method.

2)AuthToken()

3)XMPP Callback Handler.java --> callbacks

4)Saslserverplainimpl.java

  1. saslauthentication …

hope u can understand my problem, i request you to please suggest me the same, did i went anything worng with that procedure .

if you find any communication mistakes , it would be very grateful for your feedback.

Anticipating your help

Regards

VaassDasari

Hi,

I don’t understand why you use a view to connect to a remote database. There is the JDBC auth provider.

Do you want to connect to another Openfire database? There’s a system property “passwordKey” which should be the same on both Openfire servers if you want to be able to use the passwords.

LG

Hi LG,

Thank your for ur reply,

Can u please tell me, how can i configure custom database integration.

i did the integration like this. but , when i login in to database i am getting invalid username and password in admin console,

I have a Database Mobyko with table name ACCOUNT having fields , username,password,first_name,email_address

do i need to do any changes in jdbcauthprovider.java and jdbcuserprovider.java class files,

more over i am little bit confusing, then what is the purpose of AuthFactory.java…here in this class we are configuring all the system properties…

Hope u can assist me,

Procedure :

Openfire.xml :

<?xml version="1.0" encoding="UTF-8"?> 9090 9091

en

dasari,vaass

    <auth>
         <className>org.jivesoftware.openfire.auth.JDBCAuthProvider</className>
    </auth>

    <user>
         <className>org.jivesoftware.openfire.user.JDBCUserProvider</className>
    </user>


   
</provider>

<connectionProvider>
        <className>org.jivesoftware.database.DefaultConnectionProvider</className>
</connectionProvider>
com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/mobyko?user=root&password=adm in SELECT password FROM ACCOUNT WHERE username=? LIMIT 1 plain
<jdbcUserProvider>
       
        <loadUserSQL>SELECT first_name, email_address FROM ACCOUNT WHERE username = ? LIMIT 1</loadUserSQL>
        <userCountSQL>SELECT COUNT(*) FROM ACCOUNT</userCountSQL>
        <allUsersSQL>SELECT username FROM ACCOUNT ORDER BY username ASC</allUsersSQL>
           <searchSQL>SELECT username FROM ACCOUNT WHERE</searchSQL>
           <usernameField>username</usernameField>
        <nameField>first_name</nameField>
        <emailField>email_address</emailField>

true

<log>
   
    <debug>
     <enabled>true</enabled>
    </debug>

</log>

your reply would be appreciable,

Anticipating your help,

Regards Dasari…