Hive 表权限授权

这篇具有很好参考价值的文章主要介绍了Hive 表权限授权。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  近期,总给其他部门的人开数据表权限,如果单独给每一个用户开权限,有点杂乱也不太好管理,所以抽空理了一下hive数据表权限相关的知识点。
目录

  • 目录

    参数配置

    角色创建删除

    授权及回收角色权限

      1.授予某个库(表)的某个权限给某个用户

    2.回收某个用户的某个库(表)的某个权限

    展示权限

    用户可以从hive中获得的权限文章来源地址https://www.toymoban.com/news/detail-833286.html



参数配置

在使用Hive的元数据配置权限之前必须先在hive-site.xml中配置两个参数,配置参数如下:
<property>
  <!--开启权限验证,默认为false>
  <name>hive.security.authorization.enabled</name>
  <value>true</value>
</property>
<property>
  <!--指表的创建者对表拥有所有权限>
  <name>hive.security.authorization.createtable.owner.grants</name>
  <value>ALL</value>
</property>

角色创建删除

  1.创建角色:create role role_name;
  2.删除角色:drop role role_name;
  3.展示所有roles:show roles;
  4.将角色授权给用户:grant role {roleName} to user {userName};
  5.撤销用户的角色:revoke role {roleName} from user {userName};
  6.查看用户所属的角色:show role grant user {userName};

授权及回收角色权限

  注:授权用户(user)和角色(role)语法是一样的,将下面user换成role,userName 换成 roleName即可。

  1.授予某个库(表)的某个权限给某个用户

  语法:grant {authority_name} on database {dbName} to user {userName};
            grant {authority_name} on table {dbName}.{tableName} to user {userName};
  例:grant {select} on database {dbName} to user {userName};
         grant {insert} on database {dbName} to user {userName};
         grant {update} on database {dbName} to user {userName};
         grant {delete} on database {dbName} to user {userName};
         grant create on database {dbName} to user {userName};//授予某个用户在某个库下的建表权限
          grant select on table {dbName}.{tableName} to user {userName};
          grant insert on table {dbName}.{tableName} to user {userName};
          grant update on table {dbName}.{tableName} to user {userName};
         grant delete on table {dbName}.{tableName} to user {userName};

2.回收某个用户的某个库(表)的某个权限

  语法:revoke {authority_name} on database {dbName} from user {userName};
            revoke {authority_name} on table {dbName}.{tableName} from user {userName};
  例:revoke {select} on database {dbName} from user {userName};
         revoke {insert} on database {dbName} from user {userName};
         revoke {update} on database {dbName} from user {userName};
         revoke {delete} on database {dbName} from user {userName};
         revoke create on table {dbName}.{tableName} from user {userName};
        revoke select on table {dbName}.{tableName} from user {userName};
        revoke insert on table {dbName}.{tableName} from user {userName};
        revoke update on table {dbName}.{tableName} from user {userName};
       revoke delete on table {dbName}.{tableName} from user {userName};

展示权限

  1.查看指定用户在所有库下面的权限:show grant user {username};
  2.查看指定用户在某个库下面的权限:show grant user {username} on database {dbName};
  3.查看指定用户在指定表的权限:show grant user {userName} on table {dbName}.{tableName};
  4.查看拥有某个表权限的所有用户:show grant  on table {table_name};
  5.查看用户所属的角色:show role grant user {userName};

用户可以从hive中获得的权限

权限名称
含义
ALL
所有权限
ALTER
允许修改元数据(modify metadata data of object) —表数据信息
UPDATE
允许修改物理数据(modify physical data object) —实际数据
CREATE
允许进行CREATE 操作
DROP
允许进行DROP操作
INDEX
允许建索引(目前还没实现)
LOCK
当出现并发时使用允许用户进行LOCK和UNLOCK操作
SELECT
允许用户进行SELECT操作
SHOW DATABASE
允许用户查看可用的数据库

到了这里,关于Hive 表权限授权的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Oracle数据库中,授权某用户可以查询其他用户的表

    在Oracle数据库中,授权一个用户可以查看其他所有用户的表,需要执行以下步骤: 使用数据库管理员账号连接到Oracle数据库。 通过 GRANT 命令给用户授予必要的权限。例如,如果要授权用户 user1 可以查看所有其他用户的表,可以执行以下命令: 这条命令将授予 user1  SELECT

    2024年02月08日
    浏览(70)
  • Linux系统用户安全(如何给其他用户授权)及引导登录的控制

    系统账号的清理 将非登录用户的shell设为/sbin/nologin usermod -s /sbin/nologin 用户名(设置为不可登录) 锁定长期不适用的账号 usermod -L 用户名 passwd -l 用户名 passwd -S 用户名 删除无用账号 userdel [-r] 用户名(-r选项删除用户家目录) 锁定账号文件passwd(用户配置文件)、shadow(用

    2024年02月10日
    浏览(55)
  • Hive执行计划之hive依赖及权限查询和常见使用场景

    目录 概述 1.explain dependency的查询与使用 2.借助explain dependency解决一些常见问题 2.1.识别看似等价的SQL代码实际上是不等价的: 2.2 通过explain dependency验证将过滤条件在不同位置的查询区别 3.查看SQL操作涉及到的相关权限信息 Hive查看执行计划的命令中还有两个不怎么常用但很重

    2024年02月08日
    浏览(40)
  • Hive权限管理

    1、hive授权模型介绍 (1)Storage Based Authorization in the Metastore Server 基于存储的授权 - 可以对Metastore中的元数据进行保护,但是没有提供更加细粒度的访问控制(例如:列级别、行级别)。 (2)SQL Standards Based Authorization in HiveServer2 基于SQL标准的Hive授权 - 完全兼容SQL的授权模型

    2024年01月24日
    浏览(32)
  • Hive 的权限管理

    目录 ​编辑 一、Hive权限简介 1.1 hive中的用户与组 1.1.1 用户 1.1.2 组 1.1.3 角色 1.2 使用场景 1.2.1 hive cli 1.2.2 hiveserver2 1.2.3 hcatalog api 1.3 权限模型 1.3.1 Storage Based Authorization in the Metastore Server 1.3.2 SQL Standards Based Authorization in HiveServer2 1.3.3 Default Hive Authorization (Legacy Mode) 1.4 hive的超

    2024年02月05日
    浏览(33)
  • Oracle创建用户、授权视图权限

    1、创建用户密码 2、授权 3、创建视图 4、最终查询 5、回收表或视图权限

    2024年02月09日
    浏览(45)
  • 解决uniapp手机端获取用户设备是否授权,进行授权提示,获取用户相机授权(Android 权限清单整理)

    最近在上架app时遇到了一些授权询问的问题,在这里简单记录一下,主要使用的是uniapp进行开发,在官网中有说明使用uni.authorize()进行授权请求,但是该方法不支持h5和app,所以采用plus.android.requestPermissions()方法进行授权判断操作,话不多说直接上代码 以下代码进行的

    2024年02月05日
    浏览(55)
  • Flink Direct Reader访问Hive ACID表被ranger授权限制

    如果你正在使用 Flink 的 Direct Reader 来访问 Hive ACID 表,并且受到 Ranger 授权限制,无法读取表的数据,可能是因为 Direct Reader 不经过 Hive 的 Thrift 接口,而是直接读取 Hive 表的数据文件,绕过了 Ranger 的授权验证。 在启用 Ranger 鉴权的情况下,Ranger 通常会拦截对 Hive 表的访问请

    2024年02月17日
    浏览(42)
  • oracle数据库给用户授权DBA权限&Oracle查看哪些用户具有DBA权限

    步骤一:以sysdba身份登录到Oracle数据库 在授予DBA权限之前,我们首先要以sysdba身份登录到Oracle数据库。使用以下命令登录: 步骤二:创建用户(如有用户跳过) 要授予DBA权限,首先需要创建一个新用户。使用以下命令创建一个新用户: 步骤三:授予DBA权限 一旦用户创建成

    2024年02月09日
    浏览(54)
  • Java通过kerberos权限认证集成hive

    java通过kerberos权限认证集成hive,并操作hive实现hive库和表、分区表的增删查等功能 1、pom文件中引入hive包 2、从集群中下载认证过可以登录的keytab文件,以及krb5.conf文件还有core-site.xml、hdfs-site.xml、hive-site.xml、yarn-site.xml放到项目的resources目录下 (xml文件按照自己项目需要下载

    2024年02月05日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包