3

是否可以检查当前用户是否是管理员/如何检查当前用户详细信息?(Android 中的 Java smack + openfire)?
当我尝试在 openfire 管理网页上创建用户时。有一个选项:
是管理员吗?(授予 Openfire 的管理员权限)
可以知道当前用户是否有 Openfire 的管理员权限?(我的意思是,如何检查当前用户是 OpenFire 的管理员)

4

3 回答 3

4

试试这个,

 account = Connection.getAccountManager();
 Collection<String> attrs = account.getAccountAttributes();
 //inspect the values in attrs, should contain the type of account

好的..在用户创建页面上。

是管理员吗?--> 表示如果您想向您正在创建的用户授予管理员权限。管理员用户将拥有创建/删除用户、会话、组等的所有权限。您可能不想为所有用户提供管理员权限。

如果您想知道当前用户或存在的任何其他用户是否具有管理员权限,请转到

User/Groups-->Users-->User Summary(这里你会得到系统中的所有用户)

当前登录的用户将由其旁边的星号表示。(我认为)单击用户,然后它将给出用户的摘要。Is Administrator?:属性将相应地为yesno

于 2012-05-02T05:50:35.810 回答
0

也许 AdminManager 中的方法会给你一些想法。例如,

public boolean isUserAdmin(org.xmpp.packet.JID jid,
                           boolean allowAdminIfEmpty)

public List<org.xmpp.packet.JID> getAdminAccounts()

您可以参考有关该类的javadoc 。

于 2018-06-27T13:10:28.227 回答
0

有一个使用 AdminManager 获取所有服务器管理员的示例:

/**
 * Returns a collection with the JIDs of the server's admins. The collection may include
 * JIDs of local users and users of remote servers.
 *
 * @return a collection with the JIDs of the server's admins.
 */
public Collection<JID> getAdmins() {
    return AdminManager.getInstance().getAdminAccounts();
}

更多细节可以在XMPPServer.java中找到。

于 2018-06-29T05:40:50.227 回答