破宝

我是一块破破烂烂的宝贝石头。
随笔 - 94, 评论 - 1281, 引用 - 52

导航

关于

自选精华版 RECOMMENDATIONS
留言板 GUESTBOOK

本人 blog 文章、图片及其他资源等,除另有声明外,均遵循以下原则向全球(当然包括朝鲜、古巴、利比亚等国)共享:

1。欢迎转载、复制、传播、引用,但转载、复制(包括但不仅限于作为参考资料复制到本地)、传播、引用同时必须在显著位置注明作者(破宝/percyboy)和文章原始 URL 地址等信息。但商业转载、复制、传播(尤指用于图书、光盘等媒体的部分或全部),须事先征得本人的许可。

2。文章以“现状”提供,不为由于使用本站资源而造成的任何损失而负责,仅提供力所能及的咨询和参考意见。

3。关于修改:允许您将本 blog 中的资源作为参考资料复制时的一定修改,但仍须保留作者和出处信息;其他情况下的修改(包括修改后再发布),须和本人确认许可。
 

标签

每月存档

最新留言

广告

 

在 ASP 中防止 Access 数据库被下载的“常用”方法大多是:

  1. [点这里] 下载到一个 Access 文件,其中包含一个特殊的表,你把它复制(包括数据)到你要保护的 Access 中;
  2. 然后把你的 Access 重命名为 *.asp。

经过这样的步骤,这个 Access 即使放在 Web 目录中也不会被下载。

注意:正如思归(saucer)说过的那样,这并不是最好的解决方案;如果有可能的话,把 Access 文件放在非 Web 目录中或者合理的设置 NTFS/IIS 权限,会更好一些。
但并不是所有情形中都可以这么解决,因为可能有时候你并没有直接操纵服务器的资格,那么也只能这么 BT 地解决了。

虽然在 ASP.NET 中仍然可以采用上面的方法去做(如果你的服务器同时支持ASP 的话),但显然会有更多其它的方案,如下的几种可以供你参考:

  1. 将你的 Access 重命名 *.asax:因为 ASP.NET 的处理机制中,默认情况下,对这样的请求是直接拒绝的,并不会有上面思归提到的解析过程耗费资源等问题;
    按照这个思路,其实还可以把 Access 重命名为 *.config,*.vb, *.cs 等等。
  2. 将你的 Access 放在你的应用程序根下 bin 目录(也就是你放置 DLL 文件的那个目录)中:已经发现,IIS 默认被配置为拒绝直接访问 bin 目录中的文件,用以保护对 DLL 的请求,事实上也同时保护了放在 bin 目录中其他文件。

(转载请注明出处)

打印 | 张贴于 2003-11-25 09:41:00 | Tag:暂无标签

留言反馈

#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
使用httpHandler配置节没有任何用处,它只对IIS解析的对象起作用,而对mdb文件下载不起作用
2006-09-25 09:49:00 | [匿名:CGH]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
改成*.asp 没有任何用处,骗小孩儿还差不多

不信你用网际快车下载一下试试就知道乐了~~~还有就是如果你没有对"<>"做好过滤的话,还可以构造出asp程序代码,然后post数据,执行你的代码... 哈哈..下面你就完了~~~~~~~~~~
2006-04-29 10:16:00 | [匿名:沙沙]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
1. 在虚拟目录属性配置页的Directory选项卡--〉configuration按钮--〉Mapping选项卡 , 加一个Application Mapping. 执行文件选择 aspnet_isapi.dll
2。在Web。config , httpHandlers 节加

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

访问时就回出现下列错误
This type of page is not served.
!!
Enjoy!
2005-10-09 15:39:00 | [匿名:Jim wang]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
to yongboy:
应该是你已经改动了 IIS 的默认配置。
我在 Windows Server 2003 中测试过这种方案,但我只保证在 IIS 6 默认的初始配置中可用,如果你有其他改动,则无法保证。
2005-07-10 17:11:00 | [匿名:破宝]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
改名
#asdf.asa
带"#" 就可以 #在URL 是描点
^0^
2005-05-15 15:07:00 | [匿名:Jason]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
数据库命名为conn.asp会怎样?
2005-04-24 09:24:00 | [匿名:啊啊]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
to y:
你自己可以试试看,
不要大惊小怪的写那么多叹号和问号。
2005-04-15 10:29:00 | [匿名:破宝]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑



右键“目标另存为...”怎么办???!!!




2005-04-15 10:27:00 | [匿名:y]
#[原创].NET中防止Access数据库下载 编辑
Ping Back来自:blog.csdn.net
2005-04-12 01:28:00 | [匿名:X-Forever]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
将你的 Access 放在你的应用程序根下 bin 目录(也就是你放置 DLL 文件的那个目录)中:已经发现,IIS 默认被配置为拒绝直接访问 bin 目录中的文件,用以保护对 DLL 的请求,事实上也同时保护了放在 bin 目录中其他文件。

这样做会不会有这样的后果,数据库读写时会造成程序集被频繁的刷新,也会Session和Application不断丢失。
2005-02-05 17:25:00 | [匿名:小刀]
#re: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
果然有效果!!
very good!!!
2004-12-09 14:59:00 | [匿名:老郭]
#回复: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
to 蝈蝈俊(ghj1976 ):

严格的说,思归给出的方案是更好的:即将 Access 放到 web 目录之外,使它不能通过 URL 访问到;如果还不相信,再设法加上 NTFS 权限设置关卡。

稍微大一些的企业都会选择更专业的数据库服务器,比如 SQL Server / Oracle 等。基于 Access 数据库的 web 程序的使用者往往是个人,或者是小型企业,他们租用的是目前市场中流行的三四百元到七八百元不等的虚拟主机。

这些虚拟主机往往无法接触到 NTFS 权限操作,甚至连 IIS 也难得接触到,使得很多在自己机器上很容易的东西变的很头疼。这也是为什么在 google 上面搜索“Access 防下载”能够看到一大堆链接的原因。

我文中提到的方法主要适用于他们。(我也有这样的空间。)

目前市面上的此类型虚拟主机,NTFS权限往往是“Everyone完全控制”,IIS默认设置。
2004-03-04 22:46:00 | [匿名:破宝]
#回复: ASP.NET 中防止 Access 数据库被下载的几种选择 编辑
我是把数据库改名成gbook.config...
2003-12-06 12:42:00 | [匿名:tSoS]
博客主人设置本博客不允许匿名用户发表言论,请登录后再试

Powered by: Joycode.MVC引擎 0.5.2.0