防止ACCESS数据库被下载的9种方法(4)_Access数据库教程
推荐:高手支招ASP及Access的安全隐患及对策 随着Internet的发展,Web技术日新月异。继通用网关接口(CGI)之后,“ASP”作为一种典型的服务器端网页设计技术,被广泛地应用在网上银行、电子商务、搜索引擎等各种互联网应用
1.4 继续实验,发现错误已解决,那么上面这个权限就是我们需要放开的"最低权限".
(a) 如果 db1.mdb 是 Access 2000 创 建的数据库,我们会发现一个小问题:生成的 *.ldb 文件不会自己删除,访问后该文件依然存在,但这个 问题不会影响 ASP.NET 的正常运行。
(b) 如果 db1.mdb 是 Access XP 创建的 数据库,没有出现上面类似问题。
(c) 原因初步分析:我们仅仅是给了 ASPNET 以写入文件夹的权限,没有给它修改的权限 ,所以文件一旦写入,便无法修改其内容,*.ldb 也就删除不掉了。
如果非要解决这个问题,进一步放开权限为:a) D:\wwwroot\test\data\ 文件夹给用户ASPNET以 如下权限:允许 拒绝完全控制 &n bsp; □ & nbsp;□修改 &nbs p; &nbs p;√ □读取及运行 & nbsp; √ □ ;列出文件夹目录 ; √ □读取 &nbs p; &nbs p;√ □写入 &nbs p; &nbs p;√ □
b) D:\wwwroot\test\data\db1.mdb 文件本身给用户ASPNET以如下权限:√ 允许将来自父系的可继承权限传播给该 对象
1.5 附带着,实验另一种情形:我们把 db1.mdb 在 Acce ss 打开编辑,同时访问 ASP.NET.
(a) 如果 db1.mdb 是 Access 2000 创 建的数据库,我们发现并没有出现什么问题。
(b) 如果 db1.mdb 是 Access XP 创建的 数据库,出现如下错误:
"/zhao"应用程序中的服务器错误。
---------------------------------------------
不能使用 ;文件已在使用中。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误 以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.OleDb.OleDbException: 不能使用&nbs p;;文件已在使用中。
(c) 原因初步分析:Access 数据库是单用户单线程的数据库,我们在 Access&n bsp;里面打开编辑数据库文件时其实是以当前 Windows 用户(比如Administrator) 身份打开数据库,而 ASP.NET 默认使用的是 ASPNET 虚拟用户(隶属于 Users 组),级别低于 Administrator,无法和 Adminis trator "抢夺"权限,所以出现冲突错误。至于 Access 2000 忽略 这个问题的情形我们也不必做讨论了,可能是 Access 2000 没有考虑那么多因素吧。& nbsp;
1.6 再附带一种情形:将 db1.mdb 的属性改为"只读",无论是&nbs p;Access 2000 还是 Access XP 都将分别出现与& nbsp;1.2 中各自的错误相同的错误提示。
分享:ASP完美转化ACCESS为SQL数据库连接其实两者基本通用 步骤很简单3步: 1,转化MDB数据库到SQL SQL工具里就有 2, 更改数据库链接字串 以下为代码: 以下为引用的内容: Set Conn=Server.
- 相关链接:
- 教程说明:
Access数据库教程-防止ACCESS数据库被下载的9种方法(4)。