如何防止ACCESS数据库被下载

来源:网络  时间:2009年01月07日

\test\data\db1.mdb 文件本身给用户ASPNET以如下权限;

允许 拒绝
完全控制 &n bsp; □ □
修改 &nbs p; &nbs p;□ □
读取及运行  √ □ ;
列出文件夹目录 ; √ □
读取 &nbs p; &nbs p;√ □
写入 &nbs p; &nbs p;√ □
 
  1.3 放开权限后继续实验

  (a)如果db1.mdb是Access2000创建的数据库,出现如下错误: "/test"应用程序中的服务器错误。

  不能锁定文件。

  说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

  异常详细信息:System.Data.OleDb.OleDbException:不能锁定文件。

  (b)如果db1.mdb是AccessXP创建的数据库,没有出现错误。

  (c)原因初步分析:我们发现在打开Access数据库时,同时会在所在目录生成一个同名的*.ldb文件,这是一个Access的锁定标记。鉴于此,我们猜测,用户ASPNET访问Access数据库时,也需要生成一个锁定标记,而该目录没有允许其写入,因此出错。至于AccessXP创建的数据库为什么没有这个错误,原因还不得而知。

  我们进一步放开权限,

  a)D:\wwwroot\test\data\文件夹给用户ASPNET以如下权限:

允许 拒绝
完全控制 &n bsp; □ □
修改 &nbs p; &nbs p;□ □
读取及运行  √ □ ;
列出文件夹目录 ; √ □
读取 &nbs p; &nbs p;√ □
写入 &nbs p; &nbs p;√ □

  b) D:\wwwroot\test\data\db1.mdb文件本身给用户ASPNET以如下权限:

  √允许将来自父系的可继承权限传播给该对象

  1.4继续实验,发现错误已解决,那么上面这个权限就是我们需要放开的"最低权限"。

  (a)如果db1.mdb是

最新评论
查看所有评论
发表评论
评论内容:已关闭评论。
用户名: 验证码:
查看所有评论