[英]Openfire Custom Database Login
我正在嘗試將Openfire與使用Mysql工作台創建的自定義sql數據庫連接。
我修改了openfire.xml文件,如下所示:
<jive>
<adminConsole>
<!-- Disable either port by setting the value to -1 -->
<port>9090</port>
<securePort>9091</securePort>
</adminConsole>
<locale>en</locale>
<!-- Network settings. By default, Openfire will bind to all network interfaces.
Alternatively, you can specify a specific network interfaces that the server
will listen on. For example, 127.0.0.1. This setting is generally only useful
on multi-homed servers. -->
<!--
<network>
<interface></interface>
</network>
-->
<connectionProvider>
<className>org.jivesoftware.database.DefaultConnectionProvider</className>
</connectionProvider>
<database>
<defaultProvider>
<driver>com.mysql.jdbc.Driver</driver>
<serverURL>jdbc:mysql://localhost:3306/openfire_db?rewriteBatchedStatements=true</serverURL>
<username encrypted="true">c130d8786ef86071bcb73f1d8da0eb34f544f389f480f60e</username>
<password encrypted="true">f15df01c5d651451f5f38c29332cf655ff1621d7c0e741ec</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>
<jdbcProvider>
<driver>com.mysql.jdbc.Driver</driver>
<connectionString>jdbc:mysql://localhost/openfire_db?user=root&password=hello</connectionString>
</jdbcProvider>
<provider/>
<jdbcAuthProvider>
<passwordSQL>SELECT plainPassword FROM users WHERE username=?</passwordSQL>
<passwordType>plain</passwordType>
</jdbcAuthProvider>
<jdbcUserProvider>
<loadUserSQL>SELECT name,email FROM users WHERE username=?</loadUserSQL>
<userCountSQL>SELECT COUNT(*) FROM users</userCountSQL>
<allUsersSQL>SELECT username FROM users</allUsersSQL>
<searchSQL>SELECT username FROM users WHERE</searchSQL>
<usernameField>username</usernameField>
<nameField>name</nameField>
<emailField>email</emailField>
</jdbcUserProvider>
</jive>
我沒有錯誤,也沒有警告。。但是當我嘗試登錄管理控制台時,我得到了:
登錄失敗:確保您的用戶名和密碼正確無誤,並且您是管理員或主持人。
並警告:
2015.01.28 11:31:20 org.jivesoftware.admin.LoginLimitManager-用戶從127.0.0.1開始的管理控制台登錄嘗試失敗
我的數據庫表中的用戶有以下幾列:用戶名,plainPassword,加密的密碼,名稱,電子郵件,creationDate
謝謝.. :)
解決的問題^ _ ^ ..我需要在openfire.xml中添加以下內容:
<provider>
<auth>
<className>org.jivesoftware.openfire.auth.JDBCAuthProvider</className>
</auth>
<user>
<className>org.jivesoftware.openfire.user.JDBCUserProvider</className>
</user>
<group>
<className>org.jivesoftware.openfire.group.JDBCGroupProvider</className>
</group>
</provider>
並更改ofProperty表的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.