使用企業安全性套件管理 HDInsight 叢集

瞭解 HDInsight 企業安全性套件 (ESP) 中的使用者和角色,以及如何管理 ESP 叢集。

您可以使用Apache Ambari受控使用者名稱連結一般叢集,也可以使用網域用戶名稱連結安全性 Apache Hadoop 叢集(例如: user1@contoso.com)。

  1. 開啟 Visual Studio Code確定已安裝Spark和Hive Tools擴充功能。

  2. 請遵循連結 Visual Studio Code 叢集中的步驟

您可以使用 Ambari 受控使用者名稱連結一般叢集,也可以使用網域使用者名稱連結安全性 hadoop 叢集(例如:)。 user1@contoso.com

  1. 開啟 IntelliJ IDEA。 請確定符合所有 必要條件

  2. 請遵循連結 IntelliJ 叢集中的步驟

您可以使用 Ambari 受控使用者名稱連結一般叢集,也可以使用網域使用者名稱連結安全性 hadoop 叢集(例如:)。 user1@contoso.com

  1. 開啟 Eclipse。 請確定符合所有 必要條件

  2. 請遵循連結 Eclipse 叢集中的步驟

使用企業安全性套件存取叢集

企業安全性套件(先前稱為 HDInsight 進階版)提供叢集的多使用者存取權,其中驗證是由 Active Directory 完成,並由 Apache Ranger 授權,以及 儲存體 ACL(ADLS ACL)。 授權在多個用戶之間提供安全界限,而且只允許特殊許可權用戶根據授權原則存取數據。

安全性與用戶隔離對於具有企業安全性套件的 HDInsight 叢集而言很重要。 為了符合這些需求,支援在叢集建立時間選取的本機使用者,以及 AAD-DS 中提供的使用者,以及 AAD-DS(亦即 Kerberos) 中選取的叢集 SSH 存取。 下表顯示每個叢集類型的建議存取方法:

[工作負載] 案例 存取方法
Apache Hadoop \(英文\) Hive – 互動式作業/查詢
Apache Spark 互動式作業/查詢、PySpark 互動式
Apache Spark Batch 案例 – Spark 提交、PySpark
互動式查詢 (LLAP) 互動式
任意 安裝自定義應用程式

注意

Enterprise Security Package 中未安裝/支援 Jupyter。

從安全性觀點來看,使用標準 API 有助於。 您也會獲得下列優點:

  • 管理 – 您可以使用標準 API 來管理程式碼,並將作業自動化 – Livy、HS2 等。
  • 稽核 – 使用 SSH 時,無法稽核哪些使用者 SSH 到叢集。 當作業是透過標準端點建構的,因為它們會在用戶內容中執行時,就不會如此。

使用 Beeline

在您的電腦上安裝 Beeline,並透過公用因特網連線,請使用下列參數:

- Connection string: -u 'jdbc:hive2://<clustername>.azurehdinsight.net:443/;ssl=true;transportMode=http;httpPath=/hive2'
- Cluster login name: -n admin
- Cluster login password -p 'password'

如果您已在本機安裝 Beeline,並透過 Azure 虛擬網絡 連線,請使用下列參數:

Connection string: -u 'jdbc:hive2://<headnode-FQDN>:10001/;transportMode=http'

若要尋找前端節點的完整功能變數名稱,請使用使用Ambari REST API 管理 HDInsight 檔案中的資訊。

具有ESP的 HDInsight 叢集使用者

非 ESP HDInsight 叢集有兩個用戶帳戶,會在叢集建立期間建立:

  • Ambari 系統管理員:此帳戶也稱為 Hadoop 使用者HTTP 使用者。 此帳戶可用來在 登入Ambari https://CLUSTERNAME.azurehdinsight.net。 它也可以用來在 Ambari 檢視上執行查詢、透過外部工具執行作業(例如 PowerShell、Templeton、Visual Studio),並使用 Hive ODBC 驅動程式和 BI 工具進行驗證(例如 Excel、Power BI 或 Tableau)。

除了Ambari 管理員,具有ESP的 HDInsight 叢集還有三個新使用者。

  • Ranger 管理員:此帳戶是本機 Apache Ranger 系統管理員帳戶。 它不是 Active Directory 網域使用者。 此帳戶可用來設定原則,並讓其他用戶系統管理員或委派的系統管理員(讓這些使用者可以管理原則)。 根據預設,用戶名稱是 系統管理員 ,密碼與Ambari系統管理員密碼相同。 您可以從 Ranger 中的 [設定] 頁面更新密碼。

  • 叢集管理員網域使用者:此帳戶是指定為 Hadoop 叢集管理員的 Active Directory 網域使用者,包括 Ambari 和 Ranger。 您必須在叢集建立期間提供此用戶的認證。 此使用者具有下列權限:

    • 將計算機加入網域,並將其放在您在叢集建立期間指定的 OU 中。
    • 在叢集建立期間指定的 OU 內建立服務主體。
    • 建立反向 DNS 專案。

    請注意,其他 AD 使用者也有這些許可權。

    叢集中有一些端點(例如 Templeton),這些端點不是由 Ranger 管理,因此不安全。 除了叢集管理員網域使用者之外,所有用戶都會鎖定這些端點。

  • 一般:在叢集建立期間,您可以提供多個 Active Directory 群組。 這些群組中的使用者會同步至 Ranger 和 Ambari。 這些使用者是網域使用者,只能存取 Ranger 管理的端點(例如 Hiveserver2)。 所有 RBAC 原則和稽核都適用於這些使用者。

使用ESP的 HDInsight 叢集角色

HDInsight 企業安全性套件具有下列角色:

  • 叢集 管理員 istrator
  • 叢集運算子
  • 服務管理員
  • 服務操作員
  • 叢集使用者

若要查看這些角色的許可權

  1. 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI

  2. 從左側功能表中,選取 [ 角色]。

  3. 選取藍色問號以查看權限:

    ESP HDInsight roles permissions.

開啟Ambari管理UI

  1. 流覽至 https://CLUSTERNAME.azurehdinsight.net/ CLUSTERNAME 是叢集名稱的位置。

  2. 使用叢集管理員網域用戶名稱和密碼登入Ambari。

  3. 從右上角選取 [ 系統管理員 ] 下拉功能表,然後選取 [ 管理 Ambari]。

    ESP HDInsight manage Apache Ambari.

    UI 看起來像:

    ESP HDInsight Apache Ambari management UI.

列出從 Active Directory 同步處理的網域使用者

  1. 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI

  2. 從左側功能表中,選取 [ 使用者]。 您應該會看到所有使用者從 Active Directory 同步至 HDInsight 叢集。

    ESP HDInsight Ambari management UI list users.

列出從 Active Directory 同步處理的網域群組

  1. 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI

  2. 從左側功能表中,選取 [ 群組]。 您應該會看到從 Active Directory 同步至 HDInsight 叢集的所有群組。

    ESP HDInsight Ambari management UI list groups.

設定Hive檢視許可權

  1. 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI

  2. 從左側功能表中,選取 [ 檢視]。

  3. 選取 [HIVE ] 以顯示詳細數據。

    ESP HDInsight Ambari management UI Hive Views.

  4. 選取 [Hive 檢視] 連結以設定 Hive 檢視。

  5. 向下卷動至 [ 許可權] 區段。

    ESP HDInsight Ambari management UI Hive Views configure permissions.

  6. 選取 [ 新增使用者 ] 或 [新增群組],然後指定可使用Hive檢視的使用者或群組。

設定角色的使用者

若要查看角色及其許可權的清單,請參閱使用 ESP 的 HDInsight 叢集角色。

  1. 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI
  2. 從左側功能表中,選取 [ 角色]。
  3. 選取 [新增使用者 ] 或 [新增群組 ],將使用者和群組指派給不同的角色。

下一步

  • 如需使用企業安全性套件設定 HDInsight 叢集,請參閱 使用 ESP 設定 HDInsight 叢集。
  • 如需設定Hive原則和執行Hive查詢,請參閱 使用ESP設定HDInsight叢集的Apache Hive原則。