Jabber Openfire 服务器 v3.6.0a+ - 如何使用混合身份验证?
-
09-06-2019 - |
题
我正在为我的网站设置 Jabber 服务器。我已经在 openfire 数据库中设置了一些用户帐户,并在它们之间建立了有效的 IM。
我现在正在寻找从我的主数据库添加(一些)用户(members
表,与 login
, password
[纯文本])和 allowed_to_IM
[0 或 1] 字段)以允许它们之间进行通信。这 Hybrid
然而,身份验证是 v3.6.0a 中的一项新功能,并且很少有文档说明 openfire.xml
用于数据库连接(到第二个数据库)的文件,以及属性中还可以包含哪些内容(这也从 XML 文件中获取了大部分配置信息)。
我的问题是: 有人有检查多个数据库的完整示例吗? 我看到的所有例子似乎都只是片段。
解决方案
我使用 ldap 和 mysql,如果它对你有帮助,我在 openfire.xml 中的设置是:
<connectionProvider>
<className>org.jivesoftware.database.DefaultConnectionProvider</className>
</connectionProvider>
<database>
<defaultProvider>
<driver>com.mysql.jdbc.Driver</driver>
<serverURL>jdbc:mysql://127.0.0.1:3306/openfire</serverURL>
<username>username</username>
<password>pass</password>
<minConnections>5</minConnections>
<maxConnections>15</maxConnections>
<connectionTimeout>1.0</connectionTimeout>
</defaultProvider>
</database>
<ldap>
ldapsetting removed
</ldap>
<hybridAuthProvider>
<primaryProvider>
<className>org.jivesoftware.openfire.auth.DefaultAuthProvider</className>
</primaryProvider>
<secondaryProvider>
<className>org.jivesoftware.openfire.ldap.LdapAuthProvider</className>
</secondaryProvider>
</hybridAuthProvider>
<provider>
<auth>
<className>org.jivesoftware.openfire.auth.HybridAuthProvider</className>
</auth>
<vcard>
<className>org.jivesoftware.openfire.auth.DefaultAuthProvider</className>
</vcard>
<user>
<className>org.jivesoftware.openfire.ldap.LdapUserProvider</className>
</user>
<auth>
<className>org.jivesoftware.openfire.ldap.LdapAuthProvider</className>
</auth>
<group>
<className>org.jivesoftware.openfire.ldap.LdapGroupProvider</className>
</group>
</provider>
不隶属于 StackOverflow