程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> 九法防止ACCESS數據庫被下載的

九法防止ACCESS數據庫被下載的

編輯:關於Access數據庫

(一)實驗過程

為了敘述方便,舉個具體例子做個實驗:應用程序為/test,數據庫存放在D:wwwrootestdatadb1.mdb,我們已經知道在ASP.Net中是以一個叫做;ASPNET虛擬用戶的身份訪問數據庫的,我們需要給這個賬戶以特定的NTFS權限才能使ASP.Net程序正常運行。

為了得到最嚴格的NTFS權限設置,實驗開始時我們給程序最低的NTFS權限:

a)D:wwwrootestdata文件夾的給用戶ASPNET以如下權限:
答應拒絕
完全控制 □□
修改□□
讀取及運行√□;
列出文件夾目錄;√□
讀取√□
寫入□□

b)D:wwwrootestdatadb1.mdb文件本身給用戶ASPNET以如下權限:
√答應將來自父系的可繼續權限傳播給該對象

1.1對於某個只包含有"SELECT"命令的ASPx程序,上述權限設置運行時無障礙,即:上述權限已經滿足這類程序的運行了。

1.2對於包含有"UPDATE""INSERT""UPDATE"等命令的ASPx程序,;

(a)假如db1.mdb是Access2000創建的數據庫,出現如下錯誤:

"/test"應用程序中的服務器錯誤。
---------------------------------------
MicrosoftJet數據庫引擎打不開文件'D:wwwrootestdata'。 它已經被別的用戶以獨占方式打開,或沒有查看數據的權限。
說明:執行當前Web請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的具體信息。
異常具體信息:System.Data.OleDb.OleDbException:MicrosoftJet數據庫引擎打不開文件'D:wwwrootestdata'。它已經被別的用戶以獨占方式打開,或沒有查看數據的權限。

(b)假如db1.mdb是AccessXP創建的數據庫,出現如下錯誤:

"/test"應用程序中的服務器錯誤。
----------------------------------------------
操作必須使用一個可更新的查詢。
說明:執行當前Web請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的具體信息。
異常具體信息:System.Data.OleDb.OleDbException:操作必須使用一個可更新的查詢。

(c)原因初步分析:因為包含有"UPDATE""INSERT""UPDATE"等命令,需要對數據庫文件本身進行寫入操作,所以上述權限不能滿足此需求,我們需要進一步放開權限。

我們放開一些權限,
a)D:wwwrootestdata文件夾不變:

b)D:wwwrootestdatadb1.mdb文件本身給用戶ASPNET以如下權限:
答應拒絕
完全控制 □□
修改□□
讀取及運行√□;
列出文件夾目錄;√□
讀取√□
寫入√□轉載保留:。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved