Hive權限管理


一.Storage Based Authorization in the Metastore Server

  >基於存儲的授權,可以對Metastore中的元數據進行保護,但是沒有提供更加細粒度的訪問控制【例如:列級別、行級別等】。

  >啟用當前認證方式后,dfs,add,delete,compile,reset等命令被禁用。

  >通過set命令設置hive configuration的方式被限制為只能某些用戶使用。

  >添加,刪除函數以及宏的操作僅為具有admin角色的用戶開發。

  >用戶自定義函數【開放支持永久的自定義函數】,可通過具有admin角色的用戶創建,其他用戶都可以使用。

二.SQL Standards Based Authorization in HiveServer2

  >基於SQL標准的Hive授權,完全兼容SQL的授權模型,推薦使用該模式。

  >除支持對於用戶的授權認證,還支持角色role的授權認證。

  >role可理解為一組權限的集合,通過role為用戶授權。

  >一個用戶可以具有一個或多個角色。

  >Hive默認包含兩種角色:public,admin。  

三.在hive服務端修改配置文件hive-site.xml添加以下配置開啟權限認證 

<property>
  <name>hive.security.authorization.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.server2.enable.doAs</name>
  <value>false</value>
</property>
<property>
  <name>hive.users.in.admin.role</name>
  <value>root</value>
</property>
<property>
  <name>hive.security.authorization.manager</name>
  <value>org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory</value>
</property>
<property>
  <name>hive.security.authenticator.manager</name>
  <value>org.apache.hadoop.hive.ql.security.SessionStateUserAuthenticator</value>
</property>

四.Default Hive Authorization【Legacy Mode】

  >Hive默認授權,設計目的僅僅是為了防止用戶產生誤操作,而不是防止惡意用戶訪問未經授權的數據。

五.角色操作

  >創建角色

    CREATE ROLE role_name;

  >刪除角色

    DROP ROLE role_name;

  >設置角色

    SET ROLE role_name (ALL|NONE);

  >查看當前用戶具有的角色

    SHOW CURRENT ROLES;

  >查看所有存在的角色

    SHOW ROLES;

六.權限管理

  

七.權限分布表

  

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM