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

How to add users to Apache Ranger via REST API

如标题所示,如何通过 REST 手动将用户添加到 Apache Ranger API。

你能post一个curl调用的例子吗?

你能 post 上瘾吗 url 我可以在哪里找到文档:

   http:<ip>:6080/service/xusers/???
  • 所有查询的全局说明:有时您必须删除 /secure

获取用户

curl -u admin:admin -v -i -s -X GET http://xxx:6080/service/xusers/secure/users/$ID_USER

将 $ID_USER 替换为您的用户 ID

  • 注意:有时您必须删除 /secure

获取所有用户

curl -u admin:admin -v -i -s -X GET http://xxx:6080/service/xusers/secure/users

删除用户

curl -u admin:admin -v -i -s -X DELETE http://xxx:6080/service/xusers/secure/users/$ID_USER

将 $ID_USER 替换为您的用户 ID

Add/POST一个用户

curl -u admin:admin -v -i -s -X POST -H "Accept: application/json" -H "Content-Type: application/json" http://xxx:6080/service/xusers/secure/users -d @userfile.json
  • 注意:有时您必须删除 /secure

  • 注2:userfile.json应该是这样的:

{ "name":"user1", "firstName":"user1", "lastName": "user1", "loginId": "user1", "emailAddress" : null, "description" : "user1 desc", "password" : "user1pass", "groupIdList":[2,12], "status":1, "isVisible":1, "userRoleList": [ "ROLE_SYS_ADMIN" ], "userSource": 0 }

  • userRoleList 可以是 "ROLE_SYS_ADMIN" 或 "ROLE_USER"
  • 如果删除密码,用户将成为外部用户。

我想在@lisztomania 的回答中补充一点,Apache Ranger 的邮件列表存档中的这个页面提供了很多可用的 API 调用及其描述。您可以在那里找到 API 添加/删除用户/组的调用:

https://www.mail-archive.com/user@ranger.incubator.apache.org/msg00064.html

希望对您有所帮助!