关闭顶部展开顶部

防止ACCESS数据库被下载的9种方法(3)_Access数据库教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:高手支招ASP及Access的安全隐患及对策
  随着Internet的发展,Web技术日新月异。继通用网关接口(CGI)之后,“ASP”作为一种典型的服务器端网页设计技术,被广泛地应用在网上银行、电子商务、搜索引擎等各种互联网应用

  9.利用NTFS分区的文件权限设置(by percyboy)

  我们已经知道,ASP.NET 中使用 ADO.NET 访问数据库,通过 OleDb 的连接可以访问 Access 数据库— —我们非常常用的低端数据库之一。本文讨论了 ASP.NET 中可能看到的若干错误提示,从中看到&nb sp;Access 2000 和 Access XP 创建的数据库文件 ,在访问出现错误时会出现不太相同的错误提示。希望对大家有所帮助。另一个要点是,希望通过此文,使大家对 ASP. NET 中 Access 数据库文件的 NTFS 权限设置有所新的认识 .

(一)实验过程

  为了叙述方便,举个具体例子做个实验:应用程序为 /test ,数据库存放在 D:\wwwr oot\test\data\db1.mdb,我们已经知道在 ASP.NET 中是以一个叫做 ;ASPNET 虚拟用户的身份访问数据库的,我们需要给这个账户以特定的 NTFS 权限才能 使 ASP.NET 程序正常运行。

  为了得到最严格的 NTFS 权限设置,实验开始时我们给程序最低的 NTFS 权限 :

  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.1 对于某个只包含有"SELECT"命令的aspx程序,上述权限设置运行时无障碍,即:上述权限 已经满足这类程序的运行了。

1.2 对于包含有"UPDATE""INSERT""UPDATE"等命令的aspx程序, ;

  (a) 如果 db1.mdb 是 Access 2000 创 建的数据库,出现如下错误:

  "/test"应用程序中的服务器错误。

---------------------------------------

Microsoft Jet 数据库引擎打不开文件D:\wwwroot\test\data\.&n bsp;它已经被别的用户以独占方式打开,或没有查看数据的权限。

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

  异常详细信息: System.Data.OleDb.OleDbException: Microsof t Jet 数据库引擎打不开文件D:\wwwroot\test\data\. 它已经被 别的用户以独占方式打开,或没有查看数据的权限。

  (b) 如果 db1.mdb 是 Access XP 创建的 数据库,出现如下错误:

  "/test"应用程序中的服务器错误。

----------------------------------------------

  操作必须使用一个可更新的查询。

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

  异常详细信息: System.Data.OleDb.OleDbException: 操作必须使用一个 可更新的查询。

  (c) 原因初步分析:因为包含有"UPDATE""INSERT""UPDATE"等命令,需要对数据库文件本身进 行写入操作,所以上述权限不能满足此需求,我们需要进一步放开权限。

  我们放开一些权限,a) D:\wwwroot\test\data\ 文件夹不变: & nbsp;

  b) D:\wwwroot\test\data\db1.mdb 文件本身给用户ASPNET以如下权限:允许 拒绝完全控制 &n bsp; □ & nbsp;□修改 &nbs p; &nbs p;□ □读取及运行 & nbsp; √ □ ;列出文件夹目录 ; √ □读取 &nbs p; &nbs p;√ □写入 &nbs p; &nbs p;√ □

  1.3 放开权限后继续实验,

(a) 如果 db1.mdb 是 Access 2000 创 建的数据库,出现如下错误:

  "/test"应用程序中的服务器错误。

------------------------------------------

不能锁定文件。

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

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

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

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

  我们进一步放开权限,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以如下权限:√ 允许将来自父系的可继承权限传播给该 对象

分享:ASP完美转化ACCESS为SQL数据库连接
其实两者基本通用 步骤很简单3步: 1,转化MDB数据库到SQL SQL工具里就有 2, 更改数据库链接字串 以下为代码: 以下为引用的内容: Set Conn=Server.

来源:模板无忧//所属分类:Access数据库教程/更新时间:2008-08-22
loading.. 评论加载中....
相关Access数据库教程
闂佹眹鍩勯崹閬嶆偤閺囶澁缍栭柛鈩冪⊕閳锋帗銇勯弴妤€浜惧銈忕秶閹凤拷
濠电偛顕慨顓㈠磻閹炬枼妲堥柡鍌濇硶婢ф稒淇婇懠顒夆偓婵嬫煟閵忊晛鐏查柟鍑ゆ嫹
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径瀣閻庣懓瀚竟鍡欐崲娑斾線鏌i姀鈺佺伈闁瑰嚖鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勵吋闂佽鍨庨崟顓фК闂佽閰eḿ褍螞濞戙垺鍋夐柨鐕傛嫹
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ帒鍊哥敮鍫曞箹鐎涙ḿ鐭掔€规洘绻堥弫鎾绘晸閿燂拷
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ巻鍋撻柛姘儑缁﹪鏁傞崜褏鐓撻柣搴岛閺呮繈鎯屽▎鎴犵=濞撴艾锕ョ€氾拷
闂備浇銆€閸嬫挻銇勯弽銊р槈闁伙富鍣i弻娑樷攽閹邦亞鑳虹紓浣靛妽濡炶棄顕i妸鈺婃晬婵炲棙鍨电粭锟犳⒑閸濆嫬鈧骞婇幘鑸殿潟闁跨噦鎷�
闂備礁鎼崯鐗堟叏妞嬪海绀婂鑸靛姈閻擄綁鎮规潪鎷岊劅婵炲眰鍊曢湁闁挎繂妫欑粈鈧梺鍛娚戦悧鐘茬暦閹扮増鏅搁柨鐕傛嫹
婵犵妲呴崹顏堝礈濠靛棭鐔嗘俊顖氬悑鐎氱粯銇勯幘瀵哥畺閻庢熬鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓奸崶銊ヮ伕濡炪倖鎸荤换鍐偓姘虫珪娣囧﹪顢涘Δ鈧晶鍙夌節椤喗瀚�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洦鍓熼、娆撳礂閻撳簶鍋撻悽鍛婄厸闁割偅绻勫瓭婵犳鍣幏锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾闁哄苯鎳橀崺鈧い鎺嗗亾闁宠閰i獮鎴﹀箛闂堟稒顔嗛梻浣告惈鐎氭悂骞忛敓锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洩缍侀獮瀣攽閸偂绱�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勭厬闂佺懓鐡ㄧ换鍕敂鐎涙ü绻嗘い鏍殔婢у弶绻濋~顔藉
闂佽楠搁崢婊堝礈濠靛鍋嬮柟鎯版閻鈹戦悩鎻掓殭闁奸潧缍婇弻銈夋嚍閵夈儱顫嶉梺缁樼壄缂嶄礁鐣峰▎鎾存櫢闁跨噦鎷�
UB闂備礁婀辩划顖炲礉濡ゅ懐宓侀柛銉㈡櫆鐎氭岸鎮楀☉娅虫垿锝為敓锟�
闂備浇澹堟ご绋款潖婵犳碍鐒鹃悗鐢电《閸嬫捇鐛崹顔句痪濠电姭鍋撻柨鐕傛嫹
闂佽楠哥粻宥夊垂閸濆嫸鑰块柛銏㈠殰
闂備礁鎲″缁樻叏妞嬪海绀婂璺虹灱閸楁碍绻涢崱妤€顒㈤柛鐐差槹缁绘稓绱欓悩鍝勫帯闂佺ǹ楠忛幏锟�
缂傚倸鍊烽悞锕傛偡閿曞倸鍨傛繝濠傚椤╅攱銇勯幒宥囶槮缂佹彃婀遍埀顒傚仯閸婃繄绱撳棰濇晩闁跨噦鎷�
©2017 www.mb5u.com婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎殿噮鍣i幃鈺呭箵閹烘挸鐦�
闂備浇銆€閸嬫捇鏌熼婊冾暭妞ゃ儻鎷�&闂備礁鎲$敮鎺懳涢弮鍫燁棅闁跨噦鎷�