|
初级会员
 
- UID
- 3806
- 帖子
- 191
- 积分
- 184
- 金币
- 14
- 注册时间
- 2007-2-23
|
1#
大 中
小 发表于 2007-9-27 10:04 只看该作者
安全使用Access数据库
| Access数据库使用比较广,原因很多。Access对于大多数人来说易于使用。利用Access中的各种向导和对话框,创建和设置数据库的难度比其他数据库(如 SQL SERVER)小得多。大多数公司都可以支付得起Microsoft Access ,而对于SQL SERVER 之类的数据库来说,仅仅该软件的本身就不可能走进小规模公司。 |
| 但是,Access 并不是一个数据库服务器,数据的安全问题不能保障,所以,我们有必要作一些特殊处理。 |
| 在Access 中,数据安全是通过我们自己的数据数据库和一个用户数据库来实现的。数据数据库包含我们自己的数据库表,查询,表单,报表,宏以及模块。用户数据库包含用户的姓名,身份,用户组以及组群关系的信息。所有的用户数据库用于对用户及其密码进行有效性效验,并提供组群关系的信息。数据数据库然后提供其自身范围内的特定权限。 |
| 我们上面提到,用户数据库中保存用户登陆的信息。我们首先创建一个新的用户数据库,然后利用该数据库提高我们数据数据库的安全。 |
| 启动Microsoft Access,不要打开数据库。在“工具”——〉“安全”下,找到“工作组管理员”,打开,将看到如下对话框: |
| 在该对话框中,需要提供将要创建的用户数据库名称,然后还要提供该数据库的组织形式以及相应的ID。完成这些工作后,点击“确定”按钮。 |
| 然后,提供将要创建的用户数据库的位置以及文件名称。确定后,点击“确定”按钮,然后将看到如下对话框: |
| 如果输入的信息正确,则点击“确定”,否则,点击“更改”。 |
| 启动Access,但是不要打开数据库。在菜单里,依次选择“工具”——〉“安全”——〉“用户和组”,在弹出的对话框中选择“更改登陆密码”: |
| 我们在此之前进入Access不需要密码登陆。为管理员账户提供一个新的密码,然后点击“确定”按钮。关闭Access再重新打开。这次Access就会提示用户输入姓名和密码。 |
| 我们通常登陆的缺省的超级用户(管理员)是每次安装Access时自动分配的账户。即使我们在用户数据库自己的拷贝中更改了该密码,其他人得到我们的数据库后,也可以将其放置在计算机上,利用缺省的管理员账户,不需要密码就可以访问其中的数据。所以,我们需要创建一个新的管理员账户。 |
| 启动Access,不要打开任何数据库。依次选择“工具”——〉“安全”——〉“用户和组”菜单项,在弹出的对话框中选择“用户”标签页,如图所示: |
| 点击“新建”按钮,提供新增加的系统管理员的名称(newadmin)及其标识(newadmin)。新添加的管理员属于管理员组。然后在“组成员关系”列表中将“管理员组”高亮显示,再点击“添加”。 |
| 点击“确定”后,这个newadmin就添加进去了。关闭Access后再重新打开,并以newadmin用户登陆,注意密码为空,但不要打开数据库,为newadmin 添加密码。方法同第二步。 |
| 我们不能简单地删除原来的admin(管理员)账户。但是我们可以从 管理员组中删除管理员账户,这样就不能用该账户来管理新的数据库。 |
| 以newadmin账户登陆,不打开数据库,依次选择“工具”——〉“安全”——〉“用户和组”菜单项,在弹出的对话框中选择“用户”标签页,然后在该标签页上的“用户”框中的“名称”列表框中选择“管理员”,然后在“组成员关系”框中,高亮显示“隶属于”列下的“管理员组”,点击“移去”。 |
| 因为原来的数据库是在非保护环境下用缺省的管理员账户创建的,所以没有办法将数据库的所有权从管理员账户中删除。因此,我们需要创建一个新的数据库,并将非保护环境下的数据库中的信息引入到这个新的数据库中。另外,有些时候我们可能还要移动或删除该非保护环境下的数据库。 |
| 以newadmin账户注册,并创建一个新的数据库(安全数据库)。然后在“文件”菜单中,选择“获取外部数据”。 |
| 至此,我们已经创建了一个新的账户,并将其分配在管理员组群里,同时将管理员账户从该组中移出。我们已经创建了安全数据库并向其中引入了对象。但是管理员用户仍然在“用户组”中,该用户仍然具有访问数据库的权限。下一步需要删除这种权限。 |
| 以newadmin账户登陆到access中,打开安全数据库。依次选择“工具”——〉“安全”——〉“用户和组权限”菜单项。在列表中选“组”,对象类型中选“数据库”,“用户明/组名”为“用户组”,“对象名称”为“当前数据库”,取消所有权限,按“确定”。 |
| 这样,管理员账户就无法访问该安全数据库了。下面测试该安全数据库的安全性,首先,退出Access,然后以“管理员“账号”登陆,打开该安全数据库,结果如下: |
| 该错误信息表明管理员没有访问该安全数据库的权限了。 |
| 该数据库已经具有了访问的安全保证,但是仍然存在一个问题。Access内部是用纯文本保存其数据库中的大多数数据的。所以通过文本编辑器人们仍然可以非常容易查看数据库中的内容,所以,我们还要对数据库加密. |
| 用newadmin帐户登录到Access中,打开安全数据库,依次选择“工具”——》“安全”------à”加密/解密数据库”菜单项. |
|