MDW (Access97前是 MDA)中存储着用户对 MDB 中数据库对象设置的权限信息。
Access 97 到 Access 2003 版本,每次打开 MDB / MDE / ADP / ADE 时都会调用 mdw 文件。如果你没有定义过权限则系统调用默认的 system.mdw 用户组权限文件,否则系统将根据你的命令行设置(在快捷方式的目标里面)调用你指定的 MDW 文件。
所以如果你错误设定了整个系统的权限,那么只要删除 system.mdw 文件就可以恢复 Access 系统的默认权限。但是你以前定义的 MDB 都有可能被关联到那个错误的 system.mdw 上去,所以不能直接删除,应该先备份后删除。
理解工作组信息文件在 Access 安全性中的作用
适用于
中级用户:要求具备基本的宏、编码和互操作技能。
本文仅适用于 Microsoft Access 数据库 (.mdb)。
有关本文的 Microsoft Access 2000 版本,请参阅 305541。
有关本文的 Microsoft Access 97 版本,请参阅 303941。
概要
本文说明工作组信息文件在 Microsoft Access 安全性中的作用和关系。
更多信息
在您安装 Microsoft Access 后第一次打开一个数据库时,将会创建一个名为 System.mdw 的文件。这是默认的工作组信息文件。
默认情况下,在运行 Microsoft Windows 2000 的计算机上,将在以下路径中的用户配置文件中创建 System.mdw 文件。
注意:Application Data 文件夹是一个隐藏文件夹。
C:/Documents and Settings/<user name>/Application Data/Microsoft/Access/System.MDW
在运行 Microsoft Windows 98 的计算机上,将在以下路径中创建默认 System.MDW 文件:
C:/Windows/Application Data/Microsoft/Access/System.MDW
当您使用 Microsoft Access 数据库 (MDB) 时,工作组信息文件是一个必需的组件。此文件对于 Microsoft Access 的运行时安装和完全安装都是必需的。此文件是保证 Microsoft Access 的安全的一个重要组件。
如果您要开发数据库应用程序,充分理解工作组信息文件非常重要。最好在开发过程的最后阶段在 Access 中应用安全设置。在此之前,您可以在未设置安全机制的数据库中开发数据库应用程序。
工作组是在多用户环境中共享数据的一组用户。当对数据库实现安全机制时,用户和组帐户将记录在工作组信息文件中。用户密码也存储在工作组信息文件中。
重要说明:如果您在数据库中设定 Access 安全机制,Microsoft 建议您将工作组信息文件的一个备份副本存放在一个安全的位置。如果该文件丢失或被损坏,则快速恢复工作组信息文件的唯一方法就是从备份副本中还原该文件。如果您没有备份副本,则必须使用最初指派的相同个人 ID 重新创建用户和组帐户。如果没有完全按照原始文件的创建方式创建新工作组信息文件,您将无法使用工作组文件打开数据库。
甚至在没有对数据库设置安全机制的情况下,Access 也会使用工作组信息文件。可使用存储在工作组信息文件中的默认管理员用户帐户打开所有未设置安全机制的数据库。如果您为管理员用户分配一个密码,则当您重新打开数据库时将会出现登录提示。
有关保护 Microsoft Access 数据库安全的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
289885 ACC2002: Overview of How to Secure a Microsoft Access Database
Access 安全性基于组、用户和数据库对象(窗体、报表、查询等等)的层次结构。
组和用户
组是通常(但不是始终)在共享数据库中具有相同角色的用户集合。您可能希望为某些用户赋予更多的控制权。要管理您希望赋予不同权限级别的用户,建议您根据用户的角色将他们放在单独的组中,并为该组指派权限,而不是为单个用户指派权限。
用户是将要使用整个或部分数据库的个人。一个用户可以属于多个组。请务必记住,如果任一用户是两个或更多组的成员,则该用户所具有的权限比指派给他们所属的任一组的权限都大。
工作组信息文件会存储用户和组信息。每个用户帐户都是使用用户登录名、密码和个人 ID 创建的。每个组都是使用组名和工作组 ID 创建的。这些信息存储在工作组信息文件中。
数据库对象
每个数据库对象都具有一个所有者和一系列权限,这些权限必须在组级别或单个用户级别设置。
如果数据库管理员创建了组,以便将具有相同职能并且对所有对象都具有相同权限的用户聚集在一起,那么在组级别指派权限要比对整个公司的单个用户帐户进行管理方便得多。如果为组指派权限,则这些权限将扩展到该组的每个成员。因此,数据库管理员可以轻松地设置一个新用户帐户,将该用户指派到适当的组,并允许该新用户立即进行操作。组权限会自动控制该用户的活动。
权限
向组和用户授予权限,以控制他们使用数据库中的每个表、查询、窗体、报表和宏的方式。利用这些权限,用户或组可以创建、查看、修改或删除已创建的对象。用户可继承他们所属的组的权限。
注意:最好不要允许用户在生产数据库中进行设计更改。Microsoft 建议只对开发人员的已设置安全机制的数据库的副本进行设计更改。然后,可以重新分发已设置安全机制的数据库。
数据库对象的权限和所有权存储在数据库中。由于权限和所有权始终与存储在工作组信息文件中的用户和组帐户相关联,因此已设置安全机制的应用程序必须始终能够指向对其进行保护的特定的工作组信息文件。
当您从同一个工作站或服务器使用多个 Access 数据库时,可以使用多个工作组信息文件。其中一个数据库可能设置有安全机制,而其他数据库则没有设置。每个数据库都可以有它自己单独的安全方案。在对 Access 应用程序设置安全机制之后,在设置安全机制时所使用的工作组信息文件是该数据库将要使用的唯一的工作组信息文件。工作组信息文件可以复制到每个本地工作站或者在整个网络中共享。
工作组文件管理
通过从 Access 菜单中启动“工作组管理员”,开发人员或应用程序管理员可以创建更多的工作组信息文件。在 Access 中的
工具菜单上,指向
安全,然后单击
工作组管理员。
请注意,“工作组管理员”显示了当前工作组信息文件的位置。“工作组管理员”是为创建或连接工作组信息文件而设计的。当通过下列某一方法启动 Microsoft Access 时,连接特定的工作组信息文件会使该文件成为默认的工作组文件:
- 从 Microsoft Windows 中的程序菜单启动。
- 从指向数据库文件的桌面快捷方式启动。
- 当您双击 Windows 资源管理器中的数据库文件时通过文件关联启动。
用户可以使用默认的工作组信息文件,也可以强制 Access 使用为特定数据库创建的已设置安全机制的工作组信息文件。要将已设置安全机制的特定数据库文件与它们的工作组信息文件相关联,您必须创建桌面快捷方式。每个桌面快捷方式必须都设置了
命令行选项,才能启动特定的数据库,并使用受该数据库保护的特定工作组信息文件。
要用工作组信息文件(该文件是在对 MyApp.mdb 设定安全机制时使用的)启动名为 MyApp.mdb 的已设置安全机制的 Access 数据库(该数据库位于名为 MyAppFolder 的文件夹中),则命令行语法必须包括 /WrkGrp 命令行开关,例如:
"C:/Program Files/Microsoft Office/Office/MSAccess.Exe" "C:/MyAppFolder/MyApp.MDB" /wrkgrp "C:/MyAppFolder/System.MDW"
您可以创建一个快捷方式并输入此语法作为快捷方式的目标。
有关启动命令行选项的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
209207 ACC2000: How to Use Command-Line Switches in Microsoft Access
工作组信息文件名称
您可以为工作组信息文件指定一个与默认名称 System.mdw 不同的名称。开发人员通常将工作组信息文件命名为与它所保护的数据库相同的名称,以便迅速地将它与其他 MDW 文件区别开来,并将它与正确的数据库文件相关联。
管理多个工作组信息文件的另一种方法是将正确的工作组信息文件的副本放到它所关联的数据库所在的同一文件夹中。
可以创建 System.mdw 文件的更多副本或新副本来与您的特定数据库一起使用。如果您无意中“保护”了 System.mdw 的默认副本,则可以将它复制到应用程序文件夹,然后在默认路径中创建一个新 System.mdw。要创建新的工作组信息文件,请按照下列步骤操作:
- 启动 Microsoft Access 而不打开任何特定的数据库。
- 在工具菜单上,指向安全,然后单击工作组管理员。
- 在出现的对话框中单击创建。
- 在工作组所有者信息对话框中,输入您的姓名、单位和工作组 ID。保存该工作组 ID。
- 在工作组信息文件对话框中,记下作为新工作组信息文件的默认值出现的路径和文件名。如果您希望将文件放在另一个位置,请编辑该路径。您也可以在这里更改文件名。
- 如果存在另一个具有相同名称的工作组文件,“工作组管理员”将询问您是否希望覆盖该文件。在做出选择之后,请单击确定。
- 下一个窗口是显示您已经输入的所有信息的确认窗口。检查并单击确定以继续进行,或者如果您发现有些内容不正确,请单击更改。
- 成功创建工作组文件之后,将出现一个窗口,要求您进行确认。单击此消息框中的确定。该过程就完成了。
- 现在您可以退出“工作组管理员”或连接另一个工作组文件,以使它成为默认文件。
运行时 Access 数据库
如果您正在使用 Microsoft Office Developer 来打包 Microsoft Access 应用程序,则必须包括您正在分发的任何已设置安全机制的数据库所对应的已设置安全机制的工作组信息文件。
如果您分发的不是已设置安全机制的 Microsoft Access 数据库,则不必包括工作组信息文件。
注意:当您使用配置文件分发 Microsoft Access 数据库时,必须添加工作组信息文件,即使该数据库没有设置安全机制。
参考
有关 Microsoft Access 安全性的其他信息,请参阅以下 Microsoft Web 站点中的“Frequently Asked Questions About Microsoft Access Security for Microsoft Access versions 2.0 Through 2000”(有关 Microsoft Access 2.0 版至 2000 版的 Microsoft Access 安全性的常见问题)白皮书:
Frequently Asked Questions About Microsoft Access Security for Microsoft Access versions 2.0 Through 2000(有关 Microsoft Access 2.0 版至 2000 版的 Microsoft Access 安全性的常见问题)
也可以从位于以下 Microsoft Web 站点中的 Microsoft 下载中心下载此白皮书:
SecFaq.Exe now
这篇文章中的信息适用于:
- Microsoft Office Access 2003
- Microsoft Access 2002
最近更新: |
2004-4-13 (4.0) |
关键字: |
kbhowto KB305542 kbAudDeveloper |