• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      透明加密保數(shù)據(jù)庫安全

      2016-03-15 22:33:37
      網(wǎng)絡安全和信息化 2016年7期
      關鍵詞:解密日志備份

      引言:在企業(yè)管理,網(wǎng)站維護,程序開發(fā)等環(huán)境中,SQL Server數(shù)據(jù)庫使用極為廣泛。在SQL Server數(shù)據(jù)庫中,往往保存了大量的重要數(shù)據(jù)。因此,如何保證數(shù)據(jù)庫的安全性,防止其中的數(shù)據(jù)被盜取或者篡改,是保證SQL Server正常運作必須面對的問題。

      使用加密技術可以有效保護SQL Server數(shù)據(jù)庫的安全。例如,在SQL Server 2008中,就可以使用數(shù)據(jù)加密,數(shù)據(jù)操作身份審核,身份驗證協(xié)議等手段,來提高數(shù)據(jù)庫的安全性。這里就以如何使用數(shù)據(jù)透明加密為例,來說明具體的實現(xiàn)方法。

      在SQL Server 2008中,提供了透明數(shù)據(jù)加密技 術(即 Transparent Data Encryption),對整個數(shù)據(jù)庫進行保護,可以自動加密SQL Server的數(shù)據(jù)文件和日志文件。透明加密是在物理文件層次運作,即使沒有加密證書,也可以防止執(zhí)行數(shù)據(jù)庫文件還原和附加等操作。例如,當需要將數(shù)據(jù)庫恢復或者附加到另外的SQL Server實例上時,就必須提供加密時使用的加密密鑰證書,否則操作無法進行。之前的SQL Server數(shù)據(jù)加密操作,針對的都是表中的字段,數(shù)據(jù)記錄等對象,無法從根本上保護數(shù)據(jù)庫文件的安全。

      而透明加密及時保護的對象是數(shù)據(jù)庫文件,日志文件和備份文件。該加密方式是在頁級別工作的,相關數(shù)據(jù)庫中的頁會在寫入磁盤之前加密,在讀取到內存之前解密。之所以叫透明數(shù)據(jù)加密,是因為這種加密在使用數(shù)據(jù)庫的程序或用戶看來,就好像沒有加密一樣。TDE加密是數(shù)據(jù)庫級別的。數(shù)據(jù)的加密和解密是以頁為單位,由數(shù)據(jù)引擎執(zhí)行的。在寫入時進行加密,在讀出時進行解密??蛻舳顺绦蛲耆挥米鋈魏尾僮?。所謂頁,指的是數(shù)據(jù)庫中一個I/O操作的基本單位,數(shù)據(jù)庫的頁是在磁盤上保存物理記錄的單位,這是邏輯的概念,有利于物理記錄的管理。

      TDE的主要作用是保護數(shù)據(jù)庫的安全,例如當數(shù)據(jù)庫備份或數(shù)據(jù)文件被黑客盜取之后,當其在沒有數(shù)據(jù)加密密鑰的情況下,是無法恢復或附加數(shù)據(jù)庫的。透明加密技術使用數(shù)據(jù)庫加密密鑰,對數(shù)據(jù)庫進行加密處理。該密鑰存儲在數(shù)據(jù)庫啟動記錄中,對于對稱密鑰來說,透明加密功能使用存儲在數(shù)據(jù)庫實例中的Master數(shù)據(jù)庫中的證書對其進行保護。對于非對稱密鑰來說,可以使用外部密鑰管理模塊對其加以保護。使用透明加密技術,必須為數(shù)據(jù)庫創(chuàng)建一個主密鑰,例如運行SQL Server Management Studio,連 接 到SQL服 務器,點擊菜單“文件”→“新建”→“數(shù)據(jù)庫引擎查詢”項,或者點擊工具欄上的“數(shù)據(jù)查詢”按鈕,在查詢輸入窗口中執(zhí)行“create master key encryption by password ='jiamikey!@#'”語句,創(chuàng)建名為“jiamikey!@#”的主密鑰。注意,該密鑰必須符合Windows的密碼策略要求。對應的,執(zhí)行“DROP MASTER KEY”語句,可以刪除主密鑰。

      可以根據(jù)需要,對數(shù)據(jù)庫主密鑰的屬性進行修改,例如執(zhí)行“alter master key regenerate with encryption by password =jiamikey!@#'”語句,來重建數(shù)據(jù)庫主密鑰以及受其保護的密鑰。如果使用“Force”參數(shù),例如執(zhí)行“alter master key force regenerate with encryption by password =jiamikey!@#'”語句,表示即使主密鑰不可用,該密鑰的重建過程也會強制執(zhí)行,這適用于主密鑰無法恢復或者解密失敗的情況。執(zhí)行“alter master key add encryption by password= jiamikey!@#'”,“alter master key add encryption by service master key”語句,可以使用服務主密鑰,對主密鑰的副本進行加密,之后將副本保存在當前數(shù)據(jù)庫和Master數(shù)據(jù)庫中。執(zhí)行“alter master key drop encryption by password= 'jiamikey!@#'”,“alter master key drop encryption by service master key”語句,可以刪除服務主密鑰對數(shù)據(jù)庫主密鑰的加密信息。

      當創(chuàng)建了主密鑰之后,需要及時對其進行備份。例如執(zhí)行“backup master key to file = 'E:zhukey'encryption by password= 'jiamikey!@#'”語句,將其備份到指定的文件中。對應的。執(zhí)行“restore master key from file ='E:zhukey' decryption by password = 'jiamikey!@#'encryption by password ='jiamiqwe!@#'”語句,可以導入之前備份的主密鑰。在“encryption by password”參數(shù)中可以指定新的密鑰信息。

      接下來需要創(chuàng)建或取得由Master數(shù)據(jù)庫保護的證書,例如執(zhí)行“use master”,“create certificate wodecertificate encryption by password= 'certificate!@#' with subject = 'EnryptData certificate', start_date ='20150101',expiry_date= '20190101'”,“Go”等命令,可以創(chuàng)建指定名稱的證書,并指定用于對私鑰加密的密碼,如果不使用“encryption by password =' certificate!@#'”語句,則自動使用數(shù)據(jù)庫主密鑰對私鑰進行加密。利用證書可以使用數(shù)據(jù)庫級的內部公鑰對數(shù)據(jù)表的字段等對象進行加密,之后使用數(shù)據(jù)庫級的內部私鑰對其解密。

      對證書進行備份時很有必要的,例如執(zhí)行“backup certificate wodecertificate to file = 'E:wodecertificate.cer'with private key (file = 'E:wodecertificate_key.pvk' ,decryption by pass word = 'hellocertificate!@#',encryption by password='hellocertificate' )”語句,可以將證書備份到指定的文件中,同時設定私鑰文件保存位置,以及對私鑰進行加密和解密的密碼。對應的,執(zhí) 行“create certificate mycertificate from file='E:wodecertificate.cer' with private key(file ='E:wodecertificate_key.pvk', decryption by pass word ='hellocertificate!@#')”語句,可以執(zhí)行證書的還原操作。如果想刪除證書,可以執(zhí)行“drop certificate wodecertificate”語句,就可以將名為“Mycertificate” 的證書刪除。

      對數(shù)據(jù)庫進行透明加密,需要創(chuàng)建對應的加密密鑰。例如需要你對名為“shilidb”的數(shù)據(jù)庫進行加密的話,可以執(zhí)行“use shilidb”,“create database encryption key with algorithm = AES_128 encryption by Server certificate wodecertificate”語句,為指定的數(shù)據(jù)庫創(chuàng)建加密密鑰,該密鑰使用上述創(chuàng)建的證書。如果需要對該加密密鑰進行修改的話,例如修改其加密算法,可以執(zhí)行“use shilidb”,“alter database encryption key with algorithm = AES_256 encryption by Server certificate wodecertificate”,“Go”等語句,將其加密算法修改為“AES_256”。執(zhí)行“alter database shilidb set encryption ON”語句,將“shilidb”數(shù)據(jù)庫設置為透明加密狀態(tài)。當啟用了透明加密后,目標數(shù)據(jù)庫所有相關文件組都將進行加密。

      當對受到透明加密的數(shù)據(jù)庫進行備份后,當試圖在其他SQL Server服務器上對其還原時,是無法進行操作的。要想解決問題,只有在該SQL Server服務器上創(chuàng)建同樣的證書。還以上面的例子進行說明,在本SQL Server上執(zhí)行“use master”,“go”,“ backup certificate wodecertificate to file = 'E:wodecertificate.cer' with private key ( file = 'E:wodecertificate_key.pvk',decryption by password =' hellocertificate!@#'”,“go”命令,將本地的證書導出為獨立的文件。之后在目標SQL Server服務器上執(zhí)行“use master”,“go”,“create master key encryption by password= 'jiamikey!@#'”,“go”,“use master”,“go”,“create certificate mycertificate from file ='E:wodecertificate.cer'with private key (file ='E:wodecertificate_key.pvk',decryption by password ='hellocertificate!@#')”,“go”等語句,在該SQL Server服務器上創(chuàng)建相同的證書和主密鑰。這樣,執(zhí)行“restore database shili from disk = 'E:datashili.bak'with move 'shili'TO 'E:shujukushili.mdf' move 'shili_log' TO'E:shujukushilildf'”等語句,就可以在該機上執(zhí)行數(shù)據(jù)庫還原操作了,假設使用的數(shù)據(jù)庫名為“shili”。

      在加密時,需要對數(shù)據(jù)庫相關文件進行更改操作,如果數(shù)據(jù)庫中的任何文件夾設置為只讀狀態(tài),加密操作將無法進行。注意,當對數(shù)據(jù)庫進行透明加解密,以及更改密鑰等操作時,將無法執(zhí)行諸如從數(shù)據(jù)庫文件組中刪除文件,刪除數(shù)據(jù)庫,使數(shù)據(jù)庫脫機,分離數(shù)據(jù)庫,將數(shù)據(jù)庫文件組轉換成只讀狀態(tài)等操作。一旦啟用了透明加密功能,SQL Server會將日志中的文本數(shù)據(jù)清理出去,并使用加密格式的日志文件。不管在任何數(shù)據(jù)庫上執(zhí)行了透明加密,SQL Server自帶的tempdb數(shù)據(jù)庫都會自動進行加密,這將導致其非加密數(shù)據(jù)庫性能的下降。當傳送日志文件到另外的使用透明加密的數(shù)據(jù)庫時,如果相關日志在另外的數(shù)據(jù)庫上不可用,日志傳送將無法進行。使用了透明加密功能,將導致數(shù)據(jù)庫的額壓縮備份效率降低。

      猜你喜歡
      解密日志備份
      解密“熱脹冷縮”
      “備份”25年:鄧清明圓夢
      一名老黨員的工作日志
      華人時刊(2021年13期)2021-11-27 09:19:02
      解密“一包三改”
      少先隊活動(2020年9期)2020-12-17 06:17:31
      扶貧日志
      心聲歌刊(2020年4期)2020-09-07 06:37:14
      炫詞解密
      游學日志
      淺析數(shù)據(jù)的備份策略
      科技視界(2015年6期)2015-08-15 00:54:11
      解密“大調解”
      一種基于粗集和SVM的Web日志挖掘模型
      锡林浩特市| 岳池县| 闻喜县| 东海县| 磐石市| 邵阳县| 台南市| 宁波市| 南汇区| 若羌县| 江阴市| 友谊县| 茌平县| 连云港市| 镇江市| 鹤壁市| 墨玉县| 宾川县| 长宁县| 留坝县| 如东县| 抚远县| 正蓝旗| 收藏| 时尚| 巴南区| 顺昌县| 石门县| 阿克苏市| 扎鲁特旗| 台州市| 湖南省| 玉溪市| 阳谷县| 奇台县| 奈曼旗| 新巴尔虎左旗| 象州县| 大渡口区| 临猗县| 宣威市|