將此篇文章跟 Facebook 上的朋友分享將此篇文章跟 Plurk 上的朋友分享將此篇文章跟 Twitter 上的朋友分享列印轉寄
2016/4/11

雲端資料不怕管理員偷看 精細管控存取權限並防止外洩

實戰三大資料保護新功能 SQL Server 2016更安全

莊國志
本文將說明SQL Server 2016中三項與安全性有關的新功能:一律加密、資料列層級安全性及動態資料遮罩,讓企業即使將資料放在公有雲上也能擁有資料的所有權,並且可以管理資料存取權限,為資料建立遮罩避免外流。
此外,也可以利用Always Encrypted Wizard來達到相同目的,如圖3所示。


▲圖3 使用Always Encrypted Wizard建立資料行主要金鑰與資料行加密金鑰。


在AdventureWorks2016CTP3範例資料庫內,已經事先將Sales.CustomerPII資料表的SSN和CreditCardNumber資料行啟用一律加密,因此在沒有資料行主要金鑰(Column Master Keys)的環境中只會看到加密後的結果,如圖4所示。


▲圖4 SSN和CreditCardNumber資料行已啟用一律加密,若無資料行主要金鑰,則會看到編碼後的內容。


若要解密,必須匯入建立資料行主要金鑰所使用的憑證,其路徑為「範例程式碼解壓縮路徑SQLServer2016CTP3Samples\AlwaysEncrypted\Always EncryptedCMK.pfx」。

於憑證匯入精靈選擇預設存放位置為目前使用者後,按下〔下一步〕按鈕,如圖5所示。


▲圖5 匯入範例程式碼中用來建立資料行主要金鑰的憑證。


如圖6所示,確認憑證檔案路徑無誤後,再按下〔下一步〕按鈕。


▲圖6 確認憑證路徑。


輸入私密金鑰密碼為「AlwaysEncrypted」,並按下〔下一步〕按鈕,如圖7所示。


▲圖7 輸入私密金鑰密碼。


然後,使用預設值來自動依據憑證類型選取憑證存放區,如圖8所示。


▲圖8 選擇憑證存放位置。


若一切順利,按下〔完成〕按鈕即可匯入憑證(圖9)。有了這張憑證,才可以正常使用資料行主要金鑰來解開一律加密所保護的資料行。


▲圖9 完成憑證匯入。


隨即重新連接到Database Engine,並如圖10所示在〔Additional Connection Parameters〕頁籤內輸入「Column Encryption Setting=Enabled」的連線 參數。


▲圖10 使用Column Encryption Setting連線參數。


如圖11所示,接著重新查詢Sales.CustomerPII資料表的SSN和CreditCardNumber資料行,就可以看到解密後的明文。


▲圖11 SSN和CreditCardNumber資料行解密後的結果。


這篇文章讓你覺得滿意不滿意
送出
相關文章
用SQL指令分析網站日誌 輕鬆掌握主機運作狀況
正規ADB工具鑑識術 萃取U通訊App有效跡證
低預算部署有效防線 拉高攻擊成本讓駭客卻步
大數據資料探勘必備技能 R語言日見火紅
幫MySQL加上安全傳輸 走SSL連線資料庫才放心
留言
顯示暱稱:
留言內容:
送出
熱門點閱文章