麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > Access > 正文

ASP/ASP.NET網站中怎么防止Access數據庫被別人下載

2024-09-07 19:04:19
字體:
來源:轉載
供稿:網友

 如何防止Access數據庫下載是一個很老的話題了,網上的討論也比較多。這里我們給出幾種在ASP.NET下防止Access數據庫被下載的方法。

我們這里假設Access數據庫名字為 test.mdb。

1、把數據庫放在WEB目錄外

如你的網站目錄是D:www,你可以把數據庫放到D:data 這個文件夾里,然后修改網站程序中的數據庫連接字串地址部分為:"D:datatest.mdb" ,這樣數據庫可以正常調用,但是無法下載的,因為它不在網站目錄里。

假設在web.config中配置數據庫連接字符串。例如:

<connectionStrings> <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=d:datatest.mdb" providerName="System.Data.OleDb" /> </connectionStrings>

2、把數據庫放在App_Data系統文件夾下

從.Net2.0開始有App_Data目錄來專門存放數據文件,它可以用來放Access,SQL Server Express、XML等數據文件。數據庫文件放到App_Data文件夾的好處就是可以防止被下載。而對于連接字符串數據庫的文件位置可以使用DataDirectory關鍵來表示它的物理路徑,從而在獲取連接字符串的時候不再需要使用Server.MapPath()轉換。

假設在web.config中配置數據庫連接字符串。例如:

    <connectionStrings>        <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=|DataDirectory|test.mdb" providerName="System.Data.OleDb" />    </connectionStrings>

|DataDirectory|就是代表的app_data文件夾。

3、重命名數據庫文件

將你的 Access 重命名 *.asax:因為 ASP.NET 的處理機制中,默認情況下,對這樣的請求是直接拒絕的。按照這個思路,還可以把 Access 重命名為 *.config,*.vb, *.cs 等等。

4、配置IIS,添加.mdb文件類型映射

添加.mdb的擴展映射這個方法就是通過修改IIS設置來實現。只需2個步驟。

1. 配置IIS,將.mdb文件類型映射到ASP.NET ISAPI。

以windows 2003為例,點擊“開始”-》運行-》輸入“inetmgr” 回車,打開“Internet 服務管理器”。在某一個網站上單擊鼠標右鍵-》點擊“屬性” 彈出此站點的屬性對話框。點擊“主目錄”選項卡,點擊“配置”按鈕,則會顯示“應用程序配置”對話框。點擊“添加”增加一個映射,這時會顯示一個對話框,要你輸入可執行文件:“C:WINDOWS Microsoft.NET Framework v2.0.50727 aspnet_isapi.dll”;輸入擴展名:“.mdb”。如下圖所示

ASPASP.NET網站中怎么防止Access數據庫被別人下載 武林網

2. 配置asp.net的web.config文件,將.mdb文件類型映射到HttpForbiddenHandler HTTP handler。

使asp.net應用程序.mdb文件類型映射到HttpForbiddenHandler HTTP 句柄。為了達到這上步,必須將下面的配置加到Web.config文件中

<httpHandlers> <add verb="*" path="*.mdb" type="System.Web.HttpForbiddenHandler" /> </httpHandlers>

5、添加ACCESS防下載字段

該方法的原理是:將數據庫的擴展名變成.aspx格式,從遠程訪問這個文件的時候,IIS服務器就會把它當成aspx程序來執行,而我們之前在ACCESS數據庫中插入了“<%”符號,而asp.net程序必須在“<%%>”標記中才能執行,所以就會出現 “缺少腳本關閉標記” 的500錯誤,別人就無法下載ACCESS數據庫了。如果只是簡單的在數據庫的文本或者備注字段加入“<%”是沒用的,因為ACCESS會對其中的內容進行處理,在數據庫里他會以 <% 的形式存在,無效!正確的方法是將 <% 存入OLE對象字段里。方法如下:

1、先創建一個表,在SQL命令窗口內輸入如下內容:“create table [notdown]([notdown] oleobject)”

然后點擊工具欄中的“!”(運行),這樣,就會在當前數據庫內創建一個“notdown”表,其中的字段名稱為“notdown”,字段類型為“OLE對象”。 如圖1

ASP/ASP.NET網站中怎么防止Access數據庫被別人下載


(圖1)

2、將SQL查詢窗口中的內容更改為如下命令:“insert into [notdown](notdown) values (0x3C25)”

這一句的意思是向“notdown”表的“notdown”字段中插入“0x3C25”數據(“0x3C25”為字符“<%”的16進制)。如圖2

ASP/ASP.NET網站中怎么防止Access數據庫被別人下載


(圖2)

執行完畢后,再次查看數據庫中的“表”,就會發現其中已多了一個“notdown”表,打開后字段顯示的是“長二進制數據” 如圖3

ASP/ASP.NET網站中怎么防止Access數據庫被別人下載


(圖3)

admin10000.com 這里已經做好的防下載數據表notdown,你可以直接下載粘貼到自己數據庫中使用。notdown數據表

提示1:無論是ASP網站中還是ASP.NET網站,對于直接把Access數據庫后綴直接改為.asp和.aspx,用FlashGet等下載工具都照下不誤,不能起到防下載作用。
提示2:第5種方法通常用在ASP+ACCESS網站中。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: asian附近女人裸体pics | 精品69人人人人 | 久久国产精品影视 | 色淫网站免费视频 | 91精品国产综合久久婷婷香 | 石原莉奈日韩一区二区三区 | 男女无遮挡羞羞视频 | 亚洲视色 | 斗破苍穹在线免费 | 国产精品久久久久久久久久 | 久久精品男人 | 成人午夜免费av | 嗯~啊~用力~高h | 性少妇freeseⅹbbwhd | 久久久久久久久久久久久国产精品 | 欧美一级黄色影院 | 福利免费在线观看 | 欧美一级α | 国产成年人网站 | 国产porn在线 | 久久久一区二区三区精品 | 亚洲成人免费网站 | 亚洲成人免费影视 | www.com国产精品 | 黄色的视频免费观看 | 久久免费视频3 | 国产午夜精品视频免费不卡69堂 | 欧美性激情视频 | 成人超碰| 成人在线免费观看视频 | 黄色片视频在线观看 | 国产毛片毛片毛片 | 欧美aaaaaaaa| 日韩欧美激情视频 | 精品一区二区电影 | 国产美女爽到喷白浆的 | 国产一级性生活视频 | 黄色免费在线电影 | 欧美a视频在线观看 | 成年人小视频在线观看 | 国产成人精品免费视频大全最热 |