【问题标题】:How to add users to Apache Ranger via REST API如何通过 REST API 将用户添加到 Apache Ranger
【发布时间】:2016-11-26 05:55:20
【问题描述】:

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

您能否发布一个 curl 调用的示例?

您能否发布一个我可以找到文档的网址:

   http:<ip>:6080/service/xusers/???

【问题讨论】:

    标签: apache hadoop policy apache-ranger


    【解决方案1】:
    • 所有查询的全局注释:有时您必须删除 /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

    添加/发布用户

    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”
    • 如果您删除密码,用户将是外部用户。

    【讨论】:

    • 我正在尝试创建用户,我只是使用了上面相同的 json。用户创建成功,但是,用户没有firstName(它是空的),userRoleListgroupIdList 的值似乎与我在 json 中给出的值不同。我也尝试过使用groupNameList,但这似乎也没有任何效果。当我使用我得到的用户 ID 执行GET 时,它返回一个没有password 字段的XML。我也无法删除我使用DELETE 或使用Web UI 创建的用户,错误我看到的消息是no user found with id。请帮忙!
    【解决方案2】:

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

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

    希望对您有所帮助!

    【讨论】:

      猜你喜欢
      • 2021-03-31
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 2020-10-16
      相关资源
      最近更新 更多