Pages 1 / Total 1 1
已被查看265次    只看楼主
[转帖]建立Access 数据库的安全门2
主题
司徒白  




等级:究级天王
积分:147211
经验:52255
魅力:94956
威望:300
财富:21539
金钱:0.00元
帖子:391
注册:2007-04-06 15:25
楼主 资料 短消息
[转帖]建立Access 数据库的安全门2 2007-06-06 15:00
在用户打开数据库时,Microsoft Access根据用户输入的用户名称和密码,在工作组信息文件的MsysAccounts表中查找该用户的SID,若未找到则提示帐户无效并让重新输入;若找到了用户的SID,则在MsysGroups表中查找到用户所属组的SID。根据找到的用户和组的SID,再去数据库(.mdb)的MSysACEs表中查找对应的数据库对象ID和其权限信息,由此可以确定用户和组可以访问什么数据库对象及有什么操作权限。

  4、用户与工作组

  在默认的工作组信息文件System.mdw中,默认的有三个帐户:Admin、Creator、Engine,其中Creator和Engine是Microsoft Jet数据库引擎内建的,用户无法干涉。管理员帐户Admin,则是唯一的默认帐户,拥有对数据库中所有对象的全部权限,在中文Access中,帐户名可以是“管理员”也可以是英文下的Admin。

  在默认的工作组信息文件中,默认设置了两个工作组:管理员组和用户组。

  在默认状态下,用户启动Access时使用的是Admin帐户,且无须输入用户名称和密码,因为其名称Admin默认,而初始密码为空。若:用此默认方式启动Access,然后点击菜单工具—安全—用户与组帐号,在用户与组帐号窗口中,选更改登录密码选项卡,在旧密码输入框中空着,新密码、验证输入框中填入新密码,就可以增设了管理员帐号的新密码。如果不是默认登录方式进入的,只须在旧密码输入框中填入旧密码,就可以更改密码。对于其它的用户,也可以同样的更改自己的密码。设置了密码后,再启动Access打开数据库,就会要求输入用户帐号了。

  管理员帐号的SID,对于所有的工作组信息文件都是一样的,这意味着:无论是用哪一个工作组信息文件关联到Access启动系统,都可以使用管理员帐号去访问所有本机的Access数据库。

  创建对象的用户,是该对象的所有者,拥有全部权限。即使被管理员撤消了权限,也可以进入用户与组权限对话框,给自己指定权限。管理员不能永久彻底撤消对象所有者的权限,但是可以改变对象的所有者。所以管理员除了要控制好权限外,还要适时的改变对象的所有者,才能保证安全。

  5、用户与工作组的管理与权限

  设置工作组,是为了分配和管理权限的方便,可以将用户划分分配到工作组,然后对工作组授予权限,而不用一个个的对用户授权。默认的管理员组和用户组,一般就已经可以满足使用了,默认都拥有全部权限。管理员组的SID对所有的工作组信息文件都相同,而用户组的SID对所有工作组信息文件都不同。所有用户都属于用户组。

  管理员拥有全部的权限,而用户的权限最好是来自于用户组而不是单独授权。为了安全,不应该让用户组拥有全部权限。

  对用户和组的管理,可以按如下步骤:

  启动Access,必须用管理员的帐号登录。

  打开要管理的数据库。

 点击菜单:工具—安全—用户与组帐号,进入用户与组的管理窗口,在其中可以新建用户、新建组、分配用户到某个组、更改登录密码、删除用户、删除组、清除用户密码等。

  点击菜单:工具—安全—用户与组的权限,进入用户与组权限管理窗口,在其中可以设置每个用户、对什么对象、有什么操作权限,还可以更改对象的所有者。在用户、组、对象类型的选择中可以切换设置设置方式。

  为了更彻底的安全,可以单独建立一个管理员帐号,授予全部权限,而将默认的管理员帐号删除(从管理员组移出,不能彻底删除)。然后删除管理员和用户组的全部权限。将所有对象的所有者该为新建的管理员帐号。这样可以保证只有新建的管理员帐号才能访问数据库。

  撤消用户级安全性:将管理员归属于管理员组,密码为空;将数据库所有对象的所有权限分配给用户组;将全部对象的所有权归属于管理员。

  6、用户级安全性向导

  可以利用用户级安全性向导来建立数据库的用户级安全性。在运行向导之前先将数据库备份以防万一。从菜单:工具—安全—设置安全机制向导,可以启动向导。按照提示进行设置操作,可以设置好组、用户、权限等各种安全性。

  四、用.MDE文件保护数据库

  MDE是一种经过编译的特殊形式的数据库,这种格式下,大多数对象只能执行而不能修改。也不能进行对象的导入和导出。

  点击工具—数据库实用工具—生成>MDE文件,可以进入保存窗口。

  指定好原始的数据库位置和名称,指定要保存的MDE文件的位置和名称,点击保存即可完成。

  Access数据库的安全性,从根本上来说不如SQL Server一类的服务器级别数据库那么完善。但是对于桌面上的数据库管理应用来说,这些安全保密性能已经可以满足使用要求了。



IP:125.*.*.*     顶部
论坛交流 ›› Access ›› [转帖]建立Access 数据库的安全门2