【问题标题】:Magnolia CMS - check other users permissionMagnolia CMS - 检查其他用户的权限
【发布时间】:2015-02-05 12:04:56
【问题描述】:

我想检查特定用户(由名称指定,而不是当前用户)是否具有对某些任意路径的写入权限:例如:

"检查用户 'foo' 是否对节点 '/contacts/common/bar' 有写权限"

到目前为止,我只能看到允许检查当前用户权限的方法。是否有更通用的方法可以进行此类检查?

【问题讨论】:

    标签: jcr magnolia


    【解决方案1】:

    以超级用户身份登录 AdminCentral,然后转到工具/权限,输入您要检查的用户名,选中“显示权限”复选框,然后单击“获取权限列表”按钮。如果您想以编程方式执行相同操作,请检查info.magnolia.module.admininterface.pages.PermissionPage 中的代码。它几乎可以归结为获取UserManager,从中获取用户,然后遍历分配给用户的所有组和角色以获取所有 ACL,然后列出这些。

    HTH, 一月

    【讨论】:

    • 只遍历来自 user.getAllRoles() 的每个 acl 就足够了吗?它应该包括用户拥有的每个角色,包括通过每个组分配的角色?
    • 是的,如果您不想知道这个角色来自哪个小组,那就足够了。但是如果你想发现完整的层次结构,你必须像我上面提到的代码那样进行迭代。
    猜你喜欢
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    • 2015-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-28
    相关资源
    最近更新 更多