introduction
簡介在我參與微軟基礎設施和企業部署的這麼多年裡,微軟的檔案加密系統(efs)是迄今我所見的安全效能最強大,卻也是最未被充分利用的技術之一。我很少見它在企業裡甚至是中等規模的環境中的使用,它已經被孤立---無論個人還是團隊都在靠自己的努力去實現基於efs的安全控制。這並不是完全的不公平。
efs易於個人設定和自由使用,但是面對大規模的部署時,需要對認證,恢復日程管理,備份,儲存以及實現訪問模型等方面進行詳細的計畫。這種
efs的不當擴充套件的結果後果可能非常嚴重:你可能會丟失你的資料!為了能夠更加明確的說明這種情況,假設在一次失敗的情況中,可能會出現由於設計不當的
efs控制,導致加密檔案系統會阻止檔案的解密,儘管你可能通過物理途徑去獲得。
efs最簡單的情形,是乙個基於
windows
作業系統的特色,它允許乙個使用者(管理者或是其他使用者)給乙個資料夾,或是單個檔案的內容加密。在資料夾層次加密是為了保證任何檔案新增到到加密資料夾都是自動加密的,這是
efs的典型應用。在本章中的使用的例子,是基於在某目錄結果中所建立的資料夾,當你確定選擇乙個單獨的檔案而且為之加密時,這個資料夾自己標記為加密。如上所述,當乙個資料夾被加密時,所有在該資料夾中建立的檔案都將被它們敬愛的所有者加密。給乙個資料夾加密非常簡單;你只需選擇該資料夾的高階屬性,然後選擇加密內容以便保護資料,如圖2.1
所示。
efs是一種基於使用者的加密控制。基本說來,它工作的方式是當乙個互用請求乙個檔案或資料夾加密時,為使用者生成乙個
efs認證,同時私有金鑰被儲存在該使用者的配置檔案中。公用金鑰和使用者建立的檔案一起儲存,只有這樣使用者才能能夠解密這些檔案。也正是因為如此,恢復**認證是乙個和不同使用者賬號聯絡的典型例子,同時,使用者的公用金鑰也嵌在這個檔案中。也正是如此,即使使用者丟失了用來恢復檔案的認證,而恢復**使用者,或者是更明確的相關私有金鑰的持有者,也能夠解密檔案。同樣的,恢復**公用金鑰是自動和加密檔案一起儲存的,你也可以告知其他使用者某個檔案的公用金鑰,也允許他們對檔案進行解密。者就使得乙個保密檔案可以在不同的使用者間共享。當乙個efs認證被你的
ca(證書管理機構)分配時,或是在某個域環境中由於是第一次efs
進行請求操作從而自動建立時,使用者的公用金鑰儲存在
ad中。對恢復**認證也是如此,事實上,對於在某個領域建立的
efs檔案中,公用金鑰是這樣被自動包含在其中:它從基於
efs檔案恢復群組政策設定的
ad中直接抽取出來。我將會在後面對此進行更多詳細描述。
我們利用一點時間來詳述一下加密過程。當出現多個使用者共享乙個加密檔案時,了解這些檔案工作的原理以及加密過程將會幫助你更好的去理解efs
在企業或是較小的
ad環境中時如何工作的。關於
efs認證也沒什麼神奇的。由
rsa演算法生成乙個私有公用金鑰組,
efs使用這個金鑰進行簡單的
x.509
認證。如圖
2.2
當為使用者建立這些認證時,採用rsa
演算法來生成公用私有金鑰並把其儲存在使用者認證中。只有公用金鑰儲存在
ad中。資料使用公用金鑰進行加密,用私有金鑰進行解密。這就說明了為什麼公用金鑰是共用的,這樣其他使用者就可以為你進行加密,而只有持有對應私有金鑰的使用者才能解密。這樣一旦資料被某些使用者用公用金鑰加密時,也不能對其解密。
在我與其講解關於加密的大多數人中,對rsa
的印象似乎都是對於某個加密檔案使用金鑰對真實的資料進行加密和解密。其實這種方法不僅僅用於
efs,它能應用到任何基於
rsa的加密過程中。其實乙個強隨機的用來加密的金鑰,在檔案加密之前已經生成。而這件事情,是基於預設高階加密標準(
aes)的密碼檢索本。
rsa演算法其實是對金鑰進行加密,而非資料本身。公共
rsa金鑰用來加密
aes金鑰,而後者才真正用來對資料進行加密。
《雷神的微軟平台安全寶典》簡介
在使用微軟基礎設施和企業部署這麼多年的過程中,微軟的檔案加密系統 eps 是我迄今為止見過的最安全但也是最未被充分應用的技術之一。在企業級或者中等規模的開發過程中很少被使用,無論是個人還是團隊在安全控制中都孤立的來使用 eps 由於 eps易於個人設定和自主使用,但是在大規模部署時需要進行認證,恢復...
《雷神的微軟平台安全寶典》簡介
在使用微軟基礎設施和企業部署這麼多年的過程中,微軟的檔案加密系統 eps 是我迄今為止見過的最安全但也是最未被充分應用的技術之一。在企業級或者中等規模的開發過程中很少被使用,無論是個人還是團隊在安全控制中都孤立的來使用 eps 由於eps 易於個人設定和自主使用,但是在大規模部署時需要進行認證,恢復...
開放平台安全性考慮
開放平台由於將內部大量的資源開放出去,需要特別考慮安全性問題。這裡的安全性是泛指的。我覺得有以下幾個方面需要考慮的。安全 safety 這個是指資料丟沒有丟失的問題 資料篡改 資料不一致 髒資料 有資料對映關係和分布式情況下很容易出現該問題 人為操作失誤導致的資料丟失 為了解決這個問題,我們需要建立...