Apache Ranger Api 不返回数据

Posted

技术标签:

【中文标题】Apache Ranger Api 不返回数据【英文标题】:Apache Ranger Api not returning data 【发布时间】:2021-04-18 11:37:42 【问题描述】:

我正在尝试通过 ranger API 访问用户信息,但偶然发现了一个奇怪的问题:

当我访问 /xusers/users/userName/userName 时,我没有得到预期的 JSON,就像在这个 URL 中一样:https://ranger.apache.org/apidocs/resource_XUserREST.html

如果我有一个名为 sUsername 的用户名并尝试使用 /xusers/users/userName/Username(没有 s),我会得到整个 JSON 即使该用户不属于任何组!

如果我输入/xusers/users/userName/sUsername,我会得到整个JSON除了groupIdListgroupNameList。这是预期的行为吗?

【问题讨论】:

【参考方案1】:

我重现了这个问题,我可以看到相同的行为。如果需要获取 groupIdListgroupNameList,那么我们必须使用以下 api:-

/service/xusers/users/id

我明白,每次您必须获取用户的 id,但在 jq 实用程序的帮助下,我们可以将名称映射到 id。

cat user.json | jq '.vXUsers[] | "\(.id) \(.name)"'

在这种情况下,user.json 将是包含所有组和用户信息的文件。

以下 api 应该有助于生成 user.json:-

curl -k  -u admin:admin -H "Accept: application/json" -X GET https://ranger_host:6182/service/xusers/users -o user.txt

【讨论】:

以上是关于Apache Ranger Api 不返回数据的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 REST API 将用户添加到 Apache Ranger

apache ranger2.0 添加策略roles没有搜索功能

大数据权限管理工具 Apache Ranger 初识

深入了解大数据安全组件Apache Ranger

Apache ranger 简介原理安装部署

Apache Ranger 1.1.0源码导入IDEA并运行调试security-admin web模块