Sentry的授权模型

  首先在jdbc中指定的hive用户是一个linux的用户(必须和一个同名linux用户一一对应);这个用户如果是管理员用户,那么可以进行管理工作;比如创建、删除角色,查看角色和用户绑定情况等等;如果不是管理员用户,能做的只是,如果绑定了角色,可以查看角色赋权的表内容
  管理员权限的设定是在sentry的组件的配置项中设置Admin Group(sentry.service.admin.group)中进行设置;
  Sentry负责管理是角色,角色是和表操作(权限)相关,所以角色可以绑定权限的种类只有read,write以及ALL三种;sentry和hive的交集就是通过角色来和用户绑定,这意味着:hive的用户是核心,在sentry里面配置为管理用户,这个用户就可以进行一些管理工作;如果通过权限sql为这个表赋了某些表权限,那么这个用户就可以通过select、insert,update语句来对表进行操作(能执行那些操作是通过权限来控制的)

  下面这张图简单说明了一下关系:

  
  简言之:
  1. sentry里面配置的管理员,决定了该用户是否具备管理权限;
  2. Sentry里面配置的Role,角色了该用户是否具备某种操作的权限。

posted on 2018-02-12 14:58  张叫兽的技术研究院  阅读(609)  评论(0编辑  收藏  举报

导航