防止ACCESS数据库被下载的9种方法(2)

上一篇 / 下一篇  2008-03-28 20:07:40 / 个人分类:技术文章

5.数据库放在Web目 录外或将数据库连接文件放到其他虚拟目录下如你的WEB目录是e:\webroot,可以把数据库放到e:\data这个文件夹里,在e:\ webroot里的数据库 连接页中修改数据库连接地址为:"……/data/数据库名" 的形式,这样数据库可以正常调用,但是无法下载的,因 为它不在WEB目录里!这个方法一般也不适合购买虚拟空间的用户。 
6.使用ODBC数据源。 
ASP等程序设计中,如果有条件,应尽量使用ODBC数据源,不要把数据库名写在程序中,否则,数据库名将随ASP源代码 的失密而一同失密,例如: DBPath = Server.MapPath("……/123/ abc/asfadf.mdb ") 
conn.open "driver={Microsoft Access Driver&nb sp;(*.mdb)};dbq="& DBPath可见,即使数据库名字起得再怪异,隐藏的目录再深,ASP源代码失密后,也很容易被下载下来。如果使用ODBC数据源,就不 会存在这样的问题了:  conn.open "ODBC-DSN名" ,不过这样是比较烦的,目 录移动的话又要重新设置数据源了,更方便的方法请看第7,8法! 
7. 添加数据库名的如MDB的扩展映射这个方法就是通过修改IIS设置来实现,适合有IIS控制权的朋友,不适合购买虚拟主机用户(除非管理员已经设置了)。 这个 方法我认为是目前最好的。只要修改一处,整个站点的数据库都可以防止被下载。无须修改代码即使暴露目标地址也可以防止下载。我们在IIS属性 —— 主目录——配置——映射——应用程序扩展那里添加。mdb文件的应用解析。注意这里的选择的D LL(或EXE等)似乎也不是任意的,选择不当,这个 MDB文件还是可以被下载的, 注意最好不要选择选 择asp.dll等。你可以自己多测试下这样修改后下载数据库如:http: //www.test.com/data/dVBbs6.mdb.就出现(404或50 0等错误) 
8: 使用。net的优越性动网的木鸟就写过一个防非法下载文件的"WBAL 防盗链工具".具体可以登陆http: //www.9seek .com/WBAL/ ;不过 那个只实现了防止非本地下载的 ,没有起到真正的防下载数据库的功能。不过这个方法已经跟5法差 不多可以通过修改。NET文件,实现本地也不能下载! 
这几个方法中,只有第7和8个是统一性改的,一次修改配置后,整个站点的数据库都可以防止下载,其他几个就要分别修改数据库 名和连接文件,比较麻烦,不过对于虚拟主机的朋友也只能这样了! 
其 实第6个方法应该是第5个方法的扩展,可以实现特殊的功能,但对于不支持。net的主机或者怕设置麻烦的话,还是直接用第 5个方法了,而且默认情况下第 6个方法,依然可以通过复制连接到同主机的论坛或留言本发表,然后就可以点击下载了(因为这样的引 用页是来自同主机的) 。
9.利用NTFS分区的文件权限设置(by percyboy) 
我们已经知道,ASP.NET 中使用 ADO.NET 访问数据库,通过 OleDb 的连接可以访问 Access 数据库— —我们非常常用的低端数据库之一。本文讨论了 ASP.net  中可能看到的若干错误提示,从中看到Access 2000 和 Access XP 创建的数据库文件 ,在访问出现错误时会出现不太相同的错误提示。 希望对大家有所帮助。另一个要点是,希望通过此文,使大家对 ASP. NET 中  Access 数据库文件的 NTFS 权限设置有所新的认识 .

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-08-30  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 70171
  • 日志数: 24223
  • 建立时间: 2007-12-06
  • 更新时间: 2008-06-15

RSS订阅

Open Toolbar