使用企業安全性套件管理 HDInsight 叢集
瞭解 HDInsight 企業安全性套件 (ESP) 中的使用者和角色,以及如何管理 ESP 叢集。
使用 VSCode 連結至已加入網域的叢集
您可以使用Apache Ambari受控使用者名稱連結一般叢集,也可以使用網域用戶名稱連結安全性 Apache Hadoop 叢集(例如: user1@contoso.com
)。
開啟 Visual Studio Code。 確定已安裝Spark和Hive Tools擴充功能。
請遵循連結 Visual Studio Code 叢集中的步驟。
使用 IntelliJ 連結至已加入網域的叢集
您可以使用 Ambari 受控使用者名稱連結一般叢集,也可以使用網域使用者名稱連結安全性 hadoop 叢集(例如:)。 user1@contoso.com
使用 Eclipse 連結至已加入網域的叢集
您可以使用 Ambari 受控使用者名稱連結一般叢集,也可以使用網域使用者名稱連結安全性 hadoop 叢集(例如:)。 user1@contoso.com
使用企業安全性套件存取叢集
企業安全性套件(先前稱為 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
- 叢集運算子
- 服務管理員
- 服務操作員
- 叢集使用者
若要查看這些角色的許可權
開啟Ambari管理UI。 請參閱 開啟Ambari管理UI。
從左側功能表中,選取 [ 角色]。
選取藍色問號以查看權限:
開啟Ambari管理UI
流覽至
https://CLUSTERNAME.azurehdinsight.net/
CLUSTERNAME 是叢集名稱的位置。使用叢集管理員網域用戶名稱和密碼登入Ambari。
從右上角選取 [ 系統管理員 ] 下拉功能表,然後選取 [ 管理 Ambari]。
UI 看起來像:
列出從 Active Directory 同步處理的網域使用者
開啟Ambari管理UI。 請參閱 開啟Ambari管理UI。
從左側功能表中,選取 [ 使用者]。 您應該會看到所有使用者從 Active Directory 同步至 HDInsight 叢集。
列出從 Active Directory 同步處理的網域群組
開啟Ambari管理UI。 請參閱 開啟Ambari管理UI。
從左側功能表中,選取 [ 群組]。 您應該會看到從 Active Directory 同步至 HDInsight 叢集的所有群組。
設定Hive檢視許可權
開啟Ambari管理UI。 請參閱 開啟Ambari管理UI。
從左側功能表中,選取 [ 檢視]。
選取 [HIVE ] 以顯示詳細數據。
選取 [Hive 檢視] 連結以設定 Hive 檢視。
向下卷動至 [ 許可權] 區段。
選取 [ 新增使用者 ] 或 [新增群組],然後指定可使用Hive檢視的使用者或群組。
設定角色的使用者
若要查看角色及其許可權的清單,請參閱使用 ESP 的 HDInsight 叢集角色。
- 開啟Ambari管理UI。 請參閱 開啟Ambari管理UI。
- 從左側功能表中,選取 [ 角色]。
- 選取 [新增使用者 ] 或 [新增群組 ],將使用者和群組指派給不同的角色。