Ejabberd:仅对管理员使用内部身份验证

Ejabberd: Using internal authentication for admin only

背景

我正在 android 使用 Ejabberd 服务器和 smack 库开发一个聊天应用程序。我正在使用 firebase phone 身份验证作为外部身份验证程序。到目前为止,我已经成功地从 phone 的普通用户中成功签署了 up/logging。

问题

现在我无法访问我的管理面板 Web 界面,因为它提供了一种简单的预定义用户名和密码机制来以管理员身份登录,而 Firebase phone 身份验证使用一次性密码机制。

到目前为止我尝试了什么

  1. 尝试以管理员身份在 firebase 身份验证 table 中添加列入白名单的联系人。没有成功。
  2. 添加了另一台具有内部身份验证机制的主机。从该主机添加了一个管理员帐户。能够登录。但无法访问我原来的管理面板,因为它们变成了两个不同的虚拟主机。
  3. 尝试使用以下命令添加用户

    ejabberdctl 注册用户名域密码

没用。给出了 "Error: cannot_register" 回复。

我在找什么

一种登录我的服务器管理面板的方法。如果不可能,是否有任何方法可以在测试阶段登录管理面板时禁用 username/password 提示,并在生产阶段重新启用提示?

  1. Added an admin account from that host. Was able to sign in. But could not access my original admin panel

如果您在 ejabberd.yml 中正确授予该帐户的管理员权限,那应该可行。

您应该编辑您的 post 并提供您添加的配置以授予该帐户管理员权限,我们将看看问题出在哪里。