您的位置:首页 > 运维架构 > Apache

APACHE RANGER 调研----6.自定义RestApi 操作ranger 数据库

2016-12-24 16:57 225 查看


通过spring boot mybatis 来实现restapi


一. 用户

1. 创建用户

    x_user 中添加一个用户

2. 更新用户信息

    更新x_user 的信息

3. 删除用户

    查询该用户的policy 信息 和policy_item_user_perm 信息

     如果存在,删除policy_item_user_perm 信息, 更新x_policy 的版本

    通过policy 更新x_service 的版本

    删除用户


二.策略

关于一个策略具体内容: 

          资源信息, 操作权限 为一个策略。  例如: hive资源:db,table,column  操作权限 select create 为一个策略,

只要资源相同,操作权限相同 就为一个策略。

ranger 里面添加一个表结构x_policy_perm, 策略名, 服务id, policyId, policyItemId, userId.

1.创建一个策略并授权给一个用户

    首先查询资源信息是否存在,然后查询此资源权限是否存在

     如果存在的话,x_policy_item_user_perm 添加记录。 x_policy_perm添加记录

     如果资源不存在的话,创建x_policy 信息 和 x_policy_item 信息

     如果资源存在,权限不存在 ,添加x_policy_item 信息

     最后更新x_service 里面的版本。

2.将一个策略授权给一个用户

      x_policy_item_user_perm 添加记录  x_policy_perm 添加记录 ,更新x_service 版本

3.给一个用户授权,如果授权的信息存在于当前的策略中, 将这个策略授权给一个用户,

   如果不存在,创建这个策略, 并授权给这个用户

       同1

4. 查询一个用户拥有哪些策略

     查询x_policy 对应的resouce 信息

     查询 x_policy x_policy_item  对应的 x_policy_item_access 信息

5.  查询一个策略哪些用户拥有

      查询一个x_policy_item,  x_policy_item_user_perm 信息

6.  删除用户一个拥有的策略(如果这个策略目前没人拥有,此时不删除)

      删除x_policy_item_user_perm 的记录,删除x_policy_perm 信息, 如果此策略没有用户(此时不删除)

      更新x_service 版本

7.  删除一个策略, 此时要删除所有用户的信息。

       删除x_policy_item 里面信息,删除x_policy_item_access 信息, 删除x_policy_item_user_perm 

       x_policy_perm 信息。 更新x_service版本
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: