Я пытаюсь настроить OpenFire на Ubuntu для MySQL. Этот вопрос я не могу для аутентификации пользователей с помощью базы данных B.Конфигурация Openfire для интеграции пользовательской базы данных для MySQL
Вот конфигурация мне нужно
1) База данных А держать таблицы OpenFire. 2) Существующая база данных B, содержащая пользовательскую инфорацию, которая мне нужна для входа пользователя через openfire
Следующее руководство по открытому файлу для интеграции пользовательской базы данных. https://www.igniterealtime.org/builds/openfire/docs/latest/documentation/db-integration-guide.html
Если кто-либо, имеющий аналогичную конфигурацию, может успешно настроить openfire, пожалуйста, помогите.
Вот openfire.xml, все свойства, указанные в XML уже сохранены в ofProp таблице, а ..
<jive>
<connectionProvider>
<className>org.jivesoftware.database.DefaultConnectionProvider</className>
</connectionProvider>
<database>
<defaultProvider>
<driver>com.mysql.jdbc.Driver</driver>
<serverURL>jdbc:mysql://localhost:3306/DBOpenFire?rewriteBatchedStatements=true</serverURL>
<username encrypted="true">200a0b84b1fa2jsdsdjds31c2abf99393c0a31a1de5c734edf</username>
<password encrypted="true">67452fbde9c80636f8486ea43932kksddfdksjdsd0b12284eac45455</password>
<testSQL>select 1</testSQL>
<testBeforeUse>false</testBeforeUse>
<testAfterUse>false</testAfterUse>
<minConnections>5</minConnections>
<maxConnections>25</maxConnections>
<connectionTimeout>1.0</connectionTimeout>
</defaultProvider>
</database>
<setup>true</setup>
<provider>
<auth>
<className>org.jivesoftware.openfire.auth.JDBCAuthProvider</className>
</auth>
<user>
<className>org.jivesoftware.openfire.user.JDBCUserProvider</className>
</user>
</provider>
<jdbcProvider>
<driver>com.mysql.jdbc.Driver</driver>
<connectionString>jdbc:mysql://localhost/DBUsers?user=root&password=mypasscode</connectionString>
</jdbcProvider>
<jdbcAuthProvider>
<passwordSQL>SELECT Password from tblUser where UserName=?</passwordSQL>
<passwordType>plain</passwordType>
</jdbcAuthProvider>
<jdbcUserProvider>
<loadUserSQL>SELECT * FROM tblUser where UserName=?</loadUserSQL>
<userCountSQL>SELECT COUNT(*) FROM tblUser</userCountSQL>
<allUsersSQL>SELECT UserName FROM tblUser </allUsersSQL>
<searchSQL>SELECT UserNameFROM tblUser WHERE</searchSQL>
<usernameField>UserName</usernameField>
<nameField>UserName</nameField>
</jdbcUserProvider>
</jive>
ofProperty Значения:
jdbcAuthProvider.passwordSQL SELECT UserPassword from tblUser where UserName=?
jdbcAuthProvider.passwordType plain
jdbcProvider.driver com.mysql.jdbc.Driver
jdbcProvider.connectionString jdbc:mysql://localhost:3306/DBUsers?user=root&password=mypasscode
jdbcUserProvider.loadUserSQL SELECT * FROM tblUser where UserName=?
jdbcUserProvider.userCountSQL SELECT COUNT(*) FROM tblUser
jdbcUserProvider.allUsersSQL SELECT UserName FROM tblUser
jdbcUserProvider.searchSQL SELECT UserName FROM tblUser WHERE
jdbcUserProvider.usernameField UserName
jdbcUserProvider.nameField UserName
jdbcUserProvider.useConnectionProvider true
jdbcAuthProvider.useConnectionProvider true
provider.user.className org.jivesoftware.openfire.user.JDBCUserProvider
provider.auth.className org.jivesoftware.openfire.auth.JDBCAuthProvider
admin.authorizedJIDs [email protected]
Спасибо большое! !!
У Ubuntu есть драйвер mysql, и openfire может подключиться к базе данных A и войти в openfire через Spark. У меня возникли проблемы с настройкой openfire для аутентификации использования из базы данных B. Оба DB находятся на одном компьютере .. –
Посмотрите на отредактируйте, начните обновлять их. –
Добавил xml к исходному вопросу. Уже добавлен JDBCAuthProvider и JDBCUserProvider в XML, а также из таблицыProperty. –