全部產品
Search
文件中心

DataWorks:Hive資料存取權限控制

更新時間:Jun 30, 2026

DataWorks提供訪問EMR Hive引擎資料時的許可權管控能力,包括許可權申請、許可權審批、許可權審計。本文以一個完整的樣本,從管理員配置和開發人員申請許可權兩個視角,為您介紹Hive資料存取權限控制的完整流程。

功能概述

通過將EMR叢集整合的Apache Ranger與DataWorks資訊安全中心對接,可以為EMR Hive引擎提供精細化的、可追溯的資料存取權限控制。

  • 核心能力:實現對EMR Hive的庫層級表層級的資料存取權限管理。

  • 角色分工

    • 管理員(DataWorks租用戶系統管理員,需同時擁有EMR叢集系統管理權限):負責底層技術配置和許可權審批,精細化地管理和審計所有開發人員的資料存取權限。

    • 開發人員(普通RAM使用者):負責資料使用,在DataWorks資訊安全中心以自助方式申請所需的Hive資料許可權,無需關心底層實現。

  • 核心價值:實現配置與使用的分離。管理員統一管控資料安全,開發人員按需申請、便捷使用,大幅提升資料安全性和協同效率。

流程說明

整個流程分為 “一次性配置”“日常使用” 兩個階段,涉及管理員和開發人員兩種角色在EMR和DataWorks兩個平台上的操作。

階段一:管理員進行一次性配置

在使用者可以申請許可權之前,管理員需要完成所有前置配置工作。

前置確認工作

  • 【EMR側】

    • 確保已建立EMR叢集,並已開啟 OpenLDAP認證Ranger服務。

    • 確保Hive服務已配置LDAP認證(hive.server2.authentication=LDAP)。

    • 確保已在OpenLDAP中為所有相關使用者建立對應的LDAP帳號。詳情請參見OpenLDAP 使用者管理

    • 確保Ranger UI中已經添加LDAP帳號。

  • 【DataWorks側】

    • 確保EMR叢集登入到DataWorks工作空間成為EMR計算資源,並完成資源群組初始化(需保證VPC連通或同一個VPC內)。

    • 完成EMR計算資源的帳號映射配置,將阿里雲帳號映射到LDAP帳號。詳情請參見計算資源的設定叢集身份映射

    • 確保操作者擁有DataWorks租用戶系統管理員許可權。

配置操作流程

步驟

操作角色

操作平台

操作內容

1

管理員

DataWorks側

關聯集群與Ranger:在DataWorks資訊安全中心新增Ranger配置,並關聯到目標EMR叢集。

2

管理員

DataWorks側

關聯Hive服務:在Ranger配置中,新增一個Hive類型的Ranger Service進行關聯。

3

管理員

DataWorks側

配置身份映射:為RAM使用者配置Hive身份憑證,建立RAM使用者LDAP帳號的映射關係。

階段二:開發人員與管理員的日常使用與審批

配置完成後,進入日常的許可權申請與審批迴圈。

步驟

操作角色

操作平台

操作內容

1

開發人員

DataWorks側

申請許可權:在DataWorks資訊安全中心的“資料存取控制”模組,自助申請所需Hive庫或表的存取權限。

2

管理員

DataWorks側

審批許可權:在DataWorks資訊安全中心審批開發人員的許可權申請。

3

/

EMR側

許可權下發:審批通過後,DataWorks會自動調用Ranger介面,在Ranger中產生對應的存取原則(Policy)。(此步驟為自動觸發)

4

開發人員

DataWorks側

使用資料:權限原則生效後,開發人員即可在資料開發、資料分析、資料地圖等模組訪問已獲授權的Hive資料。

樣本說明

本文以開發人員bob向管理員申請訪問Hive中user_orders表為例(SELECT許可權),示範Hive資料存取權限控制的完整配置和使用流程:

角色/資源

說明

管理員

RAM使用者alice@company.com,對應LDAP帳號alice,身份憑證中帳號類型為 管理員 (可在DataWorks資訊安全中心審批許可權申請)。

開發人員

RAM使用者bob@company.com,對應LDAP帳號bob,身份憑證中帳號類型為普通使用者

EMR叢集

已開啟OpenLDAP、Hive LDAP認證和Ranger服務的EMR叢集。

Hive Service

Ranger Service Name為emr-hive

目標資料

EMR Hive中order_db庫存在的一張user_orders表。

說明

在整個流程中,以下4個位置需要使用同一個LDAP帳號名稱,請確保一致:EMR叢集的LDAP使用者、Ranger UI中的使用者、DataWorks資訊安全中心的身份憑證帳號名稱、 DataWorks管理中心計算引擎的帳號映射 。其中,身份憑證用於DataWorks資訊安全中心識別使用者身份和系統管理權限審批,帳號映射用於DataWorks管理中心提交計算任務時的使用者身份轉換。

管理員:配置Hive資料存取控制

管理員需要依次完成以下三個配置步驟,才能讓開發人員通過DataWorks資訊安全中心申請和使用Hive資料許可權。

步驟一:新增Ranger配置

管理員需要在DataWorks資訊安全中心中新增Ranger配置,將EMR叢集與DataWorks關聯。配置內容包括:

  • 叢集類型:選擇EMR。

  • EMR叢集ID:選擇登入到DataWorks工作空間的EMR叢集。

  • 資源群組:選擇與EMR叢集在同一VPC的通用型資源群組。

  • RangerAdmin地址:填寫EMR叢集中RangerAdmin的內網訪問地址。

  • 管理員帳號/密碼:填寫Ranger管理員的帳號和密碼。

詳細操作步驟請參見新增Ranger配置

步驟二: 關聯Hive Service

新增Ranger配置後,需要新增Hive類型的Service關聯,使DataWorks能夠通過Ranger管理Hive的資料存取權限。

  1. 在資訊安全中心頁面,選擇安全策略 > 管理Ranger

  2. 單擊目標Ranger配置的管理Service

  3. 單擊新增关联,配置以下資訊:

    參數

    描述

    Ranger Service Type

    選擇Hive

    Ranger Service Name

    輸入EMR叢集中已配置的Hive Ranger Service名稱。本例中填寫emr-hive

    EMR 集群

    選擇已關聯到當前Ranger的EMR叢集。

詳細操作步驟請參見新增Ranger配置中的關聯Service部分。

步驟三:配置身份憑證

管理員需要為每個需要訪問Hive資料的RAM使用者配置身份憑證,將RAM使用者與LDAP帳號關聯。

重要
  • 身份憑證中的帳號名稱必須與EMR叢集LDAP中為該使用者設定的使用者名稱(例如本例中的alice)完全一致。這是Ranger進行使用者識別和授權的唯一依據。

  • 建議帳號名稱與阿里雲RAM帳號同名,便於管理。

本例中,管理員需要分別為alice和bob配置身份憑證:

為管理員alice配置身份憑證

參數

樣本值

阿里云RAM用户/角色

alice@company.com

数据源类型

Hive

集群/实例

選擇已配置Ranger的EMR叢集。

賬號類型

管理員。管理員可審批其他使用者的許可權申請。

账号名称

alice(需與EMR叢集中LDAP帳號名稱一致)

账号密码

填寫LDAP帳號alice的密碼。

為開發人員bob配置身份憑證

參數

樣本值

阿里云RAM用户/角色

bob@company.com

数据源类型

Hive

集群/实例

選擇已配置Ranger的EMR叢集(與alice相同的叢集)。

賬號類型

普通使用者。普通使用者只能申請許可權,不能審批許可權。

账号名称

bob(需與EMR叢集中LDAP帳號名稱一致)

账号密码

填寫LDAP帳號bob的密碼。

詳細操作步驟請參見身份憑證

開發人員:申請Hive資料存取權限

管理員完成上述配置後,開發人員bob即可在DataWorks資訊安全中心申請Hive資料的存取權限。

步驟一:進入資料存取控制

  1. 登入DataWorks控制台,進入目標工作空間。在左側導覽列,選擇數據治理 > 資訊安全中心

  2. 在資訊安全中心頁面,在左側導覽列單擊數據訪問控制

步驟二:申請許可權

在資料存取控制頁面進行許可權申請,需要配置申請內容申請信息兩個模組的資訊。

說明
  • Hive的許可權申請,不支援自訂審批、許可權審計管理。

  • Hive的許可權申請,只能由身份憑證中帳號類型為管理員的RAM使用者/RAM角色審核。

  1. 數據訪問控制頁面,單擊進入權限申請頁簽。

  2. 申請資源許可權。

    1. 申請內容地區,選擇資料來源類型為Hive,即可配置申請內容。

      1. 申請類型:可按需求在庫與表之間選擇。本例中選擇

      2. EMR 集群:選擇已在DataWorks中綁定的EMR叢集執行個體。

      3. 選擇需要申請的資源與資源許可權。

        選擇申請類型為表時,先選擇資料庫(本例為order_db),系統自動載入該庫中所有可申請許可權的資料表。選擇需要申請許可權的表(本例為user_orders)以及表許可權(本例為SELECT)。

        若選擇申請類型為庫時,申請內容地區會載入出可以申請許可權的Hive資料庫名稱。選擇需要申請許可權的資料庫以及庫許可權(如SELECT、ALL等)。
    2. 配置申請資訊。

      參數

      描述

      使用者

      選擇需要為誰申請目標資源許可權。

      • 當前登錄賬號:表示為當前登入DataWorks工作空間的阿里雲帳號申請許可權。本例中bob選擇此項。

      • 代他人申請:表示當前登入DataWorks工作空間的阿里雲帳號為其他阿里雲帳號申請許可權。選擇該選項時,需要配置用户名參數。

      申請時長

      Hive僅支援:永久

      申請原因

      輸入申請許可權的原因。本例中bob填寫"需要查詢order_db庫中user_orders表的資料進行資料分析"。

  3. 配置完成後,單擊申請權限,即可提交許可權申請。

管理員 :審批許可權

開發人員bob提交許可權申請後,身份憑證中帳號類型為管理員的RAM使用者(本例為alice@company.com)需要在資訊安全中心審批該申請。

  1. 查看待審批的申請。

    在左側導覽列,選擇申請與審批 > 我的審批任務,單擊資料存取控制頁簽。選擇数据源类型Hive,查看bob提交的許可權申請。

    說明

    只有身份憑證中帳號類型為管理員的RAM使用者或RAM角色擁有審核許可權。本例中只有alice(管理員類型)可以審批。

  2. 查看審批詳情。

    單擊目標申請操作列的审批,您可以在審批詳情對話方塊查看目標申請的申請詳情審批記錄等詳細資料。

  3. 審批申請。

    根據申請的詳細內容及當前需求判斷是否同意審批該申請,填寫审批意见,選擇同意拒絕進行中的申請。

    您也可以直接在我的審批任務頁面,勾選全部申請,單擊批量同意批量拒绝,填寫审批意见,批量處理目標申請。

說明

管理員alice審批通過後,Ranger會自動在EMR叢集中產生對應的Policy。開發人員bob即可通過DataWorks訪問order_db庫中user_orders表的資料。

查看許可權申請及審批記錄

  • 查看許可權申請記錄:在左側導覽列,選擇申請與審批 > 我的申請單,單擊資料存取控制頁簽,可按資料來源類型篩選Hive,查看當前帳號提交的Hive許可權申請記錄。

  • 查看許可權審批記錄:在左側導覽列,選擇申請與審批 > 我的審批任務,單擊資料存取控制頁簽,將任務狀態切換為全部,按資料來源類型篩選Hive,查看當前帳號已審批的Hive許可權申請。

說明
  • Hive許可權申請記錄支援撤回(僅對審批中狀態的申請有效),不支援續期

  • 資料存取控制頁面的許可權審計Tab當前僅支援MaxCompute引擎,Hive引擎暫不可在此Tab進行許可權審計。

  • 資料存取控制頁面的「許可權審批記錄」原Tab入口已下線,僅保留遷移提示。請按上述路徑前往「申請與審批 > 我的審批任務」查看。