簡介: MaxCompute做爲企業級SaaS模式雲數據倉庫,正在爲客戶業務及其數據提供持續的安全保護。 MaxCompute 近期對產品的安全能力進行了全面升級,本文將針對數據誤用、數據濫用、數據泄露、數據丟失等典型數據風險場景,結合數據生命週期,爲您介紹基 於MaxCompute 和 DataWorks 原生集成安全能力的最佳實踐。html
MaxCompute 是一款雲原生、高效能的SaaS模式企業級數據倉庫服務,被普遍用於構建現代化企業數據平臺,開展BI分析、數據化運營、畫像及推薦、智能預測等應用場景。算法
MaxCompute 構建在阿里雲大規模計算、存儲資源之上,以Serverless架構提供全託管的在線數據倉庫服務,消除了傳統數據平臺在資源擴展性和彈性方面的限制,並最小化用戶的運維投入。安全
MaxCompute支持多種經典計算模型(批處理、機器學習、交互式分析等)和完善的企業管理功能,藉助MaxCompute,用戶可輕鬆集成和管理企業數據資產,簡化數據平臺架構,加速價值實現。網絡
MaxCompute 近期對產品的安全能力進行了全面升級。 發佈的安全能力有:架構
· 細粒度受權
· 數據加密 (BYOK)
· 數據脫敏(數據保護傘)
· 持續備份恢復
· 跨地域的容災備份
· 實時審計日誌less
MaxCompute 安全體系運維
對於一個企業級的大數據平臺,要應對的安全風險,有三個層次(如圖-1):
1.基礎安全與可信平臺,保障數據中心的物理安全與網絡安全,主要包括數據中心保障設施、數據中心安全管控、數據中心的網絡安全等幾個維度的建設。
2.大數據平臺的系統安全,主要由訪問控制、安全隔離、風控審計、以及數據保護等子系統構成,爲上層安全應用或工具提供平臺能力基礎。
3.數據應用的安全,爲用戶提供工具化的數據安全產品,優化用戶體驗,幫助用戶更好應對各種數據風險。機器學習
(圖-1:大數據平臺安全體系)分佈式
近期的MaxCompute安全能力升級,主要新功能覆蓋了訪問控制、風控審計、以及數據保護幾個子系統,如圖-1中「大數據平臺安全」層中,黃色高亮字體部分。本文中,咱們將針對幾類主要的數據風險(如圖-2),介紹這些數據風險應對的最佳實踐。在最佳實踐中,將會穿插介紹什麼時候使用、爲何使用、如何使用這些新功能。函數
(圖-2:主要數據風險)
數據誤用是因爲非故意的、過失性動做致使的,防止誤用通常指防止數據被不經意間錯誤使用。應對數據誤用的風險,防止數據誤用,核心的一點,就是了解數據,可以回答這些問題:我有什麼數據,這些數據在哪裏,這些數據是怎麼來的、又被如何使用,等一系列問題。
1. MaxCompute 提供基礎元數據信息
MaxCompute 能夠幫助用戶很好的回答這些問題。 MaxCompute 平臺構建了統一的元數據管理,基於統一元數據和完備的平臺日誌,向用戶提供元數據和相關日誌數據。 用戶能夠基於 MaxCompute 的 Information Schema,構建本身的數據管理應用。
2. 使用數據地圖做爲數據管理工具
大多數用戶更但願經過現有的數據管理應用或服務,來了解本身的數據:「DataWorks-數據地圖」就是這樣的應用。 數據總覽、數據明細等信息能幫助用戶瞭解本身有哪些數據以及數據的明細信息;產出和使用信息、血緣信息,則能幫助用戶瞭解數據的前因後果,幫助用戶正確、合理的使用數據。 使正確的數據,被正確的使用在正確的場景下。
(圖-3:使用數據地圖瞭解數據)
數據濫用指的是對數據的使用超出了其預先約定的場景或目的,數據濫用通常是靠故意的、帶有目的性的動做完成的。而應對數據濫用,最主要的應對是對數據使用作最小化受權,嚴格限制數據的被訪問、使用的範圍。權限管理的最佳實踐,推薦圖-5中的4大過程:
• 數據分級管理:基於 MaxCompute 的 LabelSecurity 對數據作分類分級管理。
• 受權審批流程:基於 MaxCompute 的 列級別權限管控能力, 對數據的訪問使用需求,作最小化受權。
• 按期審計:對權限的申請、審批、使用狀況進行分析,作到事前有審批,過後有審計。
• 及時清理:及時清理過時權限,減小數據風險。
能夠依託 MaxCompute 的細粒度權限體系,使用 Dataworks 等白屏化工具,來實現最小化受權的最佳實踐,應對數據濫用的風險。
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 的支持;
• 加強對應用端的權限管理能力。
(圖-4:MaxCompute 細粒度權限體系)
(橙色高亮字體爲這次細粒度權限能力發佈)
2.使用安全中心進行白屏化權限管理
MaxCompute 的細粒度權限體系提供了的實現最小化受權的平臺能力,結合一些白屏化工具,如「DataWorks-安全中心」,則能夠提供更好的用戶體驗,讓用戶更方便的實現權限管理。
(圖-5:使用安全中心作白屏化權限管理)
安全中心提供便捷的權限管控功能和可視化的申請、審批流程,也能夠進行權限的審計和管理:
• 權限自助申請:選擇所需權限的數據表/字段,在線上快速發起申請。
• 權限審計及交還:管理員能夠查看數據權限的對應人員,進行審計管理,用戶也能夠主動交還再也不須要的權限。
• 權限審批管理:在線審批受權模式,提供可視化、流程化的管理受權機制,並能夠對審批流程進行過後追溯。
1.數據生命週期
(圖-6:數據生命週期)
數據泄露可能發生在數據生命週期的多個階段,如數據傳輸、數據存儲、數據處理、數據交換等階段。所以,咱們將結合數據生命週期的不一樣階段來介紹應對數據泄露的最佳實踐。
首先,數據從不一樣的渠道被採集,通過各種傳輸通道,進入大數據平臺。 在大數據平臺中,通過計算後落盤存儲;數據也會經過數據分享機制,在不一樣的租戶、業務之間流轉;通過必定週期後,一些數據也會被刪除銷燬。通過處理後的數據,則會經過不一樣的傳輸通道,被其餘數據應用、或者用戶消費。 (如圖-7)。
(圖-7:大數據平臺中的數據生命週期)
2.(New) 應對數據存儲過程當中的數據泄露風險 - 使用數據加密(存儲加密)功能
咱們首先看一下如何應對數據存儲過程當中的數據泄露風險:如磁盤數據被直接訪問,磁盤被獲取,等風險。應對此類狀況的措施,是對磁盤數據進行加密,這樣即便數據被惡意獲取,加密後的數據也沒法被解讀使用。
這次安全能力升級中, MaxCompute 發佈了存儲加密功能,支持用戶數據的落盤加密:
• MaxCompute接入祕鑰管理系統KMS以保障祕鑰的安全性,支持服務祕鑰和用戶自選祕鑰(BYOK)。
• 用戶能夠在建立MaxCompute項目時,配置選擇打開存儲加密功能(存量用戶能夠經過工單申請開通)。
• 支持加密算法:AES256,國密算法,等。
• .數據加密後對用戶使用保持透明,各類類型的任務不需額外改變。
3.應對數據數據處理過程當中的數據泄露風險 - MaxCompute 安全隔離能力
在數據處理過程當中,應對數據泄露的風險則主要在於大數據平臺的安全隔離能力。
MaxCompute 提供獨立的隔離環境用於執行數據處理應用,能夠支持完整的UDF種類,支持 Java和Python UDF, 還支持執行如Spark、Flink、Tensorflow 等開源三方計算引擎,提供了多元化的數據處理能力。
(圖-8:MaxCompute 安全隔離能力)
4.應對數據交換(共享)過程當中的數據泄露風險 - MaxCompute數據隔離與權限體系
在數據交換、或者說數據共享過程當中,則須要完善的數據隔離能力與權限管理體系來保障數據安全、防範數據泄露風險。MaxCompute 提供不一樣層級和維度上的數據隔離與權限管理機制,以支持多層次的數據保護和數據共享場景。
• 多租戶的數據安全隔離:MaxCompute 支持多租戶的使用場景,針對不一樣的用戶數據進行數據存儲隔離,用戶數據被離散存儲在分佈式文件系統中,知足多用戶協同、共享、和安全的須要,作到真正的多租戶資源隔離。
• 租戶內的業務(Project)數據隔離與共享:同一租戶下,不一樣業務(Project)之間的數據隔離、以及必定程度上的數據共享是很是常見的場景。基於ProjectProtection 保護機制能夠實現 Project之間的數據隔離與保護,二Package則能讓用戶更方便同時也更安全的實現跨Project的數據和資源分享。如前文「MaxCompute 細粒度權限體系提供精細化的權限管理能力」介紹,這次安全能力升級增長了對Package的數據和資源作細粒度的權限管理,加強了Package的數據共享和保護能力。
• (New) 應用端數據訪問控制:經過對訪問MaxCompute的的應用增長簽名機制,加強了對應用端訪問控制的管理能力。 例如,只容許特定的應用能夠進行受權語句的操做,以免用戶經過接口或不合規的應用進行非法數據受權操做。
(圖-9:MaxCompute 數據隔離能力)
5.(New) 數據生命週期中的敏感數據保護
應對數據泄露風險中的一個重要主題是敏感數據保護,前文所述在存儲、處理、和交換過程當中的風險應對實踐,對敏感數據保護一樣適用。 此外,還有一些針對敏感數據保護這一特定場景的最佳實踐:
• 數據分類分級:使用 MaxCompute 的 LabelSecurity 功能,對數據作安全性的分類分級,對不一樣類別不一樣安全等級的數據訪問和使用,進行精細化的權限管理。
• (New) 數據脫敏:基於安全行業的脫敏實現或應用,結合 MaxCompute 的平臺 UDF 能力,實現不一樣客戶端數據輸出時的敏感數據脫敏。脫敏實現也能夠與數據分類分級結合使用,對不一樣分類分級的數據作不一樣的脫敏實現。
(圖-10:敏感數據保護)
(New)用數據保護傘做爲敏感數據保護工具
數據保護傘,是基於 MaxCompute 平臺的數據分類分級能力和接入脫敏應用能力、構建的敏感數據保護工具。用戶可使用數據保護傘對敏感數據進行標識,選擇脫敏算法,在數據屏顯輸出時進行脫敏。
更多產品說明和使用介紹,詳見《數據保護傘》用戶文檔。
(圖-11:敏感數據保護工具 - 數據保護傘)
除了惡意的數據泄露、數據濫用等風險,數據開發過程當中的各類誤操做,偶發的設備或機房故障,甚或是罕見的災害意外狀況,都能形成數據丟失的後果。 應對數據丟失風險的最佳實踐,主要有備份恢復,以及容災能力。
1.(New) MaxCompute 備份與恢復
數據開發過程當中,避免不了會有誤操做刪除數據(如Drop/Truncate Table)後須要恢復,或使用「insert into」、「insertoverwrite」語法執行後發現數據有問題須要恢復以前版本。
MaxCompute 近期發佈了持續的備份與恢復能力,系統會自動備份數據的歷史版本(例如被刪除或修改前的數據)並保留必定時間,您能夠對保留週期內的數據進行快速恢復,避免因誤操做丟失數據。
(圖-12:MaxCompute 持續備份與恢復能力)
2.(New) MaxCompute 異地容災
MaxCompute 的異地容災能力,更好的提供了在機房故障或意外災害等極端場景下的數據安全保障。
在爲 MaxCompute 項目指定備份位置到備份集羣后,MaxCompute 自動實現主集羣與備份集羣的數據複製,達到主集羣與被集羣數據的一致,實現異地數據容災。當發生故障,MaxCompute 項目從主集羣切換到備份集羣后,使用備份集羣的計算資源訪問備份集羣的數據,完成服務的切換和恢復。
(圖-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)等事件的多種操做行爲進行審計,詳細功能說明和使用介紹,詳見《審計日誌》用戶文檔。
(圖-14:MaxCompute 審計日誌)
2.使用 DataWorks 中的審計工具
用戶也可使用 Dataworks 的已有產品,進行數據安全的風控和審計:
• 在前文中介紹的安全中心,能夠提供權限的審計。
• 數據保護傘也提供了風控和審計能力,如圖-15。
(圖-15:使用數據保護傘作風控和審計)
小結的同時呼應開篇,咱們再次來看企業級大數據平臺三個層次的數據安全保障體系。 此次咱們把 MaxCompute 的安全能力按數據生命週期的6個階段來從新組織,如圖-16。幫助你們更好理解,在不一樣的數據生命階段,應該採用哪些實踐來實施安全保障。圖-16中的黃色高亮部分,則標識了這次 MaxCompute 安全能力升級中的新功能。
(圖-16:基於大數據平臺構建數據什麼週期的安全保障)
做爲 SaaS 模式下的雲數據倉庫,MaxCompute 具有領先的安全能力,也經過了國際、歐洲、國內的多項安全合規認證,如國際主流認證ISO系列、SOC1/2/三、PCI,歐洲主流認證C5,國內主流認證安全等級保護2.0,等。 阿里雲總體的安全合規認證,詳見《阿里雲信任中心-合規認證》頁面。 歡迎你們使用 MaxCompute,構建企業級的大數據安全。