《Access数据库技术与应用 教学课件 ppt 作者 黄秀娟 主编第11章_数据库系统的集成、安全与发布》由会员分享,可在线阅读,更多相关《Access数据库技术与应用 教学课件 ppt 作者 黄秀娟 主编第11章_数据库系统的集成、安全与发布(42页珍藏版)》请在金锄头文库上搜索。
1、第11章 数据库系统的集成、安全与发布,教学目标: 通过前面十章的学习,已经逐步掌握了Access 2003数据库各类对象的设计与应用方法。并且,作为本教程贯穿始终的数据库应用系统开发实例“迷你超市业务信息管理系统”中的各个数据库对象都基本完成,通过本章学习,使读者能够使用Access 2003管理维护数据库,设置数据库的安全生。能力目标: 能够为数据库设置密码 能够使用向导为数据库应用系统设置安全机制 能够为数据库各用户设置相应的操作权限 能够拆分数据库 能够将MDB的数据库发布成MDE的文件,工作任务: 本章将完成设计“迷你超市业务信息系统”数据库的最后工作,为数据库系统设置安全机制、数据
2、库的集成与发布方法,最终完成这个小型数据库管理信息系统的全面设计工作。,理论知识,一、关于保护Microsfot Access数据库 1保护Microsfot Access数据库文件 最简单的保护方法是为打开的Microsfot Access数据库(.mdb)设置密码。 2使用用户安全机制保护数据库对象 保护数据库的最灵活和最广泛的方法是用户级安全机制。在用户级安全机制下,用户需使用ID来表明身份,并在启动Microsfot Access时输入密码。 3保护Visual Baisic for Application(VBA) 代码 可在模块中和含有密码(每次会话时均须键入)的窗体及报表的模块中
3、,保护Visual Baisic for Application(VBA) 代码。 4保护应用程序 可通过隐藏数据库窗口的数据库对象,设置一些启动选项用以控制应用程序的外观和行为,保护菜单和工具栏,来防止古怪的或恶意的终端用户对应用程序偶然的或是蓄意的破坏。,二、Access的用户级安全机制,Access的用户级安全机制类似于在服务器或主机系统上的用户级安全机制。它通过使用账号和权限,规定个人、组对数据库中对象的访问权限。 安全账号对个人和组访问数据库中对象进行了设置,账号的权限信息称为工作组信息,存储在工作组信息文件中。 使用用户级安全机制可以防止因更改表、查询、窗体和宏而破坏应用程序,还可
4、以保护数据库中的敏感数据。在用户级安全机制下,启动Access时要输入密码。,1账号、组和权限 用户账号:为个人提供特定的权限,以便访问数据库中的信息和资源。用户账号由用户名和个人ID(PID)来标识的账号。 组账号:工作组中用户账号的集合,以组名和个人ID(PID)来识别。该方法通过对组权限的设置,使得组中所有账号具有相同的访问权限。 通过定义不同的账号,并将账号分配到不同的组中,为每个组分配相应的权限,以达到使用不同权限账号对数据库实施不同级别操作的目的。 用户组:是在多用户环境下共享数据的一组用户,包含所有用户账号的组账号。新建用户账号时,Microsoft Access自动将用户账号添
5、加到用户组中。默认情况下,这个账号对所有新建对象拥有完全控制权限。在创建安全数据库的过程中,也可以取消用户组成员的选定权限。 管理员组:系统管理员的组账号,它拥有对使用该工作组的所有数据库的完全访问权限。“安装”程序会自动将默认的“管理员”用户账号添加到管理员组。在管理员组中,至少必须含有一个用户。,权限是一组属性,用于指定账号对数据库中数据或对象所拥有的访问权限类型。 有些权限自动地隐含其他的权限。例如对表的“更新数据”权限自动隐含“读数据”和“计设计”权限,因为只有具有这两项权限才能修改表中的数据。“修改设计”和“读数据”权限则隐含了“读设计”权限。对宏的“读设计”权限隐含了“打开/运行”
6、权限。 这种权限的安全措施称为账号级安全机制。这类安全措施内置于Access中,并一直运行在程序中。 在开始使用Access系统时,所有账号都是管理员的身份,权限大到能对Access数据进行任意操作。,2工作组信息文件,Access工作组信息文件存储了有关工作组成员的信息。在数据库打开时,Access读取工作组信息文件,以确定允许哪个用户访问数据库中的对象以及他们对这些对象的权限。 工作组信息文件是Access在启动时读取的包含工作组账号信息的文件。信息包括用户的账号、密码及其所属的组。Access依赖工作组信息文件来实行用户级安全措施的。 在第一次安装Access时,系统自动生成一个默认的工
7、作组信息文件SYSTEM.MDW保存在Office文件夹中。 如果要在系统中建立用户级安全机制,可以修改默认的工作组信息文件或为数据库创建新的工作组信息文件。,一个工作组信息文件中包含以下几个预定义的账号: 管理员:默认的用户账,Access的每一个副本都如此。 管理员组:一个组账号,当最初建立数据库时,管理员组只包括一个管理员账号。 用户组:一个组账号。账号中的所有成员都可以使用Access数据库。当使用管理员账号建立一个新账号时,该账号将被自动加入到用户组中。 只有拥有数据库管理员权限,才能在该数据库的任何工作组信息文件中加入新的账号或组账号,并设置账号或组账号的权限。 管理员账号在Acc
8、ess的每个副本中都存在。为安全起见,建立数据库安全措施的第一步就是创建另一个具有管理员权限的账号,并将原来的管理员账号从管理员组中撤销。,三、管理数据库,在数据库应用系统的使用过程中,要保证数据的正确性、一致性,并使数据及时得到更新,数据库的管理至关重要。它的主要工作包括: 1压缩和修复数据库 在表中添加、删除记录或者删除数据库对象,可能会使数据库所占用的磁盘空间变成许多无法有效利用的碎片,从而减慢了系统的执行速度,并且浪费了宝贵的磁盘空间。为了解决这一问题,用户可以定期压缩数据库。Access 2002能够识别数据库占用的空间,重新利用浪费的磁盘空间。在对数据库文件压缩前,Access会对
9、文件进行错误检查,如果检测到数据库损坏,就要求修复数据库。具体的步骤如下: (1)保证所有的用户都关闭了数据库。 (2)单击“工具”菜单中的“数据库实用工具”子菜单中的“压缩和修复数据库”命令,系统会弹出“压缩数据库来源”对话框。 (3)选中要压缩的数据库,单击“压缩”按钮,系统对数据库文件进行检查,检查没错后,会弹出“将数据库压缩为”对话框。 (4)为压缩的数据库文件选择一个新的名字,单击“保存”按钮即可。,2拆分数据库 拆分数据库就是将一个应用系统用一个工作文件保存查询、窗体、宏等应用系统工作所用的对象,用另一个数据文件保存表。拆分数据库后,如果在网络上使用这个应用系统,可以将工作文件分发
10、给每一个客户端的用户,将数据文件保存在服务器端。 对于用户使用的数据库系统,不管它是否经过拆分,必须保证用户不能修改数据库中的窗体、报表、宏和VBA代码,才能确保应用系统的正常运行。这时可以采用为数据库创建MDE文件的方法来增加数据库的安全性。,3生成MDE文件 如果数据库中包含Microsoft Visual Basic代码,将Microsoft Access数据库保存为MDE文件,可编译所有模块、删除所有可编辑的代码,并压缩目标数据。Visual Basic代码继续运行,但不能查看或编辑,由于代码的删除使Access数据库变小。另外,内在的使用会得到优化,因而提高了性能。 将Access数
11、据库保存为MDE文件可防止以下操作: 在“设计”视图中查看、修改或创建窗体、报表或模块。 添加、删除或更改指向对象库或数据库的引用。,更改使用Microsoft Access或VBA对象模型的属性或方法的代码不包含源代码的MDA文件。 导入或导出窗体、报表或模块。任何MDE文件中的表、查询、数据访问页或宏都能导入到其他Access数据库中,但窗体、报表或模块则不能导入到其他Access数据库中。 要注意的是,必须保存原始数据库的副本。因为如果需要修改窗体、报表或模块的设计,必须打开原始的Access数据库以修改它,并再次将它保存为MDE文件。,11.1 设置数据库密码,11.1.1 设置数据库
12、密码 操作步骤: (1)如果需要设置密码的数据库已经被打开,先将其关闭,同时确认网络上没有其他用户打开该数据库。 (2)选择“文件”菜单中的“打开”命令。 (3)选中要打开的数据库文件,单击“打开”按钮右侧的下三角按钮,然后单击“以独占方式打开”该数据库,如图所示;,(4)选择“工具”菜单安全子菜单上“设置数据库密码”命令,如图所示;,(5)在弹出的“密码”文本框中,输入密码和验证码,密码是区分大小写的; (6)关闭设置了密码的数据库,再次打开时出现“要求输入密码”对话框,要求输入预先设定的密码,然后单击“确定”按钮;如果密码不正确,Access显示警告对话框,单击“确定”按钮,重新输入密码。
13、如果密码准确无误,就可以正常使用这个数据库了。,11.1.2 撤销数据库密码,对于已经设置了数据库密码的数据库系统,如果不再需要使用数据库密码,可以将已设置的数据库密码撤销。 操作方法: (1)选择“文件”菜单中的“打开”命令。 (2)选中需打开的数据库文件,单击“打开”按钮右侧的下三角按钮,然后单击“以独占方式打开”,打开数据库。 (3)在“要求输入密码”对话框中,输入数据库密码命令。 (4)选择“工具”菜单“安全”子菜单上的“撤销数据库密码”命令。该命令只是在设置了数据库密码之后才可用。 (5)在“撤销数据库密码”对话框中输入当前使用的密码,单击“确定”按钮即可。,11.2 为数据库设置安
14、全机制,在多人使用的环境中,由于Access建立数据库时默认的权限是所有的用户,都和设计者具有相同的权限,均可以修改和查询数据库,所以为了保护数据库不会被任意的修改,同时也为保护设计者的知识产权,就应该为每个用户定义不同的权限。 Access提供的安全防范措施是通过为数据库设立安全机制,并为数据库设置用户群组及其各自的操作权限来实现的。,下面为“迷你超市业务信息管理系统”设置安全机制,操作方法: 打开数据库“迷你超市业务信息管理系统”; 选择“工具”菜单中“安全”子菜单中的“设置安全机制向导”命令,系统会弹出如图所示的“设置安全机制向导”对话框之一;,在“设置安全机制向导”对话框之一中,系统默
15、认选中“新建工作组信息文件”,单击“下一步”按钮,进入“设置安全机制向导”对话框之二,如图所示;,单击“浏览”按钮修改工作组信息文件名,如果采用默认文件名则不必修改,通常情况下与自己的数据库文件放在一起,设置完成后单击“下一步”按钮,打开如图所示的“设置安全机制向导”对话框之三;,在“设置安全机制向导”对话框之三中,可以指定需要加入安全机制控制的数据库对象。一般而言,应该将所有数据库对象均置于安全机制控制之下。这也是对话框中的默认值,可以不加任何改动,直接单击“下一步”按钮,进入“设置安全机制向导” 对话框之四,如图所示;,在“设置安全机制向导” 对话框之四中,可以指定需要添加的用户组。Acc
16、ess提供了七个用户组以供选择,并为每一个用户设定了操作权限。在对话框中逐一地点击各个用户组,即可在对话框的右下部看到该用户组的操作权限说明。对于本实例,我们不添加任何用户组加入,直接单击“下一步”按钮,进入“设置安全机制向导” 对话框之五,如图所示;,在“设置安全机制向导” 对话框之五中,可以指定默认用户组的操作权限。Access数据库默认用户组的权限是提供给任意用户使用的,对于本实例,不给这个默认组任何权限,然后单击“下一步”按钮,进入“设置安全机制向导” 对话框之六,如图所示;,在“设置安全机制向导” 对话框之六中,可以在默认用户中添加若干用户,此处添加三个用户“AAA”、“BBB”、“CCC”,并设置相应的密码为“AAAAA”、“BBBBB”、“CCCCC”,如图所示;,单击“下一步”按钮,进入“设置安全机制向导” 对话框之七,将用户“AAA”设置为管理者用户,如图所示;,单击“下一步”按钮,进入“设置安全机制向导” 对话框之八,在“请指定无安全机制的数据库备份副本的名称”框中输入建立安全机制前的数据库名称,如图所示