備份和還原的安全注意事項(xiàng)
文章出處:http://www.mjagi.com 作者:開(kāi)發(fā)部 人氣: 發(fā)表時(shí)間:2013年10月18日
管理日志備份
使用的是完整恢復(fù)模式或大容量日志恢復(fù)模式時(shí),如果丟失了日志備份,則可能無(wú)法將數(shù)據(jù)庫(kù)還原到上次備份之后的某個(gè)時(shí)點(diǎn)??梢钥紤]通過(guò)將日志備份到磁盤(pán),然后將磁盤(pán)文件復(fù)制到其他設(shè)備(如單獨(dú)的磁盤(pán)或磁帶)來(lái)創(chuàng)建多個(gè)日志備份副本。
建議您為一系列數(shù)據(jù)庫(kù)備份存儲(chǔ)一條日志備份鏈。如果最新的完整數(shù)據(jù)庫(kù)備份不可用,則可以先還原早期的完整數(shù)據(jù)庫(kù)備份,然后再還原在該早期完整數(shù)據(jù)庫(kù)備份之后創(chuàng)建的所有事務(wù)日志備份。
如果丟失了日志備份,則在將數(shù)據(jù)庫(kù)還原到事務(wù)日志備份內(nèi)的某個(gè)時(shí)點(diǎn)時(shí),建議您保留丟失的日志備份之前的事務(wù)日志備份。
物理保護(hù)
為保護(hù)備份磁帶,建議將其存儲(chǔ)在另外一個(gè)安全的位置。
為保護(hù)備份磁盤(pán)文件,建議僅備份到受限制性訪問(wèn)控制列表 (ACL) 保護(hù)的磁盤(pán)文件。應(yīng)該在創(chuàng)建備份的根目錄下設(shè)置 ACL。在某些情況下,可能需要使用 NTFS 加密文件系統(tǒng) (EFS) 進(jìn)一步保護(hù)基于磁盤(pán)的備份。另外,還建議您使用 Windows 備份將 SQL Server 磁盤(pán)備份備份到磁帶,然后再將磁帶存儲(chǔ)在另外一個(gè)安全的位置。有關(guān)詳細(xì)信息,請(qǐng)參閱 Windows 文檔。
備份密碼保護(hù)
SQL Server 支持對(duì)備份媒體和備份集進(jìn)行密碼保護(hù)。
重要提示
此密碼很容易被破獲。它的目的是為了阻止授權(quán)用戶或非授權(quán)用戶使用 SQL Server 工具進(jìn)行不正確的還原,但不能防止通過(guò)其他方式或通過(guò)替換密碼讀取備份數(shù)據(jù)。 下一版本的 Microsoft SQL Server 將刪除該功能。請(qǐng)避免在新的開(kāi)發(fā)工作中使用該功能,并著手修改當(dāng)前還在使用該功能的應(yīng)用程序。
執(zhí)行備份操作時(shí)不需要密碼,不過(guò)密碼可提供額外的安全級(jí)別??梢詫⑺鼈冇米鲗?duì)使用 SQL Server 安全角色的補(bǔ)充。使用密碼保護(hù)幫助您防止未經(jīng)授權(quán)或無(wú)意識(shí)的操作,例如:
還原數(shù)據(jù)庫(kù)
追加到媒體
覆蓋媒體
重要提示
密碼安全不能防止通過(guò)格式化媒體或?qū)⒚襟w用作延續(xù)磁帶來(lái)覆蓋媒體。另外,指定密碼不會(huì)以任何方式加密數(shù)據(jù)。
媒體集密碼
它對(duì)媒體集中保存的數(shù)據(jù)提供較弱的保護(hù)。當(dāng)寫(xiě)入媒體標(biāo)頭時(shí),將保存媒體集密碼;不能更改該密碼。如果格式化媒體集時(shí)提供了密碼,則在該媒體集上創(chuàng)建備份集時(shí)必須提供密碼。另外,從該媒體集執(zhí)行任何還原操作時(shí)也必須提供媒體密碼。
注意
只能對(duì) SQL Server 備份和還原操作使用媒體。
若要指定媒體集密碼,請(qǐng)?jiān)?BACKUP 或 RESTORE 語(yǔ)句中使用 MEDIAPASSWORD 選項(xiàng)。
備份集密碼
它對(duì)特定的備份集提供較弱的保護(hù)??梢詫?duì)媒體上的每個(gè)備份集使用不同的備份集密碼。備份集密碼是在將備份集寫(xiě)入媒體時(shí)創(chuàng)建的。如果為一個(gè)備份集指定了密碼,必須提供這個(gè)密碼才能對(duì)該備份集執(zhí)行任何還原操作。
若要指定備份集密碼,請(qǐng)?jiān)?BACKUP 或 RESTORE 語(yǔ)句中使用 PASSWORD 選項(xiàng)。
僅還原來(lái)自受信任源的備份
建議您不要從未知或不可信源附加或還原數(shù)據(jù)庫(kù)。這些數(shù)據(jù)庫(kù)可能包含惡意代碼,這些代碼可能會(huì)執(zhí)行非預(yù)期 Transact-SQL 代碼,或者通過(guò)修改架構(gòu)或物理數(shù)據(jù)庫(kù)結(jié)構(gòu)導(dǎo)致錯(cuò)誤。使用來(lái)自未知或不可信來(lái)源的數(shù)據(jù)庫(kù)前,請(qǐng)?jiān)诜巧a(chǎn)服務(wù)器上對(duì)該數(shù)據(jù)庫(kù)運(yùn)行 DBCC CHECKDB。另外,還要檢查該數(shù)據(jù)庫(kù)中的代碼,如存儲(chǔ)過(guò)程或其他用戶定義代碼。