EasyMR 安全架構揭秘:如何管理 Hadoop 資料安全

數棧DTinsight發表於2023-04-07

2017年,美國信用評級機構 Equifax 遭受駭客攻擊,導致1.4億個人的敏感資訊洩露;

2020年,發生了 SolarWinds 公司的軟體供應鏈遭受惡意程式碼攻擊事件,涉及多個行業和國家;

2022年,網信辦依據《資料安全法》等法律法規,對滴滴公司開出人民幣80.26億元的鉅額罰款,對網際網路企業敲響資料安全警鐘。

近年來,資料安全正在快速成為當今資訊化時代一個備受關注的話題。在數字化快速發展的今天,各個領域都離不開資料的支撐,而資料安全問題也隨之成為了一項重要的任務。企業、政府、學術機構等各種組織和個人都需要保護自己的資料免於洩露、丟失、篡改或被濫用等風險。

Hadoop 作為進入大資料領域的必備技術,由於自身的業務特點,一般都是部署在使用者內網中,所以在早期設計的時候不是太注重安全方面的設計,而更多的專注於實現業務的功能。

作為領先的 袋鼠雲,一直以來也高度重視資料安全問題,2022年12月,在自研的 上 。

基於此,EasyMR 可以實現 ,一鍵開啟大資料叢集元件的安全認證、使用者管理以及許可權管控服務。

本文就為大家展開介紹一下 EasyMR 具體是如何管理 Hadoop 資料安全的。

Hadoop 的安全問題

最早部署 時並沒有考慮安全問題,未開啟安全認證時,Hadoop 是以客戶端提供的使用者名稱作為使用者憑證, 一般就是發起任務的 Unix 使用者。線上機器部署服務通常會採用統一賬號,當以統一賬號部署叢集時,所有執行 Hadoop 任務的使用者都是叢集的超級管理員,非常容易發生誤操作。

即便是以管理員賬號部署叢集,惡意使用者在客戶端仍然可以冒充管理員賬號執行。隨著叢集的不斷擴大, 各部門對叢集的使用需求增加,叢集安全問題就顯得頗為重要。Hadoop 的安全問題,一般包括以下兩個方面:

· (Authentication) 即是對使用者身份進行核對, 確認使用者是其宣告的身份, 這裡包括使用者和服務的認證。

· 使用者授權(Authorization) 即是許可權控制,對特定資源,特定訪問使用者進行授權或拒絕訪問,使用者授權是建立在使用者認證的基礎上, 沒有可靠的使用者認證談不上使用者授權。

EasyMR 如何接管 Hadoop 安全

是基於 Kerberos 實現的,整合 LDAP 使用者體系。 Kerberos 是一個網路身份驗證協議,使用者只需輸入身份驗證資訊,驗證透過獲取票/據即可訪問多個接入 Kerberos 的服務,機器的單點登入也可以基於此協議完成。

Hadoop 本身並不建立使用者賬號,而是使用 來進行使用者身份驗證,從 Kerberos 憑證中的使用者資訊獲取使用者賬號, 這樣一來就跟實際使用者執行的賬號無關。

EasyMR 接管 Hadoop 安全主要使用以下兩種賬號管理方式:

叢集賬號管理

原先我們使用單一賬號作為叢集管理員,且這一賬號為線上統一登入賬號, 這存在極大的安全隱患,我們需要使用特殊賬號來管理叢集。這裡涉及的問題是,我們需要幾個運維賬號呢? 一種簡單的做法是使用一個特殊運維賬號, CDH 和 Apache官方也都推薦按服務劃分賬號來啟動叢集。

考慮到精細化控制可以有效避免誤操作,EasyMR 遵循官方的建議使用多賬號,使用 Hadoop 作為同一使用者組,每個元件使用單獨的使用者。如果是從單一運維賬號遷移到多個賬號部署時,則需要考慮相關檔案許可權問題,包括本地以及 HDFS 兩部分,可以在安全部署上線時完成相應改動。

EasyMR 元件服務執行的使用者資訊可以配置在 下,下圖以服務 hdfs_namenode 為例:

file

file

使用者賬號管理

考慮到每個團隊下會有不同的小組,每個小組都有使用 Hadoop 來進行大資料處理需求,所以需要一定程度的多租戶環境, 這裡主要考慮其中的資料和操作的許可權問題,EasyMR 整合了 ,其功能優勢具體體現如下:

• LdapServer 能夠減少使用者賬戶管理人員在面對使用者數量大、增長快等問題的情況下對賬號的建立、回收、許可權管理、安全審計等一系列複雜而繁瑣工作的壓力。

• LdapServer 能夠解決多層次、多型別系統、資料庫的安全訪問難題,所有與賬號相關的管理策略均配置在服務端,實現了賬號的集中維護和管理。

• LdapServer 能夠充分繼承和利用平臺組織中現有的賬戶管理系統的身份認證功能,並實現了賬戶管理與訪問控制管理的分離,提高了大資料平臺訪問認證的安全性。

EasyMR 如何部署 Hadoop 安全

EasyMR 可以支援 Hadoop,Hive,Spark,Ranger 元件開啟Kerberos功能,每個元件的開啟操作基本一致。下面以開啟 功能為例為大家介紹EasyMR 具體是如何部署 Hadoop 安全的。

準備產品包

file

安裝產品包

● 安裝 zookeeper、openldap、kdc、Hadoop 服務

以安裝 Hadoop 服務為例,選中需要安裝的服務,點選下一步;

file

指定每個服務需要部署的節點,點選執行部署;

file

部署完成後,可以在節點檢查目錄的許可權及元件的啟動使用者。

file

開啟 Kerberos 安全

部署完服務後,需要按照 Kerberos 開啟順序依次開啟。

● zookeeper 開關

首先在服務頁面,選擇 ,在部署配置裡面找到 Switch 開關項,切換開關狀態,等待開關開啟結果。

file

● Hadoop 開關

在服務頁面,選擇 服務,在部署配置裡面找到 Switch 開關項,切換開關狀態,等待開關開啟結果,開啟成功後,hadoop Kerberos 功能就成功啟用了。

file

應用授權

授權一般來說是由應用來決定的,透過在 LDAP 資料庫中配置一些屬性可以讓應用程式來進行授權判斷。EasyMR 在部署完 LdapServer 後,平臺管理裡面將會自動關聯 LdapServer 的連線資訊,使用者只需選中對應的 LdapServer 連線,在對應的使用者下點選下載票/據即可。

file

《資料治理行業實踐白皮書》下載地址:


想了解更多有關袋鼠雲大資料產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠雲官網:https://www.dtstack.com/?src=szitpub


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69995740/viewspace-2944330/,如需轉載,請註明出處,否則將追究法律責任。