xquery - Marklogic - 如何获取具有角色的用户列表

标签 xquery marklogic

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

最佳答案

您只需要查询安全数据库中的文档。作为管理员,您可以通过将查询放入 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>)

关于xquery - Marklogic - 如何获取具有角色的用户列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43616036/

相关文章:

xml - XPath 不返回值的问题

xquery - 需要在 XQuery 中返回日期之间的月份

javascript - 在 Marklogic 中,我有一个自定义 JavaScript 函数。如何通过 REST API 调用它?从CURL调用它的过程是怎样的?

linux - 将现有的 Marklogic 应用程序服务器从 Linux 迁移到 AWS

java - MarkLogic 内容泵 Java

javascript - 构建搜索应用程序时什么最有效 : search:search or cts:search?

xquery - Marklogic - 光学 API : Joining views by value (op:on does not support values, 仅列引用)

xquery - 如何使用 XQuery 更改 XML 结构

json - 如何使用 MarkLogic XSLT 修改一个 JSON 属性?

javascript - Marklogic xdmp.rollback() : Cannot read property 'result' of null