攻擊原理:在用Access做后臺數(shù)據(jù)庫時,如果有人通過各種方法知道或者猜到了服務器的Access數(shù)據(jù)庫的路徑和數(shù)據(jù)庫名稱,那么他也能夠下載這個Access數(shù)據(jù)庫文件,這是非常危險的。
防范技巧:
(1)為你的數(shù)據(jù)庫文件名稱起個復雜的非常規(guī)的名字,并把它放在幾層目錄下。所謂 “非常規(guī)”, 打個比方說,比如有個數(shù)據(jù)庫要保存的是有關書籍的信息, 可不要給它起個“book.mdb”的名字,而要起個怪怪的名稱,比如d34ksfslf.mdb, 并把它放在如./kdslf/i44/studi/的幾層目錄下,這樣黑客要想通過猜的方式得到你的Access數(shù)據(jù)庫文件就難上加難了。
?。?)不要把數(shù)據(jù)庫名寫在程序中。有些人喜歡把DSN寫在程序中,比如:
DBPath = Server.MapPath(“cmddb.mdb”)
conn.Open “driver={Microsoft Access Driver (*.mdb)};dbq=” & DBPath
假如萬一給人拿到了源程序,你的Access數(shù)據(jù)庫的名字就一覽無余了。因此建議你在ODBC里設置數(shù)據(jù)源,再在程序中這樣寫:
conn.open“shujiyuan”
?。?)使用Access來為數(shù)據(jù)庫文件編碼及加密。首先在“工具→安全→加密/解密數(shù)據(jù)庫”中選取數(shù)據(jù)庫(如:employer.mdb),然后按確定,接著會出現(xiàn)“數(shù)據(jù)庫加密后另存為”的窗口,可存為:“employer1.mdb”。
要注意的是,以上的動作并不是對數(shù)據(jù)庫設置密碼,而只是對數(shù)據(jù)庫文件加以編碼,目的是為了防止他人使用別的工具來查看數(shù)據(jù)庫文件的內(nèi)容。
接下來我們?yōu)閿?shù)據(jù)庫加密,首先打開經(jīng)過編碼了的 employer1.mdb,在打開時,選擇“獨占”方式。然后選取功能表的“工具→安全→設置數(shù)據(jù)庫密碼”,接著輸入密碼即可。這樣即使他人得到了employer1.mdb文件,沒有密碼他也是無法看到 employer1.mdb中的內(nèi)容。