圖1云存儲(chǔ)系統(tǒng)結(jié)構(gòu)
(1)存儲(chǔ)層是云存儲(chǔ)最基礎(chǔ)的部分,它由各種各樣的存儲(chǔ)設(shè)備和網(wǎng)絡(luò)設(shè)備組成。同時(shí),還有一個(gè)存儲(chǔ)管理系統(tǒng),負(fù)責(zé)對(duì)硬件設(shè)備的集中管理、狀態(tài)監(jiān)控以及維護(hù)升級(jí)等。
(2)基礎(chǔ)管理層是云存儲(chǔ)最為核心的部分,也是最復(fù)雜的部分?;A(chǔ)管理層大量采用了集群管理技術(shù)和分布式存儲(chǔ)系統(tǒng)的成熟方法,在實(shí)現(xiàn)良好的可擴(kuò)展性的同時(shí),也滿(mǎn)足了可用性及性能的需求,它還負(fù)責(zé)數(shù)據(jù)加密、備份及容災(zāi)等任務(wù)。
(3)應(yīng)用接口層是利用云存儲(chǔ)資源進(jìn)行應(yīng)用開(kāi)發(fā)的關(guān)鍵部分。云存儲(chǔ)供應(yīng)商通過(guò)應(yīng)用接口層對(duì)客戶(hù)提供統(tǒng)一的協(xié)議和編程接口,以進(jìn)行應(yīng)用程序的開(kāi)發(fā)。通常這種協(xié)議都是基于網(wǎng)絡(luò)的跨平臺(tái)協(xié)議。
(4)訪(fǎng)問(wèn)層是基于云存儲(chǔ)開(kāi)發(fā)的應(yīng)用程序的入口。任何一個(gè)授權(quán)用戶(hù)都可以通過(guò)標(biāo)準(zhǔn)的公用應(yīng)用接口來(lái)登錄云存儲(chǔ)系統(tǒng),共享云存儲(chǔ)所提供的服務(wù)。
1.2云存儲(chǔ)系統(tǒng)安全分析
靈活性、易于使用的服務(wù)和易于共享基礎(chǔ)設(shè)施是云計(jì)算的優(yōu)勢(shì),然而數(shù)據(jù)通過(guò)互聯(lián)網(wǎng)在各層之間進(jìn)行傳輸并存儲(chǔ),用戶(hù)對(duì)于敏感數(shù)據(jù)存取時(shí),無(wú)法對(duì)風(fēng)險(xiǎn)進(jìn)行直接控制??梢哉f(shuō),云存儲(chǔ)自身的特點(diǎn)決定了它在現(xiàn)有的技術(shù)方面存在一些安全問(wèn)題,具體表現(xiàn)如下。
(1)傳統(tǒng)的安全域劃分無(wú)效。由于云存儲(chǔ)中服務(wù)必須是可伸縮的,對(duì)外部來(lái)講并不是透明的,因此云存儲(chǔ)中無(wú)法清晰地定義安全邊界及保護(hù)設(shè)備,為具體保護(hù)措施的實(shí)施增加了一定的難度。
(2)云存儲(chǔ)是通過(guò)網(wǎng)絡(luò)來(lái)傳輸數(shù)據(jù)的,其中包括網(wǎng)絡(luò)中的惡意攻擊等造成的服務(wù)中斷、數(shù)據(jù)破壞、信息被竊取和篡改等,對(duì)實(shí)現(xiàn)數(shù)據(jù)的安全存儲(chǔ)造成一定的影響,數(shù)據(jù)的安全通信、訪(fǎng)問(wèn)認(rèn)證與保密性也是有待解決的問(wèn)題。
(3)數(shù)據(jù)存儲(chǔ)的安全性防護(hù)包括最終存儲(chǔ)數(shù)據(jù)的存放位置、數(shù)據(jù)完整性、數(shù)據(jù)間分散存放等。此外,即使數(shù)據(jù)采用加密技術(shù),也只是在網(wǎng)絡(luò)上加密傳輸,數(shù)據(jù)在處理和存儲(chǔ)時(shí)也需要保護(hù)。
(4)數(shù)據(jù)的可靠性、可用性。數(shù)據(jù)在存儲(chǔ)系統(tǒng)的容錯(cuò)性、可恢復(fù)性和完整性面臨一些問(wèn)題,如何避免在災(zāi)難(停電、地震、水災(zāi)、火災(zāi)等)發(fā)生時(shí)帶來(lái)的服務(wù)中斷乃至數(shù)據(jù)介質(zhì)被直接破壞等問(wèn)題。
(5)如何實(shí)現(xiàn)數(shù)據(jù)之間的邏輯卷管理、存儲(chǔ)虛擬化管理和多鏈路冗余管理將會(huì)是一個(gè)巨大的難題,也將是整個(gè)云存儲(chǔ)架構(gòu)的性能瓶頸,而且還會(huì)帶來(lái)后期容量和性能擴(kuò)展難等一系列問(wèn)題。
由此可見(jiàn),數(shù)據(jù)的安全性問(wèn)題貫穿于整個(gè)云架構(gòu)的各個(gè)層次,單獨(dú)討論云存儲(chǔ)在某一層中的安全性是毫無(wú)意義的??傮w而言,對(duì)該方面的研究存在兩種思路:
①借鑒信息安全的C.I.A特性(機(jī)密性、完整性、可用性),為某一特定應(yīng)用提出專(zhuān)門(mén)的實(shí)現(xiàn)思路(如增強(qiáng)文件服務(wù)器的安全性、客戶(hù)端加密文件系統(tǒng)、 對(duì)磁盤(pán)磁帶全盤(pán)靜態(tài)加密、客戶(hù)端直接訪(fǎng)問(wèn)磁盤(pán)的認(rèn)證機(jī)制等),即將適用于信息安全的措施(如加密技術(shù)、完整性技術(shù))移植到存儲(chǔ)系統(tǒng)中;
②從存儲(chǔ)系統(tǒng)的體系結(jié)構(gòu)入手,尋找安全高效的網(wǎng)絡(luò)存儲(chǔ)與安全管理模式。為此,本文設(shè)計(jì)了一種面向分散式分片存儲(chǔ)管理來(lái)解決云存儲(chǔ)和應(yīng)用過(guò)程中的數(shù)據(jù)安全性問(wèn)題。
二 、云存儲(chǔ)安全架構(gòu)設(shè)計(jì)
根據(jù)云存儲(chǔ)中數(shù)據(jù)的安全性分析,從數(shù)據(jù)傳輸?shù)酱鎯?chǔ),都需要建立相應(yīng)的保護(hù)措施進(jìn)行層與層之間的防范。按照云存儲(chǔ)的層次結(jié)構(gòu),通過(guò)不同的保護(hù)策略逐層 對(duì)需要存儲(chǔ)的數(shù)據(jù)進(jìn)行保護(hù),從而實(shí)現(xiàn)從數(shù)據(jù)傳輸?shù)酱鎯?chǔ)位置的全面防護(hù)。該安全架構(gòu)采用信息擴(kuò)散法、分散式存儲(chǔ)管理、數(shù)據(jù)自舉恢復(fù)等技術(shù),分層實(shí)現(xiàn)存儲(chǔ)數(shù)據(jù) 在云存儲(chǔ)中完成應(yīng)用系統(tǒng)的數(shù)據(jù)安全存儲(chǔ)管理和傳輸,其系統(tǒng)總體安全框架結(jié)構(gòu)如圖2所示。
圖2面向分散式存儲(chǔ)的云存儲(chǔ)安全架構(gòu)
2.1訪(fǎng)問(wèn)層到應(yīng)用接口層的設(shè)計(jì)
通過(guò)訪(fǎng)問(wèn)控制與身份認(rèn)證,采用加密技術(shù)SSL對(duì)用戶(hù)存儲(chǔ)數(shù)據(jù)進(jìn)行保護(hù),使數(shù)據(jù)在網(wǎng)絡(luò)傳輸中得到較為安全的保障。用戶(hù)與云存儲(chǔ)服務(wù)器相互認(rèn)證,對(duì)雙方安全證書(shū)和身份進(jìn)行鑒別,成功后用戶(hù)代理通過(guò)安全API和云通信連接進(jìn)行數(shù)據(jù)存儲(chǔ)服務(wù)。
2.2基礎(chǔ)管理層設(shè)計(jì)
通過(guò)信息擴(kuò)散法,數(shù)據(jù)分片后在網(wǎng)絡(luò)傳輸和數(shù)據(jù)存儲(chǔ)時(shí)具有相對(duì)的保密性和安全性。在云存儲(chǔ)的基礎(chǔ)管理層中利用IDA思想,通過(guò)分片器把存儲(chǔ)信息分片, 使數(shù)據(jù)變成無(wú)法被其他非認(rèn)證系統(tǒng)所識(shí)別的數(shù)據(jù)片段。對(duì)于每一個(gè)單獨(dú)的數(shù)據(jù)片段來(lái)說(shuō),這些數(shù)據(jù)片段是不具有任何意義的,如果數(shù)據(jù)在網(wǎng)絡(luò)傳輸過(guò)程中被他人截 獲,被植入的木馬病毒掃描獲取或在存儲(chǔ)設(shè)備上被意外竊取,由于截取方只是獲得信息的部分?jǐn)?shù)據(jù)片段,截取的信息并不具有任何實(shí)際含義,這樣就能夠保證數(shù)據(jù)分 片后不會(huì)產(chǎn)生保密信息泄露或擴(kuò)散。此外,當(dāng)這些分片后的數(shù)據(jù)放入地理位置不同的存儲(chǔ)器中,即便被其他用戶(hù)誤操作提取時(shí),也能保證需要保護(hù)的信息不會(huì)被分析 出來(lái)。數(shù)據(jù)的分散式存儲(chǔ)機(jī)制也使存儲(chǔ)系統(tǒng)具備一定的容錯(cuò)、容災(zāi)能力,提高了信息的可用性。
分片器根據(jù)IDA算法將數(shù)據(jù)分片后,云存儲(chǔ)服務(wù)器將每個(gè)分片數(shù)據(jù)用一個(gè)固定不變的64位句柄對(duì)其進(jìn)行標(biāo)識(shí),這些句柄也是唯一的,讀取數(shù)據(jù)時(shí)根據(jù)存儲(chǔ) 服務(wù)器中虛擬視圖中句柄和字節(jié)范圍來(lái)進(jìn)行,在主服務(wù)器中建立一個(gè)數(shù)據(jù)列表,用來(lái)存儲(chǔ)系統(tǒng)中的元數(shù)據(jù),其中包括用戶(hù)存儲(chǔ)的文件名、對(duì)應(yīng)的句柄號(hào)和文件大小等 信息。
數(shù)據(jù)的存儲(chǔ)無(wú)論在內(nèi)容上還是在存儲(chǔ)設(shè)備中都是分散的,當(dāng)用戶(hù)需要對(duì)云存儲(chǔ)中的數(shù)據(jù)進(jìn)行訪(fǎng)問(wèn)或者操作時(shí),分散存儲(chǔ)管理器(DSM)需要把分散的數(shù)據(jù)整 合起來(lái),提供給用戶(hù)一個(gè)虛擬的視圖,這些分散數(shù)據(jù)對(duì)于用戶(hù)來(lái)說(shuō)是透明的。用戶(hù)可以根據(jù)提供的視圖,對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行管理。此外,DSM還支持對(duì)元數(shù)據(jù)的管 理,便于用戶(hù)對(duì)數(shù)據(jù)進(jìn)行創(chuàng)建、檢索和刪除等操作。
2.3存儲(chǔ)層設(shè)計(jì)
在存儲(chǔ)層設(shè)計(jì)中,為了實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)的安全策略,云存儲(chǔ)中需要滿(mǎn)足用戶(hù)存儲(chǔ)海量數(shù)據(jù)的需求,存儲(chǔ)系統(tǒng)規(guī)模及存儲(chǔ)容量都在不斷增長(zhǎng),與存儲(chǔ)相關(guān)的出錯(cuò)率 將越來(lái)越高。為了確保云存儲(chǔ)安全系統(tǒng)中數(shù)據(jù)存儲(chǔ)的高可用性和可靠性,系統(tǒng)存儲(chǔ)層中的設(shè)備都必須異地存放,并且互為冗余,這樣能夠提高設(shè)備容錯(cuò)能力和存儲(chǔ)利 用率。系統(tǒng)使用Reed-Solomon碼提供任意高錯(cuò)誤恢復(fù)技術(shù),保證系統(tǒng)在發(fā)現(xiàn)問(wèn)題后能夠被迅速檢測(cè)到。如果設(shè)備上的數(shù)據(jù)損壞、丟失,存儲(chǔ)系統(tǒng)中自動(dòng) 化檢測(cè)過(guò)程會(huì)發(fā)現(xiàn)這個(gè)問(wèn)題,通過(guò)檢查可用片重新計(jì)算數(shù)據(jù)片中所有的數(shù)據(jù),根據(jù)其他存儲(chǔ)設(shè)備中完好的數(shù)據(jù)恢復(fù)被破壞的數(shù)據(jù)。通過(guò)這樣的數(shù)據(jù)自舉恢復(fù),提高了 云存儲(chǔ)系統(tǒng)的平均無(wú)故障時(shí)間。
2.4面向分散式存儲(chǔ)的云存儲(chǔ)數(shù)據(jù)存取過(guò)程
面向分散式存儲(chǔ)的云存儲(chǔ)用戶(hù)進(jìn)行數(shù)據(jù)存取的過(guò)程如圖3所示,當(dāng)用戶(hù)(個(gè)人或企業(yè))存取數(shù)據(jù)時(shí),在客戶(hù)端通過(guò)系統(tǒng)安全認(rèn)證后將信息進(jìn)行SSL加密,傳 送到 Internet中,通過(guò)云存儲(chǔ)服務(wù)器管理,用分片器將數(shù)據(jù)分片,然后再把數(shù)據(jù)片傳給分散在各地物理位置不同的存儲(chǔ)介質(zhì)中去;當(dāng)用戶(hù)讀取數(shù)據(jù)或者查詢(xún)數(shù)據(jù) 時(shí),在云存儲(chǔ)服務(wù)器通過(guò)身份驗(yàn)證后,用戶(hù)通過(guò)分散存儲(chǔ)管理器提供的虛擬視圖,完成數(shù)據(jù)的檢索或者刪除等操作,此后分散存儲(chǔ)管理器再通過(guò)設(shè)備上的記錄表,對(duì) 存儲(chǔ)層中的存儲(chǔ)設(shè)備進(jìn)行相應(yīng)的操作,最后將操作結(jié)果返回給用戶(hù)。
圖3用戶(hù)DSM存取過(guò)程
DSM主要負(fù)責(zé)將數(shù)據(jù)轉(zhuǎn)發(fā)給分片器,記錄路徑并為用戶(hù)建立虛擬視圖,具體工作過(guò)程如下:
(1)接收用戶(hù)數(shù)據(jù)的DSM請(qǐng)求;
(2)轉(zhuǎn)發(fā)給分片器并記錄數(shù)據(jù)存取路徑,等待分片器返還數(shù)據(jù)狀態(tài)信息;
(3)創(chuàng)建用戶(hù)虛擬視圖表。
分片器根據(jù)IDA算法進(jìn)行數(shù)據(jù)分片,分片規(guī)則為每個(gè)數(shù)據(jù)片中包含的信息內(nèi)容不會(huì)被泄露,其具體工作過(guò)程如下:
(1)從分散存儲(chǔ)管理器中提取數(shù)據(jù);
(2)根據(jù)IDA算法進(jìn)行數(shù)據(jù)分片;
(3)將分片后的信息傳輸?shù)礁鞯氐拇鎯?chǔ)設(shè)備中;
(4)將存儲(chǔ)完成后的狀態(tài)信息(成功或者錯(cuò)誤)、存儲(chǔ)設(shè)備號(hào)、存儲(chǔ)位置等返回給分散存儲(chǔ)管理器。
存儲(chǔ)器主要實(shí)現(xiàn)數(shù)據(jù)最終存取,并帶有定期檢測(cè)數(shù)據(jù)、自動(dòng)發(fā)現(xiàn)存儲(chǔ)數(shù)據(jù)錯(cuò)誤功能,并根據(jù)其他互為冗余的存儲(chǔ)設(shè)備數(shù)據(jù)修復(fù)受損數(shù)據(jù),以提高信息的可用性,其工作過(guò)程如下:
(1)存儲(chǔ)數(shù)據(jù)后同時(shí)在其他存儲(chǔ)設(shè)備中寫(xiě)入校驗(yàn)碼;
(2)向分片器返回?cái)?shù)據(jù)存儲(chǔ)信息;
(3)定期自動(dòng)檢查數(shù)據(jù)的完整性。
三、系統(tǒng)分析與驗(yàn)證
用戶(hù)保存數(shù)據(jù)時(shí),系統(tǒng)首先在訪(fǎng)問(wèn)層實(shí)現(xiàn)用戶(hù)身份認(rèn)證、授權(quán)、防止非法訪(fǎng)問(wèn)和越權(quán)訪(fǎng)問(wèn),并將保存數(shù)據(jù)進(jìn)行加密,當(dāng)數(shù)據(jù)在訪(fǎng)問(wèn)層和應(yīng)用接口層被攔截時(shí),攔截者不會(huì)得到有效的數(shù)據(jù)信息。
數(shù)據(jù)在基礎(chǔ)管理層被分片后,每個(gè)信息中單獨(dú)的片段也是無(wú)效的,在數(shù)據(jù)從基礎(chǔ)管理層到存儲(chǔ)層傳輸?shù)倪^(guò)程中,假設(shè)此時(shí)數(shù)據(jù)被攔截(木馬病毒掃描獲取),截獲者得到的只是數(shù)據(jù)片段,無(wú)法對(duì)數(shù)據(jù)的有效性加以分析。
在數(shù)據(jù)最終存放的存儲(chǔ)層中,分片的數(shù)據(jù)也因?yàn)槠鋯为?dú)被獲取后,獲取者由于沒(méi)有完整的分片數(shù)據(jù)信息,并且即使得到所有數(shù)據(jù)分片,也因其沒(méi)有數(shù)據(jù)合成的方法,最終不能得到完整的數(shù)據(jù)。此外,當(dāng)數(shù)據(jù)被破壞時(shí),存儲(chǔ)層中互為冗余的數(shù)據(jù)也可將其恢復(fù),保證了數(shù)據(jù)的安全性和可用性。
可以看出,本系統(tǒng)根據(jù)云存儲(chǔ)的層次結(jié)構(gòu),通過(guò)相應(yīng)的保護(hù)策略逐層對(duì)數(shù)據(jù)進(jìn)行保護(hù),從數(shù)據(jù)傳輸?shù)酱鎯?chǔ),都建立了相應(yīng)的保護(hù)措施進(jìn)行云存儲(chǔ)層以及層與層 之間的防范,實(shí)現(xiàn)了數(shù)據(jù)的全面防護(hù),防止了需要保密的數(shù)據(jù)泄漏后造成不必要的損失。該方法在Windows環(huán)境下通過(guò)系統(tǒng)仿真加以了認(rèn)證。
總結(jié)
由于云計(jì)算的復(fù)雜性以及用戶(hù)的動(dòng)態(tài)性,云存儲(chǔ)主要存在數(shù)據(jù)間分開(kāi)存放、數(shù)據(jù)恢復(fù)、數(shù)據(jù)加密、數(shù)據(jù)完整性保護(hù)等問(wèn)題。本文提出的云存儲(chǔ)安全架構(gòu)對(duì)于數(shù) 據(jù)保密性要求高、基于內(nèi)容存儲(chǔ)的用戶(hù),在安全性、可靠性和可用性方面具有較大的優(yōu)勢(shì),具備一定的容災(zāi)、數(shù)據(jù)恢復(fù)及容錯(cuò)能力。然而,這些需要通過(guò)空間和時(shí)間 上的代價(jià)來(lái)滿(mǎn)足安全性需求。
因此,根據(jù)本文提出的安全架構(gòu)特點(diǎn),通過(guò)增強(qiáng)動(dòng)態(tài)分析明確最佳的性能所在,優(yōu)化數(shù)據(jù)存取路徑,提高數(shù)據(jù)整體讀取性能,以實(shí)現(xiàn)更具有存儲(chǔ)空間效率的存儲(chǔ)策略,增強(qiáng)云存儲(chǔ)服務(wù)效率等,將是我們下一步要研究的重點(diǎn)問(wèn)題。