【问题标题】:Marklogic - How to get list of user with rolesMarklogic - 如何获取具有角色的用户列表
【发布时间】:2017-04-25 16:19:18
【问题描述】:

如何构造 xquery 来检索用户名和角色名的列表。提前感谢任何示例 xquery 代码。

【问题讨论】:

    标签: xquery marklogic


    【解决方案1】:

    您只需要查询安全数据库中的文档。作为管理员,您可以通过将查询放入 xdmp:invoke-function() 中来执行此操作,如下所示:

    xquery version "1.0-ml";
    import module namespace sec="http://marklogic.com/xdmp/security" at 
        "/MarkLogic/security.xqy";
    
    xdmp:invoke-function(function() {
        for $user in //sec:user
        let $user-name := $user/sec:user-name/text()
        let $roles := sec:user-get-roles($user-name)
        return 
        <user>
          <user-name>{$user-name}</user-name>
          <roles>
            {for $role in $roles return <role>{$role}</role>}
          </roles>
        </user>
        }, 
        <options xmlns="xdmp:eval">
          <database>{xdmp:security-database()}</database>
        </options>)
    

    【讨论】:

    • 嗨,这对我很有帮助。但你也可以建议我如何以 excel 格式获取此查询的输出。?
    猜你喜欢
    • 2015-10-21
    • 1970-01-01
    • 2021-10-06
    • 2015-02-01
    • 2013-08-07
    • 1970-01-01
    • 2014-08-31
    • 2020-06-02
    • 1970-01-01
    相关资源
    最近更新 更多