新手asp编程的基本法则与常见错误注意事项(4)


可见,即使数据库名字起得再怪异,隐藏的目录再深,ASP源代码失密后,也很容易被下载下来。
如果使用ODBC数据源,就不会存在这样的问题了:conn.open "ODBC-DSN名" ,不过这样是比较烦的,目录移动的话又要重新设置数据源了!

7:添加数据库名的如MDB的扩展映射
这个方法就是通过修改IIS设置来实现,适合有IIS控制权的朋友,不适合购买虚拟主机用户(除非管理员已经设置了)。这个方法我认为是目前最好的。只要修改一处,整个站点的数据库都可以防止被下载。无须修改代码即使暴露目标地址也可以防止下载。

设置:
在 IIS属性---主目录---配置---映射---应用程序扩展那里添加.mdb文件的应用解析。注意这里的选择的DLL(或EXE等)似乎也不是任意的,选择不当,这个MDB文件还是可以被下载的,  注意最好不要选择选择asp.dll等。你可以自己多测试下
这样修改后下载数据库如:http://bbs.bccn.net/data/dvbbs6.mdb。就出现(404或500等错误)

8:使用.net的优越性
动网的木鸟就写过一个防非法下载文件的“WBAL 防盗链工具”。记得本论坛曾经也有位牛人也发表过数据库防下载的插件,是.dll的加载到IIS里的。
不过 那个只实现了防止非本地下载的 ,没有起到真正的防下载数据库的功能。不过这个方法跟第5种差不多
可以通过修改.NET文件,实现本地也不能下载!

这几个方法中,只有第7和8个是统一性改的,一次修改配置后,整个站点的数据库都可以防止下载,其他几个就要分别修改数据库名和连接文件,比较麻烦,不过对于虚拟主机的朋友也只能这样了!

其实第6种方法应该是第5种方法的扩展,可以实现特殊的功能,但对于不支持.net的主机或者怕设置麻烦的话,还是直接用第5种方法了,而且默认情况下第6种方法,依然可以通过复制连接到同主机的论坛或留言本发表,然后就可以点击下载了(因为这样的引用页是来自同主机的)

这几个方法各有长短,请自己选择性地使用。这些方法也不是绝对的安全,还需要网站管理员平时注意一些系统的安全,以及写ASP代码本身的安全 ,否则依然有可能被人下载或者修改数据库!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/2723.html