谈使用Access数据库应对的安全策略
程序员文章站
2022-06-08 11:46:24
...
Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。 Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲
Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。
Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。
其实Access 也是微软公司另一个通讯程序的名字,想与 ProComm 以及其他类似程序来竞争。可是事后微软证实这是个失败计划,并且将它中止。数年后他们把名字重新命名于数据库软件。
攻略篇:一、发挥你的想象力 修改数据库文件名,从理论上讲不一定能防止被.
修改数据库名,其目的就是防止我们猜到数据库而被下载.
但是万一我们猜到数据库名,就直接可以下载了.所以这不能保证100%不能被下载.
猜解数据库的常用的办法就是写程序去猜解数据库名,判断WEB返回的是不是404错误,如果提交一个MDB文件,没有返回404错误,那就猜对了,就直接下载.
当然这有一定的局限性,因为如果数据库名非常复杂,会产生大量的日志.管理员可能早 发现了.并且还有猜解的时间会变得很长.
二:数据库名后缀改为ASA、ASP等,不一定能防止被下载.
IIS在通过asp.dll处理.asp扩展名文件的时候,对以外的内容,不做任何处理就直接输出,但是MDB文件中如果没有之类的ASP标实符,我们直接在IE中输入URL返回在IE中的数据,就是MDB文件的数据,我们直接用FLASHGET之类的软件就可以下载,下载后改名这后就可以用了.
如图1:
三: 数据库名前加“#”,一定能防止被下载.
有些人误认为:
"只需要把数据库文件前名加上#、然后修改数据库连接文件(如conn.asp)中的数据库地址。原理是下载的时候只能识别 #号前名的部分,对于后面的自动去掉."
这样是比较安全的.这只是对于一般的人无法下载.因为他们不知道,也没有去了解有关IE编码的技术.在编码中我们用%23来代替#号.所以我们如果有一个数据库是:
http://www.xxx.com/data/#datapro.mdb
我们直接在IE中输入:
http://www.xxx.com/data/%23datapro.mdb
就可以下载了.
如图2:
推荐阅读
-
C#使用ADO.Net部件来访问Access数据库的方法
-
ASP下使用Access数据库需要注意的18条安全法则
-
C#使用ADO.Net部件来访问Access数据库的方法
-
IIS7下使用ASP.NET连接ACCESS数据库时提示如下错误的解决方法
-
长期使用中型Access数据库的一点经验与缺点
-
Access数据库提示OleDbException (0x80004005): 操作必须使用一个可更新的查询
-
c#程序中使用"like“查询access数据库查询为空的问题
-
使用ADO,多线程访问ACCESS数据库的开发。
-
长期使用中型Access数据库的一点经验与缺点
-
在MFC里面使用ADO访问微软的ACCESS数据库 实现增删改查