Jabber Openfire服务器v3.6.0a +-如何使用混合身份验证?

时间:2020-03-05 18:53:52  来源:igfitidea点击:

我正在为我的网站设置一个Jabber服务器。我已经在openfire数据库中建立了一些用户帐户,并且在它们之间可以使用IM。

我现在正在从我的主数据库中添加(一些)用户("成员"表,带有"登录","密码" [纯文本])和" allowed_to_IM" [0或者1]字段)以允许他们彼此之间交流。 "混合"身份验证是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>