Access安全性之QA详解[Access防范]
本文“Access安全性之QA详解[Access防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在写这篇文章前首先要感激网友:松木、zengwb、秋季、4432,谢谢他们环绕Access安全性的谈论,现摘录以下:
Q MDB我用[启动]的全部选项都 False,用封面表单启动,同个工作组的用户没受权是不能开打表改正,但他可以另建一个空数据库,举行导入或链接举行改正,若何防备?请赐教!
A 首先应当用MS Access Workgroup Administrator程序成立自己腗DW文件,比方newSystem.mdw,然后成立一个新的帐号比方newAdmin,缺省的有AMDIN和,比方GUEST帐号,然后设置各个帐号的密码.然后以newAdmin帐号登陆,成立数据库,大概导入现有的数据库中的表或窗体等举行开辟.对数据库的安全性举行设置.除了newadmin帐号,将全部的组和用户对该数据库的翻开权限都屏蔽掉,别的权限也宜屏蔽掉.这样的话安全了.这样的话翻开该数据库只能关联上新建的MDW文件,利用newAdmin帐号才能翻开.但是实际利用时当然还应当成立一个运行软件的帐号,比方newUser,(最好不要用缺省的"用户"帐号,这样关联到SYSTEM.MDW上便可以进入,即便你设置密码也不安全,因为COPY一个新的SYSTEM.MDW一样可以关联.)将newUser帐号对各个表的权限呼应的设置,能读写,不能改正计划,对窗体只能运行便可,总之它是用来运行的.屏蔽一切可以改正的权限.这样的话开辟和运行就是两个帐号,但是新的问题就是假如就这样交给用户利用,那么用户就必须知道newUser帐号的密码,那样的话数据就又不安全了,所以还应当用VB大概Delphi做个套子,最简单的写上一句,运行该数据库就行了,比方:strRunShell = "c:\Program Files\Microsoft office\Office\MSACCESS.EXE /nostartup"
strRunShell = strRunShell & "/wrkgrp c:\newSystem.mdw c:\pinewood.mde /user newUser /PWD yourpassword"
RetVal = Shell(strRunShell, vbMaximizedFocus)
当然这只是个意思,在这套子里写写别的也可以,比方查抄ACCESS能否安装了,途径是不是对,是不是注册了等等.(附:用别的一个已经编译成MDE文件的数据库也可以到达如上效果)
Q 用户安全组我也用过,但是我指的安全性主要针对内部人员,表面的高手如林,根本不要谈安全性了.
ACCESS有个致命的弊端(大概我还不会用),它的安全性性能只能用在当前已设安全机制的数据库,对用户新建的数据库根本无用,用户只需用他的帐户登录ACCESS,新建一个*.MDB,再用链接功效便可把后端数据库的表都链接起来(大概前端数据库也可,因为前端数据库的表是链接再后端数据库的表上,他无非是再链接罢了),他只要看懂表的内容,便可以肆意改正了.
其实微软稍改ACCESS让它的安全机制实用全部的数据库而不是当前数据库,我们就不用伤头脑去防备一些初哥儿们,作为我们利用安全机制无非也就防备这些内部利用者的不法改正、破坏罢了.
所以我们需求ACCESS系统级安全机制或office developer edition也有一定的帮忙
A 错错错,"用户只需用他的帐户登录ACCESS,新建一个*.MDB,再用链接功效便可把后端数据库的表都链接起来(大概前端数据库也可,因为前端数据库的表是链接再后端数据库的表上,他无非是再链接罢了),他只要看懂表的内容,便可以肆意改正了."
这段话错!假如ACCESS的安全性真的象贤弟所说的,那我所贴的那些大概都是空谈了.你大概还是没有按照我说贴的实践一番.事实上是不会那样的,因为我是新成立的系统文件(即MDW文件),关联到新的系统文件成立数据库,而此数据库的翻开权限只能由我指定的固定的用户比方NEWUSER才有,所以别人,不管关联到什么系统文件上都是无法用新建的数据库联合上的,假如真是那样,ACCESS早就该淘汰了!
假如你不相信我可以做一个数据库发给你,看你能不能翻开.我1997年开始利用ACCESS做开辟,对我所完成的各种数据库我都要反复测试的,你所说的情形假如可以,我早就积累几十个体人开辟我想破解掉的数据库了....
Q 愚弟还是不懂得:
小弟在文中所指的用户是指内部操作人员,我也做过很多测试:
例:我成立一个安全机制的数据库,系统成立一个MDW文件,我设定一个新的只读工作组及一个普通用户(无管理员权),把系统的用户组不设任何权限,然撤退出ACCESS,选用新的MDW文件,用那个普通用户登录,成立一个新的文件,然后便可导入、链接先前那个已有安全机制的数据库.
A 你大概还是没认真读我的帖子,其实ACCESS的帮忙中有更细致的阐明,非常具体.不过为了完好让你懂得,我就列个傻瓜式的步骤吧,贤弟不要介意,我也是读着傻瓜式的帮忙才逐突变聪明的.
1、先用ACCESS安装目录下的WRKGADM.EXE程序成立一个自己的MDW文件.然后关联上.
2、登陆进ACCESS后,缺省是ADMIN用户,随便成立MDB,改正ADMIN用户密码,成立一个新的帐号,比方PINEWOOD,作为我此后管理变成用,再成立一个NEWUSER,给我今后的用户用.(可以不成立任何组)
3、重新登陆,以PINEWOOD登陆,然后改正密码,即把空密码改正掉.对NEWUSER帐号也反复一次.
4、以PINEWOOD登陆,成立你所需求开辟的数据库MDB源文件,起名字比方MYCODE保存后便可对安全性设置.安全性设置你应当知道在那边吧,菜单里有.将全部ADMIN以及GUEST对MYCODE的任何权限都屏蔽掉,注意,任何权限,不管是对新表还是新模块,还是对数据库的翻开权限,全去掉.然后对全部组对本数据库的全部权限也全屏蔽掉.不能遗漏.假如用户组不屏蔽掉其权限,属于这个组的ADMIN以及GUEST都可以翻开数据库了.
5、然后对PINEWOOD对数据库的权限举行设置,当然,应当是全部权限都有.对NEWUSER权限举行设置,当然对全部表、查询等除了改正计划权限,读写的权限是应当有的,翻开数据库的权限也是应当有的,运行的权限也应当有的.总之这个帐号是给用户用的.
6、然后做开辟,成立表窗体等.你已经做过了,那就导入进来.但这时刻你的数据库是安全的,别人是无法从MYCODE中得到任何东西的.除非知道密码.
7、开辟完后应当是别离数据库,不止到你是不是这样做的,然后让后台的MDB数据库一样的安全.然后编译前台程序为MDE文件.
8、做个EXE文件,我在别的帖子里说了,简单的利用NEWUSER帐号翻开数据库的EXE文件.是给你的用户用的,这样他们除了利用这个EXE利用数据库,没别的办法.
9、然后把MDB放到服务器端,MDE和MDW以及EXE公布给用户利用.当然MDE和MDB的关联关系是事前成立并调试好的.编程中若何处理就不用说了.
10、做到这里就充足了,关于非常需求安全的开辟者来说本来是还有一些工作要做的.可拜见我的别的帖子."注意"里说了一些.那些问题都是用到了自然会用,未用到的还是没用.碰到哪个问题办理哪个,贤弟认为然否?
Q 我的天?!!莫非我要同时复制三个文件,mdb & mdw & exe??? ...
先不说vb 的exe可以很便利的反编译,难作别人就不会把mdw文件先删除,然后再翻开mdb文件吗?
假如说access的安全性仅限于此,那真的叫"完好安全"了.
别的问一下,我需求更"安全"的办法有吗?前两次说的办法只要略微懂一点电脑知识的人便可以办理了.
A 关于文件同享方法,服务器端只需求安装MDB数据库,客户端需求安装的是EXE、MDW和MDE文件.
注意:
1、是MDE文件,而不是MDB,数据库应当是放在后端的,而MDE文件是编译过的,效率高,并且即便密码被破解也不会泄露源代码.
2、假如用户删除了MDW文件,那么就根本无法拜候数据库了,假如不用我的MDW文件就可以拜候我的MDB文件,那我谈什么安全.
3、EXE文件未必要用VB,VC、BC、DELPHI都可以,再说VB5以上的版本我还没据说可以反编译的,也没找到呼应的工具.
4、目前破解ACCESS数据库的用户级安全密码的工具也不少,但是对MDW文件的用户是可以处理的,可以使之即便破解了MDW文件,也无法得到利用MDE源程序文件MDB的权限,更何况MDE源程序文件MDB他是根本无法得到的,因为根本就未公布.无处得到,除非你计算机让人随便用.所以程序是必定安全的,数据库的数据的安全性虽是相对安全的,但是也是充足的.
以上是“Access安全性之QA详解[Access防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |