石秀金,張夢娜
(東華大學 計算機科學與技術學院,上海201620)
隨著“互聯網+醫療”的快速發展,人們可以通過移動終端便捷獲取各類醫療相關資源,網上掛號、在線問診等功能讓人們足不出戶便可享受豐富的醫療資源。2018年9月,國家衛健委發布了《國家健康醫療大數據標準、安全和服務管理辦法(試行)》[1],對于醫療大數據的開放共享機制提出了明確的要求。近年來,在醫療數據的產生端和管理端,醫療大數據的快速增長和共享過程中,醫療大數據安全問題如數據的泄露、設備的攻擊等時有發生,給患者隱私造成了很大的隱患[2]。傳統的仿問控制模型,通常以靜態的訪問控制策略授予訪問權限,已經難以適應于醫療大數據的安全性需求[3]。
隨著醫療大數據共享的普遍化,人為因素占據著安全問題的重要部分,支持動態連續的訪問控制技術越來越受重視。作為新一代訪問控制模型UCON(Usage Control)模型,以模型族UCONABC囊括了傳統的訪問控制模型功能,并且借助獨有的“義務”、“條件”組件為訪問控制模型增添了“連續性”和“可變性”特征[4],將更好地適應于云計算大數據環境下的安全性需求。但UCON的本質是基于主客體屬性匹配外,加“義務”執行和“條件”滿足來進行訪問權限的控制,易出現兩種極端情況:一是過度授權,給主體開放職責以外的資源訪問權限,安全隱患增多;二是授權不足,當訪問策略過于嚴苛時,會影響主體正常的與職責相關的訪問請求執行,使得工作效率降低[5]。針對上述情況,引入零信任中最小權限的設定,外加信任評分引擎,綜合決定訪問權限授予的思想[6],將信任值作為主體的重要屬性,全程參與訪問控制決策過程,動態合理地調控訪問權限的授權。因此,結合醫療大數據訪問控制的安全性需求,將零信任思想與UCON模型相結合,設計更加適用于醫療大數據共享的訪問控制模型和策略。
傳統的訪問控制模型主要由3個基本元素組成,即主體、客體、權限[7]。對于醫療大數據來說,主體可以劃分成生產主體和消費主體。生產主體指的是醫療數據的產生機構,是該數據的所有者,通常醫療數據的共享需要得到生產主體的許可。消費主體是對各類醫療資源發起訪問請求的主體,生產主體可以同時是消費主體。隨著醫療大數據的共享需求的日益增長,醫療機構除本機構內部的正常訪問需求,機構外的消費主體訪問需求變得更為廣泛。因此,在控制權限的過度授予和授權不足2種極端情況發生中,需要滿足醫療大數據的適當性共享。
“互聯網+醫療”的不斷發展,醫療數據服務逐漸從“醫療信息化”向“醫聯體”、“醫共體”方向擴展。醫療大數據的共享為這一過程提供了重要的支撐。大數據背景下,數據共享需求不斷加深,醫療大數據資源既需要充分的共享,同時也需要進行強有力的保護。因此,通過有效的醫療大數據訪問控制,保障數據安全成為現實的需要。從數據的保密性來看,醫療大數據可以劃分為“公開、有條件共享、不予共享”3類[1]。此時訪問控制的作用便是有效執行對“有條件共享”資源的安全性保障。從UCONABC模型族提供的功能來看,面向醫療大數據的授權訪問更適宜采用預先決策、預先執行義務以及預先滿足條件的授權方式,以及需滿足屬性值的動態變化,以實現動態連續的訪問控制。
傳統的醫療數據的有條件共享,通常位于醫療機構內部,采用基于角色的訪問控制方式[8]。此方式中的授權行為是靜態的,即主體擁有對于某些資源的訪問權限后,在未出現安全事故的情況下,通常不做改變,這給醫療數據埋下了安全隱患。對于同時存在醫療機構內外的數據共享情況,傳統的訪問控制方法更是無法預判在已有的訪問策略下,允許的訪問請求會造成多大的數據安全威脅,故支持訪問主體屬性可變,且動態連續的訪問控制在醫療大數據的共享需求中顯得格外重要。
由上述分析可知,面向醫療大數據的訪問控制模型需要具備以下特性:
(1)支持醫療大數據訪問主體的屬性可變。當訪問主體的歷史訪問行為中,存在惡意行為或者訪問主體本次的訪問請求風險較大時,模型需支持訪問主體標識的改變以及信任值的改變,為后續訪問行為的信任評估提供參考。
(2)支持動態且連續的訪問控制。對于訪問主體提出的訪問請求,進行連續的審核,根據信任值的變化,實現連續可變的權限授予。
(3)支持醫療大數據的跨域共享。允許醫療機構外的組織在滿足訪問控制條件下,訪問該機構醫療數據,以進行遠程醫療、病癥研究等工作。
使用控制模型(Usage Control,UCON)由Park和Sandhu通過整合傳統訪問控制、數字權限管理和信任管理而提出的一個通用模型,被稱為下一代訪問控制模型[9]。模型總共由6個元素組成,3個基本元素分別是主體、客體和權限;3個拓展元素分別為授權、義務和條件[10]。UCON模型整體結構如圖1所示。

圖1 UCON模型Fig.1 Usage control model
相較于傳統的訪問控制模型,如自主訪問控制模型(Discretionary Access Control,DAC)、強制訪問控制模型(Mandatory Access Control,MAC)以及基于角色的訪問控制模型(Role-Based Access Control,RBAC)等,UCON具有連續性和屬性可變性兩大特性。其中,連續性可通過模型中拓展元素的pre決策和ongoing決策方式(其中pre代表只考慮預定義的決策因素,ongoing代表訪問過程中保持訪問決策)實現;屬性可變性體現在拓展元素執行前后屬性的變化狀態決定。由連續性和屬性可變性的滿足情況,可將UCON發展成為一個模型族,被稱為UCONABC模型族[4]。傳統的訪問控制模型均可由模型族中的UCONpreA0表示,即采用預先授權決策模式,并且不支持屬性可變。故當面臨具有分布性、社會性特征的云計算環境時,傳統的訪問控制便無法提供動態連續的訪問控制服務,而基于UCON模型研究的訪問控制技術則更適用于該訪問控制需求。
2.2.1 基于零信任的UCON模型改進
近年來,隨著互聯網的發展,網絡安全事件頻頻發生,原有的概念“數據中心內部的系統和網絡流量是可信的”這一假設是不可取的。零信任網絡的概念建立在以下5個基本假定之上[11]:
(1)網絡環境一直存在著各類威脅因素;
(2)網絡環境中的威脅不僅僅來自于外部,甚至內部威脅造成的危害更大;
(3)傳統基于IP地址的位置信息條件,不足以認定該訪問請求的安全;
(4)傳統的聚焦于訪問主體身份的認證,不足以認定該訪問請求安全,即訪問主體所使用的設備、所處的真實地理位置等也需作為認證條件;
(5)訪問控制策略的評判依據,需根據實際應用場景,詳細列舉影響因子,設定各影響因子比重,實現個性化、動態化策略制定。
基于零信任的UCON模型ZT-UCON模型如圖2所示。ZT-UCON在原有的UCON模型基礎上添加了信任評估組件,將原有主體細分為生產主體和消費主題;將原有只和系統有關的條件,拓展為主體條件和全局條件。其中全局條件對應于原有UCON模型中的條件。

圖2 ZT-UCON模型Fig.2 ZT-UCON model
2.2.2 面向醫療大數據的ZT-UCON訪問控制決策
ZT-UCON訪問控制決策在連續性方面有預先決策和持續決策。在授權執行訪問請求時,屬性可變性方面有:屬性不可變、執行前屬性可變,執行中屬性可變,執行后屬性可變。
下面從ZT-UCON模型的各個組件考慮面向醫療大數據的訪問控制決策。
定義:
(1)主體S分為生產主體SP:醫院A內部數據擁有者、病患等;消費主體SC:醫院A內外部醫護人員、病患、普通大眾等;
(2)主體屬性ATT(S):常規屬性包括醫生的職責、病患所屬病種等。可變屬性包括主體的信任值。采用執行后可改變方式;
(3)客體O:各類醫療大數據,其中包括病患個人信息、病患診療記錄、醫學研究數據等;
(4)客體屬性ATT(O):常規屬性包括數據病種類別、所屬的科室、保密級別等。通常屬性不可變;
(5)權限P:主體S對客體O的查看、變更和下載操作。如主治醫生對病人的病歷進行查詢、添加診療記錄操作等;
(6)授權A:授權規則中劃分的權限有兩部分來源,一是醫療系統管理員預先制訂的訪問規則,滿足最小權限要求;二是在主體S因工作需要主動申請并被管理員批準的權限。采用預先決策方式,不滿足授權規則的訪問請求,會造成主體當前訪問請求信任值的改變,故綜合采用pre A1;
(7)義務B:消費主體SC對各類醫療大數據的訪問需完成義務“經由生產主體SP許可”。采用預先決策方式,但不引起主客體屬性變化,故綜合采用pre B0;
(8)條件C包括主體條件CS:訪問請求時主體的訪問地址要求、設備安全要求、訪問數據請求量要求等,采用持續決策方式,并且會影響主體當前訪問信任值的變化,綜合采用on CS1;全局條件CA:包括系統訪問時間、訪問并發量等,采用持續決策方式,但不影響主客體屬性變化,故綜合采用on CA0;
(9)信任評估組件ET:根據信任評估組件對當前主體訪問請求行為進行評估,參與訪問控制決策過程,評估結果會更新主客體信任值屬性,綜合采用on ET3。
由上述分析可得,面向醫療大數據的訪問控制決策宜采用ZT-UCONpreA1preB0onCS1onCA0onET3。 該模型由5個 子 模 型 組 成,分 別 為ZT-UCONpreA1、ZT-UCONpreB0、ZT-UCONonCS1、ZT-UCONonCA0以及ZT-UCONonET3,具體可形式化描述為:
(1)ZT-UCONpreA1
-S、O、PATT(S)、ATT(O)、preA分別為主體、客體、權限、主體屬性、客體屬性,以及預先授權決策;

可根據實際預授權決策結果更新主客體屬性。
(2)ZT-UCONpreB0
-S、O、P、ATT(S)、ATT(O)同ZT-UCONpreA1;
-OBS、OBO、OB分別是義務關聯主體、義務關聯客體和義務行為;
-preB為預先義務決策;
-為預先義務列表;
-getPreOBL:S×O×P→2preOBL,獲取訪問請求所需完成的義務列表函數;

-preB(s,o,p)=∧(obsi,oboi,obi)∈getPreOBL(s,o,p)preFul filled(obsi,oboi,obi),當getPreOBL(s,o,p)=?時,即當前訪問請求沒有對應的義務需要完成,
preB(s,o,p)=true;
-allowed(s,o,p)?preB(s,o,p)。
(3)ZT-UCONonCS1
-S、O、P、ATT(S)、ATT(O)同ZT-UCONpreA1;
-T為時間或事件設置,如T={always};
-CSS、CSO、CS分別是條件關聯主體、條件關聯客體和主體條件;
-on CS為持續主體條件決策;
-為主體條件列表;
-getOn CONS:S×O×P→2onCONS,獲取訪問請求主體所需滿足的條件列表函數;

-onChecked(cSsi,cSoi,cS i,ti),當getOn CONS(s,o,p)=?時,即當前訪問請求沒有對應的主體條件需要滿足,on CS(s,o,p)=true;

-preUpdate(ATT(s)),preUpdate(ATT(o)),可根據實際持續條件決策結果更新主客體屬性。
(4)ZT-UCONonCA0
-S、O、P、ATT(S)、ATT(O)同ZT-UCONpreA1;
-T為時間或事件設置,如T={always};
-on CA為持續全局條件決策;
-on CONA為全局條件列表;
-getOn CONA:S×O×P→2onCONA,獲取訪問請求所需滿足的全局條件列表函數;

(5)ZT-UCONonET3
-S、O、P、ATT(S)、ATT(O)、onET分 別 為 主體、客體、權限、主體屬性、客體屬性、持續信任評估決策;

-postUpdate(ATT(s)),postUpdate(ATT(o)),
可根據實際持續評估結果更新主客體屬性。

本節以具體案例,說明基于ZT-UCON的訪問請求控制流程。
案例描述:病人P之前的診療資料存在醫院H1,因工作地點原因,選擇到醫院H2進行術后檢查,醫院H2的醫生D發起病人P的診療資料訪問請求。
假設條件:醫院H1與醫院H2存在資源共享和合作關系。
案例分析:
情況1醫生D所負責的科室和病種與病人P相關。當醫生D申請跨醫療機構訪問病人P的診療信息時,需對該醫生進行信任評估,計算醫生當前訪問行為信任值(信任值的降低值較小或無損耗)和訪問歷史行為信任值綜合計算,并更新其信任值額度。根據評估結果和訪問策略決定是否授予權限。
情況2醫生D所負責的科室和病種與病人P無關,當醫生D申請跨醫療機構訪問病人P的診療信息時,對該醫生進行信任評估,計算醫生當前訪問行為信任值(信任值的降低值較大)和訪問歷史行為信任值綜合計算,并更新其信任值。該醫生將通過損耗其信任值額度獲取訪問權限,會導致其額度減少到零,對該醫生后續訪問操作進行限制。
訪問控制流程圖如圖3所示,具體描述如下:
(1)用 戶 認 證 階 段:醫 生D使 用 其 賬 號id(D)登錄醫院系統。如,EMR系統或PACS系統。將病人P的就診id(P)輸入至系統中,系統認證id(D)和id(P)是否存在,并對兩者屬性進行匹配,匹配成功則開放id(D)對于id(P)的最小權限;
(2)信任評估階段:id(D)發起對id(P)的電子病歷訪問申請,根據id(D)和id(P)之間的屬性相關性,對醫生D的當前訪問行為信任值進行計算并將結果保存到歷史行為中。若兩者屬性相匹配或存在關聯關系,則信任值不發生損耗或有較小損耗值;若兩者相關性較小或無關,則表示醫生D存在異常訪問行為,信任值將有很大的損耗。根據三段滑動窗口分別計算出醫生D的歷史行為信任值,最后得出綜合信任值,參與訪問控制決策;
(3)訪問策略決策階段:醫生D針對醫院系統H1或H2發出關于病人P的相關診療數據F時,還需執行一定的義務和滿足系統設定的一些條件。如敏感數據訪問需要得到病人P的署名,醫生D請求發出時間、地點符合系統要求等,并且義務和條件可根據具體應用場景,確定是否在整個訪問控制階段持續監測,一旦不滿足上述設定,則立即終止訪問行為。
結合ZT-UCON模型的訪問控制決策,定義和實際應用訪問控制流程,將從以下幾個方面對ZTUCON的優缺點進行分析。
(1)安全性分析。在傳統的訪問控制下,通常能保證醫療機構內部數據的安全訪問,但隨著系統數據類別增多、數據來源廣泛,系統數據量快速增長,系統的安全訪問需求以及數據共享需求得不到滿足。ZT-UCON模型通過將主體類別劃分為生產主體和消費主體,以及將條件類別劃分為主體條件和全局條件,提供了更細粒度的訪問控制決策,滿足醫療大數據背景下的安全性需求。
(2)可用性分析。通常在訪問控制中,用戶的權限完全由管理員手動分配,已造成權限過度授予問題。在ZT-UCON模型中,管理員只需分配初始最小權限,以滿足主體日常工作需求,后續權限的添加由主體根據工作需要提出申請。當主體訪問行為出現異常情況時(如主體在一段時間內多次訪問與其職責無關的數據),ZT-UCON的信任評估模塊將調整其信任值。隨著信任值額度的快速消耗,將限制該主體惡意行為。
(3)適用性分析。本文主要解決的是醫療大數據的共享型需求,以及對于醫療大數據主體訪問權限過度授權問題,所以對于有數據共享型需求以及過度授權防控需求的領域來說,ZT-UCON可從授權、條件、義務決策過程方面進行按需調整,故同樣適用于上述領域。
基于零信任思想和UCON模型的連續性決策以及屬性可變特征所提出的ZT-UCON模型,將信任評估模塊添加到訪問控制決策中,并對主體行為進行持續性評估,動態更新主體信任值屬性,更好地滿足了醫療大數據所面臨的動態多變的云環境安全訪問控制需求。后續將進一步深入研究信任評估過程,在滿足持續評估功能的基礎上,進一步提高信任值評估過程中的計算效率。