|
一個(gè)MDB數(shù)據(jù)庫(kù)就是硬盤(pán)上的另外一個(gè)文件,所以,像其他文件一樣,它也將遇到相同的文件訪(fǎng)問(wèn)許可問(wèn)題。這個(gè)問(wèn)題的意思是為了讀取(和寫(xiě)入,就像您將要在本書(shū)的后面看到的那樣)數(shù)據(jù)庫(kù)文件,頁(yè)面中所運(yùn)行的應(yīng)用程序必須具有相關(guān)許可才可以在Windows中讀取(和寫(xiě)入)該文件。
到目前為止,示例中的頁(yè)面都能夠“正常運(yùn)行”的原因就是您使用的是VWD Web Server,一個(gè)在運(yùn)行VWD的用戶(hù)的身份下運(yùn)行的輕量級(jí)程序。這就是說(shuō),VWD Web Server為您而運(yùn)行,并且您已經(jīng)被允許讀取和寫(xiě)入頁(yè)面連接的MDB文件。
但是,當(dāng)在IIS下運(yùn)行頁(yè)面時(shí),情況就有一點(diǎn)復(fù)雜了。此時(shí),ASP.NET頁(yè)面運(yùn)行于一個(gè)具有特定權(quán)限限制的用戶(hù)賬戶(hù)的身份之下。在IIS 5.1之下,這個(gè)賬戶(hù)是“ASPNET”。在IIS 6.0或更高版本下,這個(gè)賬戶(hù)是“NETwork Service”,屬于一個(gè)稱(chēng)為IIS_WPG(“worker process group”)的Windows用戶(hù)組。為了在IIS下使用Access數(shù)據(jù)庫(kù),這些賬戶(hù)都必須授予對(duì)包含了MDB文件的目錄進(jìn)行讀取的許可以及按情況授予寫(xiě)入的許可。
為了幫助您創(chuàng)建這些許可,當(dāng)數(shù)據(jù)庫(kù)處于應(yīng)用程序根目錄之下的App_Data子目錄下時(shí),VWD將執(zhí)行額外的步驟并自動(dòng)地將這個(gè)許可授予ASPNET或者 NETwork Service賬戶(hù)。假如您正在使用VWD來(lái)開(kāi)發(fā)機(jī)器上的頁(yè)面,這個(gè)特定的目錄就一直會(huì)被授予正確的許可。App_Data目錄還有另外的好處,例如防止其中的任何文件響應(yīng)發(fā)出請(qǐng)求的Web瀏覽器。這就是說(shuō)將MDB文件放入應(yīng)用程序的本地App_Data目錄之后,就可以保護(hù)這些文件不被應(yīng)用程序的客戶(hù)端無(wú)意或有意地下載了。所以,我們極力推薦將MDB文件保存至App_Data目錄中。
如果必須將MDB文件保存至其他的地方,或者需要手動(dòng)指定數(shù)據(jù)庫(kù)目錄的許可(例如,您正工作于一臺(tái)遠(yuǎn)程Web服務(wù)器),那么可以使用Windows來(lái)為ASP.NET和/或 NETwork Service賬戶(hù)配置許可。
如需手動(dòng)設(shè)置許可,請(qǐng)按如下步驟執(zhí)行:
(1) 使用Windows Explorer瀏覽MDB文件所在的文件夾。
(2) 右鍵單擊這個(gè)目錄并選擇Properties。
(3) 選擇Security標(biāo)簽并單擊Add按鈕。
(4) 添加本地的ASP.NET賬戶(hù)(IIS 5.1) 或者IIS_WPG組(IIS 6)。
(5) 單擊OK;然后將相關(guān)許可應(yīng)用至這個(gè)目錄。
如需獲得更多信息,請(qǐng)參閱名為“Running ASP.NET 1.1和IIS 6.0”的白皮書(shū),可以從ASP.NET的Web站點(diǎn):http://www.ASP.NET/faq/ASPNETAndIIS6.ASPx上獲得該白皮書(shū)。
AspNet技術(shù):ASP.NET數(shù)據(jù)庫(kù)編程之處理文件訪(fǎng)問(wèn)許可,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。