共用方式為


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

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

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

  1. 開啟 Visual Studio Code。 確定已安裝 Spark 與 Hive 工具擴充功能。

  2. 請遵循連結叢集以進行 Visual Studio Code 的步驟。

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

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

  2. 按照 IntelliJ 的連結叢集中的步驟操作。

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

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

  2. 按照 Eclipse 的連結叢集中的步驟操作。

以企業安全性套件存取叢集

企業安全性套件 (先前稱為 HDInsight Premium) 提供對叢集的多位使用者存取,其驗證是由 Active Directory 執行,並且由 Apache Ranger 和 Storage ACL (ADLS ACL) 授權。 授權會提供多位使用者間的安全界限,只允許特殊權限的使用者根據授權原則存取資料。

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

工作負載 案例 存取方法
Apache Hadoop \(英文\) Hive – 互動式作業/查詢
Apache Spark 互動式作業/查詢,PySpark 互動式
Apache Spark 批次案例 – Spark 提交,PySpark
互動式查詢 (LLAP) 互動式
任意 安裝自訂應用程式

注意

企業安全性套件不會安裝/支援 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 並透過公用網際網路連線,請使用下列參數:

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

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

有 ESP 的 HDInsight 叢集的使用者

非 ESP 的 HDInsight 叢集有兩個使用者帳戶,是在叢集建立期間建立的︰

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

除了 Ambari 系統管理員之外,使用 ESP 的 HDInsight 叢集有三個新使用者。

  • Ranger 系統管理員︰此帳戶是本機的 Apache Ranger 系統管理員帳戶。 不是 Active Directory 網域使用者。 此帳戶可以用來設定原則、將其他使用者設為系統管理員、或委派系統管理工作 (讓某些使用者可以管理原則)。 預設的使用者名稱是 admin,密碼則是與 Ambari 系統管理員的密碼相同。 可以在 Ranger 的 [設定] 頁面中更新密碼。

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

    • 在叢集建立期間,將機器加入網域,並將它們放入您指定的 OU 中。
    • 在叢集建立期間,於您指定的 OU 中建立服務主體。
    • 建立反向 DNS 項目。

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

    叢集中有一些端點(例如 Templeton),這些端點不是由 Ranger 管理,因此很安全。 這些端點會針對所有使用者鎖定,只有叢集系統管理員網域使用者除外。

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

使用 ESP 之 HDInsight 叢集的角色

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

  • 叢集系統管理員
  • 叢集操作員
  • 服務管理員
  • 服務操作員
  • 叢集使用者

若要查看這些角色的權限

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

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

  3. 選取藍色問號可查看權限︰

    ESP HDInsight 角色許可權。

開啟 Ambari 管理 UI

  1. 瀏覽至 https://CLUSTERNAME.azurehdinsight.net/,其中 CLUSTERNAME 是叢集的名稱。

  2. 使用叢集系統管理員網域使用者的名稱和密碼登入 Ambari:

  3. 選取右上角的 [管理] 下拉式功能表,然後選取 [管理 Ambari]

    ESP HDInsight 管理 Apache Ambari。

    UI 看起來像這樣:

    ESP HDInsight Apache Ambari 管理 UI。

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

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

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

    ESP HDInsight Ambari 管理 UI 列表使用者。

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

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

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

    ESP HDInsight Ambari 管理 UI 清單群組。

設定 Hive 檢視權限

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

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

  3. 選取 [HIVE] 以顯示詳細資料。

    ESP HDInsight Ambari 管理 UI Hive 檢視。

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

  5. 向下捲動至 [權限]

    ESP HDInsight Ambari 管理 UI Hive 檢視設定許可權。

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

設定角色的使用者

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

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

下一步