如何构造 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/