`
bit1129
  • 浏览: 1068019 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【Hive十六】Hive SQL Standard Based Hive Authorization

    博客分类:
  • Hive
 
阅读更多


启用授权选项,默认是false,后面的授权操作基于此选项为true进行
set hive.security.authorization.enabled=true


========================基于用户的授权===============================

获取当前用户
set system:user.name


授权在指定库下面删除表
grant drop on database db_1 to user yuzt

授权在指定库下面创建表
GRANT CREATE ON DATABASE db_1 TO USER yuzt;

授权查询某个表
grant select on table db_1.t3 to user yuzt


查看某个用户在指定库上有哪些权限
SHOW GRANT USER yuzt on DATABASE db_1;
结果:
hive> SHOW GRANT USER yuzt on DATABASE db_1;
OK
db_1                yuzt    USER    CREATE    false    1464055421000    yuzt
db_1                yuzt    USER    DROP    false    1464055458000    yuzt


收回权限
hive> revoke create on database db_1 from user yuzt;



=========基于用户组的授权(用户组是Linux系统定义的用户,下面的yuzt是用户组名)=========
grant select on table db_1.t3 to group yuzt;

说明:可以使用如下命令查看当前系统有哪些组
less /etc/passwd
cat /etc/passwd |awk -F [:] '{print $4}' |sort|uniq | getent group |awk -F [:] '{print $1}'




=================基于角色的授权===============================

创建角色
hive> create role create_on_db_1;

为角色赋予数据库对象的操作权限
grant create on database db_1 to role create_on_db_1

将角色授予某个用户

grant role create_on_db_1 to user yuzt;







hive.security.authorization.createtable.owner.grants
该选项用于表示,表创建完成后,用户可以自动获取哪些授权,默认是null

对创建赋予所有权限
<property>
<name>hive.security.authorization.createtable.owner.grants</name>
<value>
    ALL
</value>
<description>
    The privileges automatically granted to the owner whenever a table gets created.An example like "select,drop" will grant select and drop privilege to the owner of the table
</description>
</property>

针对不同的用户默认赋予一些权限
<property>
<name>hive.security.authorization.createtable.user.grants</name>
<value>admin1,edward:select;user1:create</value>
</property>

分享到:
评论

相关推荐

    hive参数配置说明大全

    15. hive.security.authorization.enabled 该参数决定了Hive是否开启权限认证。如果设置为true,则Hive将开启权限认证,默认值为false。 16. hive.exec.plan 该参数决定了Hive执行计划的路径,会在程序中自动进行...

    java_hive简单查询

    例如,对于Kerberos,可能需要设置`hive.server2.use.SSL`和`hive.security.authorization.enabled`等属性。 10. **性能监控和日志记录**: 为了跟踪查询性能和调试问题,可以启用Hive的日志记录,并结合Hadoop的...

    hive开启权限后不能创建数据库问题

    背景:由于Hive需要开启权限管理,安装网上教程,开启权限配置,重启集群后。 使用root用户登录,进入Hive...Authorization failed:No privilege 'Create' found for outputs { }. Use SHOW GRANT to get more details

    HiveSQL执行计划详解.pdf

    ### HiveSQL执行计划详解 #### 一、前言 在大数据处理领域,Hive作为一款广泛使用的数据仓库工具,提供了高效的数据查询与分析能力。为了更深入地理解HiveSQL的执行过程,掌握其执行计划变得尤为重要。执行计划是...

    07--Hive权限管理1

    2. 基于SQL标准的授权(SQL Standards Based Authorization in HiveServer2) 这是Hive推荐的授权模型,因为它完全兼容SQL标准的授权机制。它不仅支持对用户的授权认证,还引入了角色(Role)的概念,使得权限管理...

    hive-role.zip

    在大数据处理领域,Hive 是一个非常重要的组件,它提供了基于 Hadoop 的数据仓库功能,使得用户可以通过 SQL 类似的查询语言 HiveQL 来处理存储在 Hadoop 分布式文件系统 (HDFS) 中的大量数据。"hive-role.zip" 文件...

    Hive权限设置说明文档

    2. `hive.enforce.authorization`:设置为`true`开启Hive的权限检查。 3. `hive.metastore.execute.setugi`:设置为`true`,使Hive Metastore服务在执行权限检查时使用用户的身份。 四、SQL命令进行权限控制 Hive...

    hive配置说明

    14. **hive.security.authorization.enabled** - **含义**:控制Hive是否开启权限认证。 - **默认值**:`false` - **建议设置**:根据安全需求调整。 15. **hive.exec.plan** - **含义**:指定Hive执行计划的...

    Hive中查看数据库,查看表的时候报错

    一、hive版本验证,FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata....解决方法 ...

    大数据技术之Hive-02(优化).pdf

    - 可以使用EXPLAIN EXTENDED查看更详细的执行计划,EXPLAIN DEPENDENCY查看查询依赖关系,EXPLAIN AUTHORIZATION查看授权信息。 2. **Hive表创建**: - 创建表时可以定义表的结构和行格式(row format),包括...

    hadoop安全

    在实际应用中,还需要考虑更复杂的权限管理策略,比如通过Hadoop的Authorization API实现细粒度的访问控制,以及利用Hive的Role-Based Access Control(RBAC)来管理不同角色的权限。此外,监控和审计也是确保Hadoop...

    项目加入zookeeper的依赖包(Curator框架)

    .authorization("digest", "username:password".getBytes()) // 如果需要认证 .build(); client.start(); // 使用client进行操作,如创建节点、读取数据等 } } ``` Curator框架还提供了很多其他高级功能,...

    实训5:HBase安装与环境配置.docx

    `hbase.security.authorization`设为`true`开启权限验证机制,这对于多用户环境下的数据安全至关重要。`hbase.unsafe.stream.capability.enforce`设为`false`是为了禁用某些可能引发问题的特性。`hbase.coprocessor....

Global site tag (gtag.js) - Google Analytics