ASP.NET數(shù)據(jù)庫(kù)編程之處理文件訪問(wèn)許可
一個(gè)MDB數(shù)據(jù)庫(kù)就是硬盤(pán)上的另外一個(gè)文件,所以,像其他文件一樣,它也將遇到相同的文件訪問(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的用戶的身份下運(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)限限制的用戶賬戶的身份之下。在IIS 5.1之下,這個(gè)賬戶是“ASPNET”。在IIS 6.0或更高版本下,這個(gè)賬戶是“Network Service”,屬于一個(gè)稱為IIS_WPG(“worker process group”)的Windows用戶組。為了在IIS下使用Access數(shù)據(jù)庫(kù),這些賬戶都必須授予對(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賬戶。假如您正在使用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)用程序的客戶端無(wú)意或有意地下載了。所以,我們極力推薦將MDB文件保存至App_Data目錄中。
如果必須將MDB文件保存至其他的地方,或者需要手動(dòng)指定數(shù)據(jù)庫(kù)目錄的許可(例如,您正工作于一臺(tái)遠(yuǎn)程Web服務(wù)器),那么可以使用Windows來(lái)為ASP.NET和/或 Network Service賬戶配置許可。
如需手動(dòng)設(shè)置許可,請(qǐng)按如下步驟執(zhí)行:
(1) 使用Windows Explorer瀏覽MDB文件所在的文件夾。
(2) 右鍵單擊這個(gè)目錄并選擇Properties。
(3) 選擇Security標(biāo)簽并單擊Add按鈕。
(4) 添加本地的ASP.NET賬戶(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ū)。
- asp.net中WebResponse 跨域訪問(wèn)實(shí)例代碼
- ASP.NET拒絕訪問(wèn)臨時(shí)目錄的解決方法
- ASP.net中網(wǎng)站訪問(wèn)量統(tǒng)計(jì)方法代碼
- asp.net 未能寫(xiě)入輸出文件--“拒絕訪問(wèn)的解決辦法
- ASP.NET對(duì)路徑"xxxxx"的訪問(wèn)被拒絕的解決方法小結(jié)
- ASP.NET MVC3關(guān)于生成純靜態(tài)后如何不再走路由直接訪問(wèn)靜態(tài)頁(yè)面
- asp.net 實(shí)現(xiàn)靜態(tài)頁(yè)面累加訪問(wèn)量的三種方式
- asp.net實(shí)現(xiàn)訪問(wèn)局域網(wǎng)共享目錄下文件的解決方法
相關(guān)文章
asp.net(C#)實(shí)現(xiàn)功能強(qiáng)大的時(shí)間日期處理類完整實(shí)例
這篇文章主要介紹了asp.net(C#)實(shí)現(xiàn)功能強(qiáng)大的時(shí)間日期處理類,封裝了針對(duì)日期與時(shí)間的各種常用的判斷與計(jì)算功能,非常方便實(shí)用,需要的朋友可以參考下2016-06-06Asp.Net服務(wù)器發(fā)送HTTP標(biāo)頭后無(wú)法設(shè)置內(nèi)容類型的問(wèn)題解決
這篇文章主要給大家介紹了Asp.Net服務(wù)器發(fā)送HTTP標(biāo)頭后無(wú)法設(shè)置內(nèi)容類型問(wèn)題的解決方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-05-05JavaScript驗(yàn)證用戶輸入的是字符或數(shù)字及ASCII Chart應(yīng)用
我們可以根據(jù)onkeydown事件的event.keyCode即是ASCII Chart來(lái)判斷字符或數(shù)字等,本文提供了相關(guān)鍵盤(pán)key對(duì)應(yīng)的ASCII碼,以供用戶使用是參考及使用onpaste事件只能輸入字符和數(shù)字防止粘貼等的,感興趣的朋友可以了解下2013-01-01ASP.NET中實(shí)現(xiàn)jQuery Validation-Engine的Ajax驗(yàn)證實(shí)現(xiàn)代碼
在jQuery的表變驗(yàn)證插件中Validation-Engine是一款高質(zhì)量的產(chǎn)品,提示效果非常精美,而且里面包含了AJAX驗(yàn)證功能2012-05-05asp.net core集成CKEditor實(shí)現(xiàn)圖片上傳功能的示例代碼
這篇文章主要介紹了asp.net core集成CKEditor實(shí)現(xiàn)圖片上傳功能的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01.NET+PostgreSQL實(shí)踐與避坑指南(推薦)
這篇文章主要介紹了.NET+PostgreSQL實(shí)踐與避坑指南,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01asp.net core標(biāo)簽助手的高級(jí)用法TagHelper+Form
這篇文章主要為大家詳細(xì)介紹了asp.net core標(biāo)簽助手的高級(jí)用法TagHelper+Form,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07