天天看點

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

開發者學堂課程【SaaS  模式雲資料倉庫系列課程 —— 2021數倉必修課:SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/55/detail/1054

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐

内容介紹:

1. 什麼是  MaxCompute

2. MaxCompute  企業級安全能力更新

3. MaxCompute  安全體系

4.如何應對資料誤用

5.如何應對資料濫用

6.如何應對資料洩露

7.如何應對資料丢失

1.什麼是  MaxCompute

MaxCompute  是一款雲原生、高效能的SaaS模式企業級資料倉庫服務,被廣泛用于建構現代化企業資料平台,開展BI分析、資料化營運、畫像及推薦、智能預測等應用場景。

MaxCompute  建構在阿裡雲大規模計算、存儲資源之上,以 Serverless 架構提供全托管的線上資料倉庫服務,消除了傳統資料平台在資源擴充性和彈性方面的限制,并最小化使用者的運維投入。

MaxCompute 支援多種經典計算模型(批處理、機器學習、互動式分析等)和完善的企業管理功能,借助 MaxCompute ,使用者可輕松內建和管理企業資料資産,簡化資料平台架構,加速價值實作。

2.MaxCompute  企業級安全能力更新

MaxCompute  近期對産品的安全能力進行了全面更新。 釋出的安全能力有:

細粒度授權

資料加密  (BYOK)

資料脫敏(資料保護傘)

持續備份恢複

跨地域的容災備份

實時審計日志

3.MaxCompute  安全體系

對于一個企業級的大資料平台,要應對的安全風險,有三個層次(如圖-1):

1.基礎安全與可信平台,保障資料中心的實體安全與網絡安全,主要包括資料中心保障設施、資料中心安全管控、資料中心的網絡安全等幾個次元的建設。

2.大資料平台的系統安全,主要由通路控制、安全隔離、風控審計、以及資料保護等子系統構成,為上層安全應用或工具提供平台能力基礎。

3.資料應用的安全,為使用者提供工具化的資料安全産品,優化使用者體驗,幫助使用者更好應對各類資料風險。

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

近期的 MaxCompute 安全能力更新,主要新功能覆寫了通路控制、風控審計、以及資料保護幾個子系統,如圖-1中“大資料平台安全”層中,黃色高亮字型部分。本文中,我們将針對幾類主要的資料風險(如圖-2),介紹這些資料風險應對的最佳實踐。在最佳實踐中,将會穿插介紹何時使用、為什麼使用、如何使用這些新功能。

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

資料誤用是由于非故意的、過失性動作導緻的,防止誤用一般指防止資料被不經意間錯誤使用。

應對資料誤用的風險,防止資料誤用,核心的一點,就是了解資料,能夠回答這些問題:我有什麼資料,這些資料在哪裡,這些資料是怎麼來的、又被如何使用,等一系列問題。

  • MaxCompute  提供基礎中繼資料資訊

MaxCompute  可以幫助使用者很好的回答這些問題。 MaxCompute 平台建構了統一的中繼資料管理,基于統一進制資料和完備的平台日志,向使用者提供中繼資料和相關日志資料。 使用者可以基于 MaxCompute 的 Information Schema,建構自己的資料管理應用。

  • 使用資料地圖作為資料管理工具

大多數使用者更希望通過現有的資料管理應用或服務,來了解自己的資料:“DataWorks -資料地圖”就是這樣的應用。 

資料總覽、資料明細等資訊能幫助使用者了解自己有哪些資料以及資料的明細資訊;産出和使用資訊、血緣資訊,則能幫助使用者了解資料的來龍去脈,幫助使用者正确、合理的使用資料。 

使正确的資料,被正确的使用在正确的場景下。在這裡插入圖檔描述

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

資料濫用指的是對資料的使用超出了其預先約定的場景或目的,資料濫用一般是靠故意的、帶有目的性的動作完成的。而應對資料濫用,最主要的應對是對資料使用做最小化授權,嚴格限制資料的被通路、使用的範圍。權限管理的最佳實踐,推薦圖-5中的4大過程:

資料分級管理:基于  MaxCompute 的 LabelSecurity  對資料做分類分級管理。

授權審批流程:基于 MaxCompute  的 列級别權限管控能力, 對資料的通路使用需求,做最小化授權。

定期審計:對權限的申請、審批、使用情況進行分析,做到事前有審批,事後有審計。

及時清理:及時清理過期權限,減少資料風險。

可以依托  MaxCompute 的細粒度權限體系,使用  Dataworks 等白屏化工具,來實作最小化授權的最佳實踐,應對資料濫用的風險。

  • (New) MaxCompute  細粒度權限體系提供精細化的權限管理能力

MaxCompute 支援不同的授權機制來完成對使用者或角色的授權,包括:

  • 自主通路控制機制 (DAC, Discretionary Access Control): ACL
  • 強制通路控制機制 (MAC, Mandatory Access Control):LabelSecurity (标簽安全政策)
  • 基于角色的通路控制機制 (RBAC, Role based Access Control):  角色管理

不論是哪種通路控制機制,授權鑒權過程中的三個要素是相同的: Action,Object,以及 Subject,如下圖。

在此次的 MaxCompute  安全能力釋出中,也包括權限模型的更新,支援更細粒度的授權鑒權,提供精細化的權限管理能力。 主要新功能有:

  • ACL 支援列級别權限管理,增加 Condition支援,增加授權有效期支援;
  • 細粒度  Package  内資源權限管控,對  Package  内的資源可以支援到列級别的權限管控;
  • 增加獨立的  Download  資料下載下傳權限管理,對更高風險的資料批量下載下傳場景做獨立權管控;
  • 管理類權限支援分級授權管理,内置  super administrator  角色來分解project owner  管理負擔;
  • 完善  RBAC,LabelSecurity 增加對  Role  的支援;
  • 增強對應用端的權限管理能力。
SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

使用安全中心進行白屏化權限管理

MaxCompute  的細粒度權限體系提供了的實作最小化授權的平台能力,結合一些白屏化工具,如“ DataWorks-安全中心”,則可以提供更好的使用者體驗,讓使用者更友善的實作權限管理。

安全中心提供便捷的權限管控功能和可視化的申請、審批流程,也可以進行權限的審計和管理:

  • 權限自助申請:選擇所需權限的資料表/字段,線上上快速發起申請。
  • 權限審計及交還:管理者可以檢視資料權限的對應人員,進行審計管理,使用者也可以主動交還不再需要的權限。
  • 權限審批管理:線上審批授權模式,提供可視化、流程化的管理授權機制,并可以對審批流程進行事後追溯。

1.資料生命周期

資料洩露可能發生在資料生命周期的多個階段,如資料傳輸、資料存儲、資料處理、資料交換等階段。是以,我們将結合資料生命周期的不同階段來介紹應對資料洩露的最佳實踐。

首先,資料從不同的管道被采集,經過各類傳輸通道,進入大資料平台。 

在大資料平台中,經過計算後落盤存儲;資料也會通過資料分享機制,在不同的租戶、業務之間流轉;經過一定周期後,一些資料也會被删除銷毀。經過處理後的資料,則會通過不同的傳輸通道,被其他資料應用、或者使用者消費。 

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

2.(New) 應對資料存儲過程中的資料洩露風險 - 使用資料加密(存儲加密)功能。

如何應對資料存儲過程中的資料洩露風險:如磁盤資料被直接通路,磁盤被擷取,等風險。應對此類情況的措施,是對磁盤資料進行加密,這樣即使資料被惡意擷取,加密後的資料也無法被解讀使用。

此次安全能力更新中, MaxCompute  釋出了存儲加密功能,支援使用者資料的落盤加密:

  • MaxCompute 接入秘鑰管理系統 KMS 以保障秘鑰的安全性,支援服務秘鑰和使用者自選秘鑰 (BYOK) 。
  • 使用者可以在建立 MaxCompute 項目時,配置選擇打開存儲加密功能(存量使用者可以通過工單申請開通)。
  • 支援加密算法: AES256,國密算法,等。
  • 資料加密後對使用者使用保持透明,各種類型的任務不需額外改變。

3.應對資料資料處理過程中的資料洩露風險 -  MaxCompute  安全隔離能力

在資料處理過程中,應對資料洩露的風險則主要在于大資料平台的安全隔離能力。

MaxCompute  提供獨立的隔離環境用于執行資料處理應用,可以支援完整的UDF種類,支援  Java 和 Python UDF,  還支援執行如 Spark、Flink、Tensorflow  等開源三方計算引擎,提供了多元化的資料處理能力。

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

4.應對資料交換(共享)過程中的資料洩露風險 -  MaxCompute 資料隔離與權限體系

在資料交換、或者說資料共享過程中,則需要完善的資料隔離能力與權限管理體系來保障資料安全、防範資料洩露風險。 MaxCompute  提供不同層級和次元上的資料隔離與權限管理機制,以支援多層次的資料保護和資料共享場景。

  • 多租戶的資料安全隔離: MaxCompute

    支援多租戶的使用場景,針對不同的使用者資料進行資料存儲隔離,使用者資料被離散存儲在分布式檔案系統中,滿足多使用者協同、共享、和安全的需要,做到真正的多租戶資源隔離。

  • 租戶内的業務 (Project) 資料隔離與共享:同一租戶下,不同業務( Project)之間的資料隔離、以及一定程度上的資料共享是非常常見的場景。基于ProjectProtection  保護機制可以實作  Project 之間的資料隔離與保護,二Package 則能讓使用者更友善同時也更安全的實作跨 Project 的資料和資源分享。如前文“MaxCompute  細粒度權限體系提供精細化的權限管理能力”介紹,此次安全能力更新增加了對 Package 的資料和資源做細粒度的權限管理,增強了 Package 的資料共享和保護能力。
  • (New) 應用端資料通路控制:通過對通路 MaxCompute 的的應用增加簽名機制,增強了對應用端通路控制的管理能力。 例如,隻允許特定的應用可以進行授權語句的操作,以避免使用者通過接口或不合規的應用進行非法資料授權操作。
5.(New) 資料生命周期中的敏感資料保護

應對資料洩露風險中的一個重要主題是敏感資料保護,前文所述在存儲、處理、和交換過程中的風險應對實踐,對敏感資料保護同樣适用。 此外,還有一些針對敏感資料保護這一特定場景的最佳實踐:

  • 資料分類分級:使用  MaxCompute  的  LabelSecurity

    功能,對資料做安全性的分類分級,對不同類别不同安全等級的資料通路和使用,進行精細化的權限管理。

  • (New) 資料脫敏:基于安全行業的脫敏實作或應用,結合  MaxCompute 的平台  UDF

    能力,實作不同用戶端資料輸出時的敏感資料脫敏。脫敏實作也可以與資料分類分級結合使用,對不同分類分級的資料做不同的脫敏實作。

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

(New)用資料保護傘作為敏感資料保護工具

資料保護傘,是基于  MaxCompute  平台的資料分類分級能力和接入脫敏應用能力、建構的敏感資料保護工具。使用者可以使用資料保護傘對敏感資料進行辨別,選擇脫敏算法,在資料屏顯輸出時進行脫敏。

除了惡意的資料洩露、資料濫用等風險,資料開發過程中的各種誤操作,偶發的裝置或機房故障,甚或是罕見的災害意外情況,都能造成資料丢失的後果。 應對資料丢失風險的最佳實踐,主要有備份恢複,以及容災能力。

1.(New) MaxCompute  備份與恢複

資料開發過程中,避免不了會有誤操作删除資料(如 Drop/Truncate Table)後需要恢複,或使用“insert into”、“insertoverwrite”文法執行後發現資料有問題需要恢複之前版本。

MaxCompute  近期釋出了持續的備份與恢複能力,系統會自動備份資料的曆史版本(例如被删除或修改前的資料并保留一定時間,您可以對保留周期内的資料進行快速恢複,避免因誤操作丢失資料。

SaaS 模式雲資料倉庫 MaxCompute 安全最佳實踐 | 學習筆記

2.(New) MaxCompute  異地容災

MaxCompute 的異地容災能力,更好的提供了在機房故障或意外災害等極端場景下的資料安全保障。

在為 MaxCompute 項目指定備份位置到備份叢集後,MaxCompute 自動實作主叢集與備份叢集的資料複制,達到主叢集與被叢集資料的一緻,實作異地資料容災。當發生故障,MaxCompute 項目從主叢集切換到備份叢集後,使用備份叢集的計算資源通路備份叢集的資料,完成服務的切換和恢複。)

善用審計,應對各類資料風險

至此,我們已經介紹了在資料開發和使用過程中,應對各類資料風險的實踐。我們把非常重要的、适用于各類資料風險應對的一個實踐,放在最後介紹:善用日志,建構預警和審計能力。

MaxCompute  提供了完善的曆史資料和實時日志:

  • Information Schema: 提供了項目中繼資料及使用曆史資料等資訊。PRIVILEGES 和 HISTORY 類的視圖,可以幫助使用者對資料權限使用、任務執行等次元做分析審計。
  • (New) 實時審計日志功能: MaxCompute
  • 完整記錄了使用者的各項操作行為,如DDL、授權、任務執行等各類事件,滿實時審計、問題回溯分析等需求。

基于 Information Schema 和 實時審計日志,使用者可以建構自己的資料風控和審計體系。Information Schema  去年就已上線,下文将主要介紹新釋出的實時審計日志。

當然,并不是所有的使用者都計劃自己建構風控和審計工具,這種情況下,可以直接使用  Dataworks 中的已有産品,進行風控和審計。優點是無需使用者二次開發、開箱即用,缺點則是定制的彈性較小。

1.(New) 實時審計日志

敏感資料是否被過度使用?

資料通路權限是否被過度授予?是否有異常如計劃外高頻的資料通路?在資料安全保障中,管理者常常需要回答這些問題。 MaxCompute  審計日志可以幫助回答這些問題。

MaxCompute完整地記錄使用者的各項操作行為,并通過阿裡雲ActionTrail服務将使用者行為日志實時推送給ActionTrail。使用者可以在ActionTrail中檢視和檢索使用者行為日志,同時通過ActrionTrail将日志投遞到日志服務項目或指定的OSS Bucket中,滿足實時審計、問題回溯分析等需求。

ActionTrail針對作業(Instance)、表(Table)、函數(Function)、資源(Resource)、使用者(User)、角色(Role)和授權(Privilege)等事件的多種操作行為進行審計。

2.使用 DataWorks 中的審計工具

使用者也可以使用  Dataworks  的已有産品,進行資料安全的風控和審計:

  • 在前文中介紹的安全中心,可以提供權限的審計。
  • 資料保護傘也提供了風控和審計能力。

繼續閱讀