SaaS 模式雲數據倉庫 MaxCompute 數據安全最佳實踐

本文作者 阿里雲智能 項目管理專家 王璀

什麼是 MaxCompute?

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

MaxCompute 構建在阿里雲大規模計算、存儲資源之上,以Serverless架構提供全託管的在線數據倉庫服務,消除了傳統數據平臺在資源擴展性和彈性方面的限制,並最小化用戶的運維投入。

MaxCompute支持多種經典計算模型(批處理、機器學習、交互式分析等)和完善的企業管理功能,藉助MaxCompute,用戶可輕鬆集成和管理企業數據資產,簡化數據平臺架構,加速價值實現。

MaxCompute 企業級安全能力升級

MaxCompute 近期對產品的安全能力進行了全面升級。 發佈的安全能力有:

· 細粒度授權
· 數據加密 (BYOK)
· 數據脫敏(數據保護傘)
· 持續備份恢復
· 跨地域的容災備份
· 實時審計日誌

MaxCompute 安全體系

對於一個企業級的大數據平臺,要應對的安全風險,有三個層次(如圖-1):
1.基礎安全與可信平臺,保障數據中心的物理安全與網絡安全,主要包括數據中心保障設施、數據中心安全管控、數據中心的網絡安全等幾個維度的建設。
2.大數據平臺的系統安全,主要由訪問控制、安全隔離、風控審計、以及數據保護等子系統構成,爲上層安全應用或工具提供平臺能力基礎。
3.數據應用的安全,爲用戶提供工具化的數據安全產品,優化用戶體驗,幫助用戶更好應對各類數據風險。

image

(圖-1:大數據平臺安全體系)

近期的MaxCompute安全能力升級,主要新功能覆蓋了訪問控制、風控審計、以及數據保護幾個子系統,如圖-1中“大數據平臺安全”層中,黃色高亮字體部分。本文中,我們將針對幾類主要的數據風險(如圖-2),介紹這些數據風險應對的最佳實踐。在最佳實踐中,將會穿插介紹何時使用、爲什麼使用、如何使用這些新功能。

image

(圖-2:主要數據風險)

如何應對數據誤用

數據誤用是由於非故意的、過失性動作導致的,防止誤用一般指防止數據被不經意間錯誤使用。應對數據誤用的風險,防止數據誤用,核心的一點,就是了解數據,能夠回答這些問題:我有什麼數據,這些數據在哪裏,這些數據是怎麼來的、又被如何使用,等一系列問題。

1. MaxCompute 提供基礎元數據信息

MaxCompute 可以幫助用戶很好的回答這些問題。 MaxCompute 平臺構建了統一的元數據管理,基於統一元數據和完備的平臺日誌,向用戶提供元數據和相關日誌數據。 用戶可以基於 MaxCompute 的 Information Schema,構建自己的數據管理應用。

2. 使用數據地圖作爲數據管理工具

大多數用戶更希望通過現有的數據管理應用或服務,來了解自己的數據:“DataWorks-數據地圖”就是這樣的應用。 數據總覽、數據明細等信息能幫助用戶瞭解自己有哪些數據以及數據的明細信息;產出和使用信息、血緣信息,則能幫助用戶瞭解數據的來龍去脈,幫助用戶正確、合理的使用數據。 使正確的數據,被正確的使用在正確的場景下。

image

(圖-3:使用數據地圖瞭解數據)

如何應對數據濫用

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

• 數據分級管理:基於 MaxCompute 的 LabelSecurity 對數據做分類分級管理。
• 授權審批流程:基於 MaxCompute 的 列級別權限管控能力, 對數據的訪問使用需求,做最小化授權。
• 定期審計:對權限的申請、審批、使用情況進行分析,做到事前有審批,事後有審計。
• 及時清理:及時清理過期權限,減少數據風險。

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

1. (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 的支持;
• 增強對應用端的權限管理能力。

image

(圖-4:MaxCompute 細粒度權限體系)

(橙色高亮字體爲此次細粒度權限能力發佈)

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

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

image

(圖-5:使用安全中心做白屏化權限管理)

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

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

如何應對數據泄露

1.數據生命週期

image

(圖-6:數據生命週期)

數據泄露可能發生在數據生命週期的多個階段,如數據傳輸、數據存儲、數據處理、數據交換等階段。因此,我們將結合數據生命週期的不同階段來介紹應對數據泄露的最佳實踐。

首先,數據從不同的渠道被採集,經過各類傳輸通道,進入大數據平臺。 在大數據平臺中,經過計算後落盤存儲;數據也會通過數據分享機制,在不同的租戶、業務之間流轉;經過一定週期後,一些數據也會被刪除銷燬。經過處理後的數據,則會通過不同的傳輸通道,被其他數據應用、或者用戶消費。 (如圖-7)。

image

(圖-7:大數據平臺中的數據生命週期)

2.(New) 應對數據存儲過程中的數據泄露風險 - 使用數據加密(存儲加密)功能

我們首先看一下如何應對數據存儲過程中的數據泄露風險:如磁盤數據被直接訪問,磁盤被獲取,等風險。應對此類情況的措施,是對磁盤數據進行加密,這樣即使數據被惡意獲取,加密後的數據也無法被解讀使用。
此次安全能力升級中, MaxCompute 發佈了存儲加密功能,支持用戶數據的落盤加密:

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

更多功能和使用介紹,詳見《數據加密》文檔說明。

3.應對數據數據處理過程中的數據泄露風險 - MaxCompute 安全隔離能力

在數據處理過程中,應對數據泄露的風險則主要在於大數據平臺的安全隔離能力。
MaxCompute 提供獨立的隔離環境用於執行數據處理應用,可以支持完整的UDF種類,支持 Java和Python UDF, 還支持執行如Spark、Flink、Tensorflow 等開源三方計算引擎,提供了多元化的數據處理能力。

image

(圖-8:MaxCompute 安全隔離能力)

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

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

• 多租戶的數據安全隔離:MaxCompute 支持多租戶的使用場景,針對不同的用戶數據進行數據存儲隔離,用戶數據被離散存儲在分佈式文件系統中,滿足多用戶協同、共享、和安全的需要,做到真正的多租戶資源隔離。

• 租戶內的業務(Project)數據隔離與共享:同一租戶下,不同業務(Project)之間的數據隔離、以及一定程度上的數據共享是非常常見的場景。基於ProjectProtection 保護機制可以實現 Project之間的數據隔離與保護,二Package則能讓用戶更方便同時也更安全的實現跨Project的數據和資源分享。如前文“MaxCompute 細粒度權限體系提供精細化的權限管理能力”介紹,此次安全能力升級增加了對Package的數據和資源做細粒度的權限管理,增強了Package的數據共享和保護能力。

• (New) 應用端數據訪問控制:通過對訪問MaxCompute的的應用增加簽名機制,增強了對應用端訪問控制的管理能力。 例如,只允許特定的應用可以進行授權語句的操作,以避免用戶通過接口或不合規的應用進行非法數據授權操作。

image

(圖-9:MaxCompute 數據隔離能力)

5.(New) 數據生命週期中的敏感數據保護

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

• 數據分類分級:使用 MaxCompute 的 LabelSecurity 功能,對數據做安全性的分類分級,對不同類別不同安全等級的數據訪問和使用,進行精細化的權限管理。

• (New) 數據脫敏:基於安全行業的脫敏實現或應用,結合 MaxCompute 的平臺 UDF 能力,實現不同客戶端數據輸出時的敏感數據脫敏。脫敏實現也可以與數據分類分級結合使用,對不同分類分級的數據做不同的脫敏實現。

image

(圖-10:敏感數據保護)

(New)用數據保護傘作爲敏感數據保護工具

數據保護傘,是基於 MaxCompute 平臺的數據分類分級能力和接入脫敏應用能力、構建的敏感數據保護工具。用戶可以使用數據保護傘對敏感數據進行標識,選擇脫敏算法,在數據屏顯輸出時進行脫敏。
更多產品說明和使用介紹,詳見《數據保護傘》用戶文檔。

image

(圖-11:敏感數據保護工具 - 數據保護傘)

如何應對數據丟失

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

1.(New) MaxCompute 備份與恢復

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

MaxCompute 近期發佈了持續的備份與恢復能力,系統會自動備份數據的歷史版本(例如被刪除或修改前的數據)並保留一定時間,您可以對保留週期內的數據進行快速恢復,避免因誤操作丟失數據。

image

(圖-12:MaxCompute 持續備份與恢復能力)

2.(New) MaxCompute 異地容災

MaxCompute 的異地容災能力,更好的提供了在機房故障或意外災害等極端場景下的數據安全保障。
在爲 MaxCompute 項目指定備份位置到備份集羣后,MaxCompute 自動實現主集羣與備份集羣的數據複製,達到主集羣與被集羣數據的一致,實現異地數據容災。當發生故障,MaxCompute 項目從主集羣切換到備份集羣后,使用備份集羣的計算資源訪問備份集羣的數據,完成服務的切換和恢復。

image

(圖-13: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)等事件的多種操作行爲進行審計,詳細功能說明和使用介紹,詳見《審計日誌》用戶文檔。

image

(圖-14:MaxCompute 審計日誌)

2.使用 DataWorks 中的審計工具

用戶也可以使用 Dataworks 的已有產品,進行數據安全的風控和審計:

• 在前文中介紹的安全中心,可以提供權限的審計。
• 數據保護傘也提供了風控和審計能力,如圖-15。

image

(圖-15:使用數據保護傘做風控和審計)

小結

小結的同時呼應開篇,我們再次來看企業級大數據平臺三個層次的數據安全保障體系。 這次我們把 MaxCompute 的安全能力按數據生命週期的6個階段來重新組織,如圖-16。幫助大家更好理解,在不同的數據生命階段,應該採用哪些實踐來實施安全保障。圖-16中的黃色高亮部分,則標識了此次 MaxCompute 安全能力升級中的新功能。

image

(圖-16:基於大數據平臺構建數據什麼週期的安全保障)

作爲 SaaS 模式下的雲數據倉庫,MaxCompute 具備領先的安全能力,也通過了國際、歐洲、國內的多項安全合規認證,如國際主流認證ISO系列、SOC1/2/3、PCI,歐洲主流認證C5,國內主流認證安全等級保護2.0,等。 阿里雲整體的安全合規認證,詳見《阿里雲信任中心-合規認證》頁面。 歡迎大家使用 MaxCompute,構建企業級的大數據安全。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章