是否可以在openfire属性中使用API代替sql查询进行用户身份验证:
jdbcAuthProvider.passwordSQL: SELECT用户名FROM chat_authentication WHERE username =?
基本上,我们的mysql数据库中的chat_authentication表运行不正常,因此表中没有一些用户的条目。所以我想直接点击API(故障率非常低)。在这种情况下我该怎么做?
答案 0 :(得分:1)
您必须创建自己的类来替换Openfire的DefaultAuthProvider.class
。
看起来像:
import org.jivesoftware.openfire.auth.AuthProvider
public class MyAuthProvider implements AuthProvider
并正确实现所有方法。
作为替代方案,您可以扩展OF DefaultAuthProvider
并覆盖所有方法
最后,制作一个类的jar,将其部署在openfireDirectory/lib
并更改属性值
provider.auth.className
使用您的MyAuthProvider全名。 你可以做到
之后,您必须关闭并启动Openfire。