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除了groupIdList
和groupNameList
。这是预期的行为吗?
【问题讨论】:
【参考方案1】:我重现了这个问题,我可以看到相同的行为。如果需要获取 groupIdList 和 groupNameList,那么我们必须使用以下 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