EasyMR 安全架構揭秘:如何管理 Hadoop 數據安全

来源:https://www.cnblogs.com/DTinsight/archive/2023/04/06/17291841.html
-Advertisement-
Play Games

2017年,美國信用評級機構 Equifax 遭受黑客攻擊,導致1.4億個人的敏感信息泄露; 2020年,發生了 SolarWinds 公司的軟體供應鏈遭受惡意代碼攻擊事件,涉及多個行業和國家; 2022年,網信辦依據《數據安全法》等法律法規,對滴滴公司開出人民幣80.26億元的巨額罰款,對互聯網企 ...


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

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

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

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

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

作為領先的數字化基礎軟體與應用服務商袋鼠雲,一直以來也高度重視數據安全問題,2022年12月,在自研的大數據計算引擎 EasyMR新增了一站式大數據應用安全防控以及數據許可權管控能力

基於此,EasyMR 可以實現一鍵部署安全管控服務,一鍵開啟大數據集群組件的安全認證、用戶管理以及許可權管控服務。

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

Hadoop 的安全問題

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

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

· 用戶認證(Authentication) 即是對用戶身份進行核對, 確認用戶是其聲明的身份, 這裡包括用戶和服務的認證。

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

EasyMR 如何接管 Hadoop 安全

EasyMR Hadoop 的安全認證是基於 Kerberos 實現的,集成 LDAP 用戶體系。 Kerberos 是一個網路身份驗證協議,用戶只需輸入身份驗證信息,驗證通過獲取票據即可訪問多個接入 Kerberos 的服務,機器的單點登錄也可以基於此協議完成。

Hadoop 本身並不創建用戶賬號,而是使用 Kerberos 協議來進行用戶身份驗證,從 Kerberos 憑證中的用戶信息獲取用戶賬號, 這樣一來就跟實際用戶運行的賬號無關。

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

集群賬號管理

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

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

EasyMR 組件服務運行的用戶信息可以配置在產品包服務層級下,下圖以服務 hdfs_namenode 為例:

file

file

用戶賬號管理

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

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

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

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

EasyMR 如何部署 Hadoop 安全

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

準備產品包

file

安裝產品包

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

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

file

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

file

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

file

開啟 Kerberos 安全

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

● zookeeper 開關

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

file

● Hadoop 開關

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

file

應用授權

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

file

《數據治理行業實踐白皮書》下載地址:https://fs80.cn/380a4b

想瞭解或咨詢更多有關袋鼠雲大數據產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠雲官網:https://www.dtstack.com/?src=szbky

同時,歡迎對大數據開源項目有興趣的同學加入「袋鼠雲開源框架釘釘技術qun」,交流最新開源技術信息,qun號碼:30537511,項目地址:https://github.com/DTStack


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. HAVING子句的用法 1.1. 學習SQL時最大的阻礙就是我們已經習慣了的面向過程語言的思考方式(排序、迴圈、條件分支、賦值等) 1.2. 只有習慣了面向集合的思考方式,才能真正地學好它 1.3. 幫助我們順利地忘掉面向過程語言的思考方式並理解SQL面向集合特性的最為有效的方法 1.4. H ...
  • # 大數據開發基礎學習編程語言往往是我們開啟學習之路的第一大步。大數據領域的很多框架都是基於Java語言開發的,而且各種框架也都提供了Java API來提供使用和操作介面,所以Java語言的學習逃不掉。除此之外Scala在必要時也可以學一下,在大數據開發領域里用得還是挺多的。Scala語言的表達能力 ...
  • 數據管理技術的發展 第一節 資料庫技術發展概述 數據模型是資料庫系統的核心和基礎 以數據模型的發展為主線,資料庫技術可以相應地分為三個發展階段: 第一代的網狀、層次資料庫系統 第二代的關係資料庫系統 新一代的資料庫系統 一、第一代資料庫系統 層次資料庫系統 層次模型 網狀資料庫系統 網狀模型 層次模 ...
  • ORACLE資料庫中ORACLE_SID與INSTANCE_NAME在概念和意義上有什麼異同呢?下麵簡單來總結概況一下,很多時候,不少人都搞不清楚兩者的異同,甚至認為兩者是等價的。 ORACLE_SID與INSTANCE_NAME的異同 ORACLE_SID參數是操作系統的環境變數,用於和操作系統進 ...
  • 最近寫了幾個簡單的spark structured streaming 的代碼實例。 目的是熟悉spark 開發環境搭建, spark 代碼開發流程。 開發環境: 系統:win 11 java : 1.8 scala:2.13 工具:idea 2022.2 ,maven 3, git 2.37 sp ...
  • 在日常工作中,我們會遇見一些慢SQL,在分析這些慢SQL時,我們通常會看下SQL的執行計劃,驗證SQL執行過程中有沒有走索引。通常我們會調整一些查詢條件,增加必要的索引,SQL執行效率就會提升幾個數量級。我們有沒有思考過,為什麼加了索引就會能提高SQL的查詢效率,為什麼有時候加了索引SQL執行反而會... ...
  • navicat15安裝破解教程 一.navicati15安裝 參考教程 安裝包文件查找過程不再這裡贅述了,大家自行百度,相關經驗帖很多。 二. 破解 啟動破解工具,並點擊Patch 點擊後選擇我們安裝navicat的目錄 註意第二步的相關配置 點擊Generate生成key 打開navicat15, ...
  • 摘要:本文主要介紹GaussDB(DWS)雲原生數倉架構、產品能力,幫助開發者快速瞭解GaussDB(DWS)雲原生數倉相關信息與能力。 本文分享自華為雲社區《直播回顧 | GaussDB(DWS)雲原生數倉技術解析》,作者:胡辣湯。 在本期《GaussDB(DWS)雲原生數倉技術解析》的主題直播中 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...