当前位置:文档之家› 数据库的安全性与完整性

数据库的安全性与完整性

数据库的安全性与完整性
数据库的安全性与完整性

4 数据库的安全性与完整性

数据库在各种信息系统中得到广泛的应用,数据在信息系统中的价值越来越重要,数据库系统的安全与保护成为一个越来越值得重要关注的方面。

数据库系统中的数据由DBMS统一管理与控制,为了保证数据库中数据的安全、完整和正确有效,要求对数据库实施保护,使其免受某些因素对其中数据造成的破坏。

一般说来,对数据库的破坏来自以下4个方面:

(1)非法用户

非法用户是指那些未经授权而恶意访问、修改甚至破坏数据库的用户,包括那些超越权限来访问数据库的用户。一般说来,非法用户对数据库的危害是相当严重的。

(2)非法数据

非法数据是指那些不符合规定或语义要求的数据,一般由用户的误操作引起。

(3)各种故障

各种故障指的是各种硬件故障(如磁盘介质)、系统软件与应用软件的错误、用户的失误等。

(4)多用户的并发访问

数据库是共享资源,允许多个用户并发访问(Concurrent Access),由此会出现多个用户同时存取同一个数据的情况。如果对这种并发访问不加控制,各个用户就可能存取到不正确的数据,从而破坏数据库的一致性。

针对以上4种对数据库破坏的可能情况,数据库管理系统(DBMS)核心已采取相应措施对数据库实施保护,具体如下:

(1)利用权限机制,只允许有合法权限的用户存取所允许的数据,这就是本章节“数据库安全性”应解决的问题。

(2)利用完整性约束,防止非法数据进入数据库,这是本章节“数据库完整性”应解决的问题。

(3)提供故障恢复(Recovery)能力,以保证各种故障发生后,能将数据库中的数据从错误状态恢复到一致状态,此即本章节“故障恢复技术”的内容。

(4)提供并发控制(Concurrent Control)机制,控制多个用户对同一数据的并发操作,以保证多个用户并发访问的顺利进行,此即本章节“并发控制”的内容。

4.1 数据库安全性

4.1.1 数据库安全性问题的概述

1.数据库安全问题的产生

数据库的安全性是指在信息系统的不同层次保护数据库,防止未授权的数据访问,避免数据的泄漏、不合法的修改或对数据的破坏。安全性问题不是数据库系统所独有的,它来自各个方面,其中既有数据库本身的安全机制如用户认证、存取权限、视图隔离、跟踪与审查、数据加密、数据完整性控制、数据访问的并发控制、数据库的备份和恢复等方面,也涉及到计算机硬件系统、计算机网络系统、操作系统、组件、Web服务、客户端应用程序、网络浏览器等。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出,每一个方面产生的安全问题都可能导致数据库数据的泄露、意外修改、丢失等后果。

例如,操作系统漏洞导致数据库数据泄漏。微软公司发布的安全公告声明了一个缓冲区溢出漏洞(),Windows NT、Windows 2000、Windows 2003等操作系统都受到影响。有人针对该漏洞开发出了溢出程序,通过计算机网络可以对存在该漏洞的计算机进行攻击,并得到操作系统管理员权限。如果该计算机运行了数据库系统,则可轻易获取数据库系统数据。特别是Microsoft SQL Server的用户认证是和Windows集成的,更容易导致数据泄漏或更严重的问题。

又如,没有进行有效的用户权限控制引起的数据泄露。Browser/Server结构的网络环境下数据库或其他的两层或三层结构的数据库应用系统中,一些客户端应用程序总是使用数据库管理员权限与数据库服务器进行连接(如Microsoft SQL Server的管理员SA),在客户端功能控制不合理的情况下,可能使操作人员访问到超出其访问权限的数据。

在安全问题上,DBMS应与操作系统达到某种意向,理清关系,分工协作,以加强DBMS的安全性。数据库系统安全保护措施是否有效是数据库系统的主要指标之一。

为了保护数据库,防止恶意的滥用,可以从低到高的五个级别上设置各种安全措施。

(1)环境级:计算机系统的机房和设备应加以保护,防止有人进行物理破坏。

(2)职员级:工作人员应清正廉洁,正确授予用户访问数据库的权限。

(3)OS级:应防止未经授权的用户从OS处着手访问数据库。

(4)网络级:由于大多数DBS都允许用户通过网络进行远程访问,因此网络软件内部的安全性至关重要。

(5)DBS级:DBS的职责是检查用户的身份是否合法及使用数据库的权限是否正确。

本章只讨论与数据库系统中的数据保护密切相关的内容。

2.数据库的安全标准

目前,国际上及我国均颁布有关数据库安全的等级标准。最早的标准是美国国防部(DOD)1985年颁布的《可信计算机系统评估标准》(Computer System Evaluation Criteria,TCSEC)。1991年美国国家计算机安全中心(NCSC)颁布了《可信计算机系统评估标准关于可信数据库系统的解释》(Trusted Datebase Interpreation,TDI),将TCSEC扩展到数据库管理系统。1996年国际标准化组织ISO又颁布了《信息技术安全技术——信息技术安全性评估准则》(Information Technology Security Techniques——Evaluation Criteria For It Secruity)。

我国政府于1999年颁布了《计算机信息系统评估准则》。目前国际上广泛采用的是美国标准TCSEC(TDI),在此标准中将数据库安全划分为4大类,由低到高依次为D、C、B、A。其中C级由低到高分为C1和C2,B级由低到高分为B1、B2和B3。每级都包括其下级的所有特性,各级指标如下:

(1)D级标准:为无安全保护的系统

(2)C1级标准:只提供非常初级的自主安全保护。能实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。

(3)C2级标准:提供受控的存取保护,即将C1级的DAC进一步细化,以个人身份注册负责,并实施审计和资源隔离。很多商业产品已得到该级别的认证。

(4)B1级标准:标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制(MAC)以及审计等安全机制。

一个数据库系统凡符合B1级标准者称之为安全数据库系统或可信数据库系统。

(5)B2级标准:结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和MAC。

(6)B3级标准:安全域。满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。

(7)A级标准:验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证,以确信各安全保护真正实现。

我国的国家标准的基本结构与TCSEC相似。我国标准分为5级,从第1级到第5级依次与TCSEC标准的C级(C1、C2)及B级(B1B2B3)一致。

4.1.2 数据库的安全性机制

在一般计算机系统中,安全措施是一级一级层层设置的,如图6-1所示。

用户标识和鉴别存取控制操作系统安全保护数据密码存储

在图的安全模型中,用户要进入计算机系统,系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准许进入计算机系统。对已经进入系统的用户,DBMS要进行存取控制,只允许用户执行合法操作。操作系统一级也会有自己的保护措施。数据最后还可以以密码形式存储在数据库中。在本节中对数据库的一些逻辑安全机制进行介绍,包括用户认证、存取权限,视图隔离、数据加密、跟踪与审查等内容作介绍。

1.用户认证

数据库系统不允许一个未经授权的用户对数据库进行操作。用户标识与鉴别,即用户认证,是系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份,每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。对于获得上机权的用户若要使用数据库时,数据库管理系统还要进行用户标识和鉴定。

用户标识和鉴定的方法有很多种,而且在一个系统中往往多种方法并用,以得到更强的安全性。常用的方法是用户名和口令。

通过用户名和口令来鉴定用户的方法简单易行,但其可靠程度极差,容易被他人猜出或测得。因此,设置口令法对安全强度要求比较高的系统不适用。近年来,一些更加有效的身份认证技术迅速发展起来。例如使用某种计算机过程和函数、智能卡技术,物理特征(指纹、声音、手图等)认证技术等具有高强度的身份认证技术日益成熟,并取得了不少应用成果,为将来达到更高的安全强度要求打下了坚实的理论基础。

2.存取控制

数据库安全性所关心的主要是DBMS的存取控制机制。数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据,这主要通过数据库系统的存取控制机制实现。存取控制是数

据库系统内部对已经进入系统的用户的访问控制,是安全数据保护的前沿屏障,是数据库安全系统中的核心技术,也是最有效的安全手段。

在存取控制技术中,DBMS所管理的全体实体分为主体和客体两类。主体(Subject)是系统中的活动实体,包括DBMS所管理的实际用户,也包括代表用户的各种进程。客体(Object)是存储信息的被动实体,是受主体操作的,包括文件、基本表、索引和视图等。

数据库存取控制机制包括两个部分:

一是定义用户权限,并将用户权限登记到数据字典中。用户权限是指不同的用户对不同的数据对象允许执行的操作权限。系统必须提供适当的语言定义用户权限,这些定义经过编译后存放在数据字典中,被称作系统的安全规则或授权规则。

二是合法性权限检查。当用户发出存取数据库的操作请求后(请求一般应包括操作类型、操作对象、操作用户等信息),数据库管理系统查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义权限,系统将拒绝执行此操作。

存取控制包括自主型存取控制(DAC)和强制型存取控制(MAC)两种类型。

(1)自主存取控制(Discretionary Access Control,DAC)

自主型存取控制是用户访问数据库的一种常用安全控制方法,较为适合于单机方式下的安全控制,大型数据库管理系统几乎都支持自主存取控制。在自主型存取控制中,用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。用户权限由数据对象和操作类型这两个因素决定。定义一个用户的存取权限就是要定义这个用户在哪些数据对象上进行哪些类型的操作。在数据库系统中,定义存取权限称为授权。

自主型存取控制的安全控制机制是一种存取矩阵的模型,此模型由主体、客体与存/取操作构成,矩阵的列表示主体,矩阵的行表示客体,而矩阵中的元素表示存/取操作(如读、写、修改和删除等),如图6-2所示。

图6-2 授权存/取矩阵模型

在这种存取控制模型中,系统根据对用户的授权构成授权存取矩阵,每个用户对每个信息资源对象都要给定某个级别的存取权限,例如读、写等。当用户申请以某种方式存取某个资源时,系统就根据用户的请求与系统授权存取矩阵进行匹配比较,通过则允许满足该用户的请求,提供可靠的数据存取方式,否则,拒绝该用户的访问请求。

目前的SQL标准也对自主存取控制提供支持,主要是通过SQL的GRANT语句和REVOKE语句来是实现权限的授予和收回,这部分内容将在下节中作祥细介绍。

自主存取控制能够通过授权机制有效地控制其他用户对敏感数据的存取,但是由于用户对数据的存取权限是“自主”的,用户可以自由地决定将数据的存取

权限Array授予

别的

用户,而无

需系

统的

确认。这样,系统的授权存取矩阵就可以被直接或间接地进行修改,可能导致数据的“无意泄漏”,给数据库系统造成不安全因素。要解决这一问题,就需要对系统控制

下的所有主体、客体实施强制型存取控制策略。

(2)强制存取控制(Mandatory Access Control,MAC)

所谓MAC是指系统为保证更高程度的安全性,按照TCSEC(TDI)标准中安全策略的要求,所采取的强制存取检查手段,较为适用于网络环境,对网络中的数据库安全实体作统一的、强制性的访问管理。

强制型存取控制系统主要通过对主体和客体的已分配的安全属性进行匹配判断,决定主体是否有权对客体进行进一步的访问操作。对于主体和客体,DBMS 为它们的每个实例指派一个敏感度标记(Label)。敏感度标记被分成若干级别,例如绝密、机密、可信、公开等。主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级。在强制存取控制下,每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。而且,该授权状态一般情况下不能被改变,这是强制型存取控制模型与自主型存取控制模型实质性的区别。一般用户或程序不能修改系统安全授权状态,只有特定的系统权限管理员才能要根据系统实际的需要来有效地修改系统的授权状态,以保证数据库系统的安全性能。

强制存取控制策略是基于以下两个规则:

仅当主体的许可证级别大于或等于客体的密级时,主体对客体具有读权限。

仅当客体的密级大于或等于主体的许可证级别时,主体对客体具有写权限。

这两种规则的共同点在于它们均禁止了拥有高许可证级别的主体更新低密级的数据对象,从而防止了敏感数据的泄漏。

强制安全存取控制模型的不足之处是可能给用户使用自己的数据时带来诸多的不便,其原因是这些限制过于严格,但是对于任何一个严肃的安全系统而言,强制安全存取控制是必要的,可以避免和防止大多数有意无意对数据库的侵害。

较高安全性级别提供的安全保护要包含较低级别的所有保护,因此在实现强制存取控制时要首先实现自主存取控制,即自主存取控制与强制存取控制共同构成DBMS的安全机制。系统首先进行自主存取控制检查,对通过检查的允许存取的主体与客体再由系统进行强制存取控制的检查,只有通过检查的数据对象方可存取。

3.视图隔离

视图是数据库系统提供给用户以多种角度观察数据库中数据的重要机制,是从一个或几个基表(或视图)导出的表,它与基表不同,是一个虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。

从某种意义上讲,视图就像一个窗口,透过它可以看到数据库中自己感兴趣的数据及其变化。进行存取权限控制时,可以为不同的用户定义不同的视图,把访问数据的对象限制在一定的范围内,也就是说,通过视图机制要把保密的数据对无权存取的用户隐藏起来,从而对数据提供一定程度的安全保护。

需要指出的是,视图机制最主要的功能在于提供数据独立性,在实际应用中,常常将视图机制与存取控制机制结合起来使用,首先用视图机制屏蔽一部分保密数据,再在视图上进一步定义存取权限。通过定义不同的视图及有选择地授予视图上的权限,可以将用户、组或角色限制在不同的数据子集内。

4.数据加密

前面介绍的几种数据库安全措施,都是防止从数据库系统中窃取保密数据。但数据存储在存盘、磁带等介质上,还常常通过通信线路进行传输,为了防止数据在这些过程中被窃取,较好的方法是对数据进行加密。对于高度敏感性数据,例如财务数据、军事数据、国家机密,除了上述安全措施外,还可以采用数据加密技术。

加密的基本思想是根据一定的算法将原始数据(术语为明文)变换为不可直接识别的格式(术语为密文),从而使得不知道解密算法的人无法获知数据的内容。数据解密是加密的逆过程,即将密文数据转变成可见的明文数据。

一个密码系统包含明文集合、密文集合、密钥集合和算法,其中密钥和算法构成了密码系统的基本单元。算法是一些公式、法则或程序,它规定明文与密文之间的变换方法,密钥可以看作算法中的参数。如图6-3所示。

加密方法可分为对称加密与非对称加密两种。

所谓对称加密,其加密所用的密钥与解密所用的密钥相同。典型的代表是DES(Data Encryption Standard,数据加密标准)。所谓非对称加密,其加密所用的密钥与解密所用的密钥不相同,其中加密的密钥可以公开,而解密的密钥不可以公开。

数据加密和解密是相当费时的操作,其运行程序会占有大量系统资源,因此数据加密功能通常是可选特征,允许用户自由选择,一般只对机密数据加密。

5.审计

审计功能是DBMS达到C2级以上安全级别必不可少的指标。这是数据库系统的最后一道安全防线。

审计功能把用户对数据库的所有操作自动记录下来,存放在日志文件中。DBA 可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法访问数据库的人、时间、地点以及所有访问数据库的对象和所执行的动作。

有两种审计方式,即用户审计和系统审计。

(1)用户审计:DBMS的审计系统记下所有对表或视图进行访问的企图(包括成功的和不成功的)及每次操作的用户名、时间、操作代码等信息。这些信息一般都被记录在数据字典(系统表)之中,利用这些信息用户可以进行审计分析。

(2)系统审计:由系统管理员进行,其审计内容主要是系统一级命令以及数据库客体的使用情况。

审计通常是很费时间和空间的,所以DBMS往往将其作为可选特征,一般主要用于安全性要求较高的部门。

4.1.3 SQL Server的安全性策略

如果一个用户要访问SQL Server 数据库中的数据,必须经过三个认证过程。第一个认证过程是身份验证,需通过登录帐户来标识用户。身份验证只验证用户是否具有连接到SQL Server数据库服务器的资格。第二个认证过程是当用户访问数据库时,必须具有对具体数据库的访问权,即验证用户是否是数据库的合法用户。第三个认证过程是当用户操作数据库中的数据对象时,必须具有相应的操作权,即验证用户是否具有操作权限。

SQL Server的安全性管理包括了用户身份认证、存取控制、视图隔离、数据加密、跟踪与审计等几个方面,下面分别作简要介绍。

1.用户身份认证

SQL Server 的用户有两种类型:

(1)Windows 授权用户:来自于Windows的用户或组。

(2)SQL授权用户:来自于非Windows的用户,称其为SQL用户。

Microsoft SQL Server 为不同的用户类型提供了不同的安全认证模式。

(1)Windows身份验证模式

Windows身份验证模式使用户得以通过Microsoft Windows NT 或Windows 2000用户帐户进行连接SQL Server。用户必须首先登录到Windows中,然后再登录到SQL Server。用户登录到SQL Server时,只需选择Windows身份验证模式,无需再提供登录帐户和密码,系统会从用户登录到Windows时提供的用户名和密码中查找用户的登录信息,以判断其是否为SQL Server的合法用户。

对于SQL Server来说,一般推荐使用Windows身份验证模式。因为这种安全模式能够与Windows操作系统的安全系统集成在一起,用户的网络安全特性在网络登录时建立,并通过Windows域控制器进行验证,从而提供更多的安全功能。但Windows验证模式只能用在Windows NT 或Windows 2000服务器版操作系统

的服务器上,在Windows 98等个人操作系统上,不能使用Windows身份验证模式,只能使用混合验证模式。

(2)混合验证模式

混合验证模式表示SQL Server接受Windows授权用户和SQL授权用户。如果不是Windows操作系统的用户或者是Windows 98操作系统的用户使用SQL Server,则应该选择混合验证模式。

如果在混合模式下选择使用SQL授权用户登录SQL Server,则用户必须提供登录名和密码,SQL Server使用这两部分内容来验证用户,SQL Server通过检查是否已设置SQL Server登录帐户,以及指定的密码是否与记录的密码匹配,进行身份验证。另外,因为在Windows98上不支持Windows身份验证模式,因此,SQL Server在Windows98上运行时应使用混合模式,且只支持SQL Server身份验证。

SQL Server在安装时,会自动创建一个DB服务器的登录用户sa,即系统管理员,用以创建其他登录用户和授权。

数据库服务器登录用户的创建,可利用存储过程来进行,命令如下:

sp_addlogin[@loginame=] '登录名'

[,[@passwd=] '口令']

[,[@defdb=] '默认数据库名']

2.SQL Server数据库用户

SQL Server在安装时,自动创建了一个默认数据库用户,即guest。一个登录用户在被设定为某个数据库用户之前,可用guest用户身份访问数据库,只不过其权限非常有限。

SQL Server可用以下命令授权登录用户成为数据库用户,该命令必须在所要访问的数据库下执行:

sp_adduser [@loginame=] '登录名'

[,[@name_in_db=] '访问数据库时用的名字']

3.存取控制

当用户成为数据库中的合法用户后,他除了可以查询系统表之外,并不具有操作数据库中对象的任何权限,因此,需给数据库中的用户授予操作数据库对象的权限。

SQL Server对权限的管理包含如下三个内容:

授予权限:允许用户或角色具有某种操作权。

收回权限:删除以前在当前数据库内的用户上授予或拒绝的权限。

拒绝权限:拒绝给当前数据库内的安全帐户授予权限并防止安全帐户通过其组或角色成员继承权限。

在SQL Server2000中,权限分为对象权限、语句权限和隐含权限三种。

(1)对象权限

对象权限是指用户对数据库中的表、视图等对象的操作权,相当于数据操作语言的语句权限,例如是否运行查询、增加和修改数据等。

表、视图的权限包括SELECT、INSERT、DELETE、UPDATE。列的权限包括SELECT 和UPDATE。存储过程的权限包括EXECUTE。

授权语句:

GRANT 对象权限名[,…] ON {表名 | 视图名 | 存储过程名} TO {数据库用户名 | 用户角色名}[,…] [WITH GRANT OPTION]

可选项[WITH GRANT OPTION]表示获得权限的用户还能获得传递权限,把获得的权限传授给其他用户。

例如:

GRANT SELECT,INSERT ON Student TO user1 WITH GRANT OPTION

该语句把对Student表的查询权和插入权授予给用户user1,user1同时获得将这些权限转授给别的用户的权限。

GRANT UPDATE(Name) ON Student TO user1

该语句把对Student表的姓名属性的修改权授予给用户user1。

收回权限语句:

REVOKE 对象权限名[,…] ON {表名 | 视图名 | 存储过程名} FROM {数据库用户名|用户角色名}[,…] [RESTRICT | CASCADE]

可选项[RESTRICT | CASCADE]中,CASCADE表示回收权限时要引起连锁回收。即从用户Ui回收权限时,要把用户Ui转授出去的同样的权限同时回收。RESTRICT 表示,当不存在连锁回收时,才能回收权限,否则系统拒绝回收。

例如:REVOKE INSERT ON Student FROM user1 CASCADE

该语句表示从用户user1处收回对Student表的插入权,若user1已把获得的对Student表的插入权转授给其他用户,则连锁收回。

REVOKE INSERT ON Student FROM user1 RESTRICT

该语句表示若user1已把获得的对Student表的插入权转授给其他用户,则上述收回语句执行失败,否则收回成功。

拒绝权限语句:

DENY 对象权限名[,…] ON {表名 | 视图名 | 存储过程名} TO {数据库用户名|用户角色名}[,…]

例如:DENY UPDATE ON Student TO user1

该语句表示拒绝用户user1对Student表进行修改

(2)语句权限

语句权限是指创建数据库或数据库中的项目的权限,相当于数据定义语言的语句权限。

语句权限包括CREATE DATABASE、CREATE TABLE、CREATE VIEW、CREATE DEFAULT、CREATE RULE、CREATE FUNCTION、CREATE PROCEDURE、BACKUP DATABASE、BACKUP LOG。

授予权限语句:

GRANT 语句权限名[,…] TO {数据库用户名|用户角色名}[,…]

例如,授予用户user1创建数据库表的权限

GRANT CREATE TABLE TO user1

收回权限语句:

REVOKE 语句权限名[,…] FROM {数据库用户名|用户角色名}[,…]

例如,收回用户user1创建数据库表的权限

REVOKE CREATE TABLE FROM user1

拒绝权限语句:

DENY 语句权限名[,…] TO {数据库用户名|用户角色名}[,…]

例如,拒绝用户user1创建视图的权限

DENY CREATE VIEW TO user1

(3)隐含权限

隐含权限是指由SQL Server预定义的服务器角色、数据库角色、数据库拥有者和数据库对象拥有者所具有的权限。隐含权限是由系统预先定义好的,相当于内置权限,不需要再明确地授予这些权限。例如,数据库拥有者自动地拥有对数据库进行一切操作的权限。

在数据库中,为了便于管理用户及权限,可以将一组具有相同权限的用户组织在一起,这一组具有相同权限的用户称为角色(Role)。在SQL Server 2000中,角色分为系统角色和用户自定义的角色,系统角色又分为服务器级系统角色和数据库级系统角色。服务器级系统角色是为整个服务器设置的,数据库级系统角色是为具体的数据库设置的。服务器级系统角色包括sysadmin(系统管理)、securityadmin(安全管理)、serveradmin(服务器管理)、setupadmin(启动管理)、processadmin(进程管理)、diskadmin(磁盘管理)、dbcreator(数据库创建)、bulkadmin(备份管理)。数据库级系统角色包括public和dbo。public角色只具备最基本的访问数据库的权限。dbo为数据库拥有者,即创建该数据库的用户,拥有对该数据库或对象的所有操作权限。

用户自定义的角色也属于数据库一级的角色。用户可以根据实际情况定义自己的一系列角色,并给每个角色授予合适的权限,对角色的权限的管理同数据库用户相同。有了角色,就不用直接管理每个具体的数据库用户的权限,而只需将数据库用户放置到合适的角色中即可。当工作职能发生变化时,只要更改角色的权限即可,而无需更改角色中的成员的权限。只要权限没有被拒绝过,角色中的

成员的权限是角色的权限加上它们自己所具有的权限。如果某个权限在角色中是拒绝的,则角色中的成员就不能再拥有此权限,即使为此成员授予了此权限。

用户角色的创建,可利用存储过程来进行:

sp_addrole[@rolename=] '新角色名'

[,[@ownername=] '该角色所有者']

4.视图

SQL Server广泛使用视图机制进行安全性控制,限制用户的访问范围与访问权限。通过定义不同的视图及有选择地授予视图上的权限,可以将用户、组或角色限制在不同的数据子集内。无论在基础表(一个或多个)上的权限集合有多大,都必须授予、拒绝或收回访问视图中数据子集的权限。

例如,用户user1只能检索Student表中计算机系的学生的信息,可以先建立视图CS_Student,再给user1授予对CS_Student的查询权。

CREATE VIEW CS_Student

AS

SELECT * FROM Student WHERE 系='计算机系';

GRANT SELECT ON CS_Student TO user1;

5.数据加密

Microsoft SQL Server的加密机制可以对SQL Sercer中存储的登录和应用程序角色密码、作为网络数据包而在客户端和服务器端之间发送的数据、存储过程定义、函数定义、视图定义、触发器定义、默认值定义、规则定义等数据库对象进行加密。

SQL Server系统表中存储的登录和应用程序角色密码总是被加密。这可防止用户(包括系统管理员)查看任何密码,包括自己的密码。此外,在网络上发送应用程序角色密码之前,当应用程序角色激活时,就可以对其进行加密。

SQL Server允许对客户端和服务器端之间发送的数据进行加密,这样可确保任何在网络上截取数据包的应用程序或用户无法查看保密或敏感数据。SQL Server 可以使用安全套接字层(SSL)加密在应用程序计算机与SQL Server 实

例之间传输的所有数据。SSL加密在超级套接字Net-Library和内执行并应用于SQL Server 2000所支持的所有计算机间协议。启用加密会降低Net-Library的性能。

6.审计

Microsoft SQL Server 2000提供审核功能,用以跟踪和记录每个SQL Server 实例上已发生的活动(如成功和失败的记录)。SQLServer2000还提供管理审核记录的接口,即SQL事件探查器。只有sysadmin固定安全角色的成员才能启用或修改审核,而且审核的每次修改都是可审核的事件。

可以通过SQL事件探查器审核导致事件发生的用户、发出请求的计算机名、事件的时间、类型、所访问的数据库对象、SQL语句的文本、事件的成功与否等信息。

4.2 数据库完整性

在第三章中,读者已对关系模型上的完整性约束有了一个全面、完整的了解。本节将从较高层次来对数据库完整性的分类、定义和验证,作一般性的讲解,这对进一步掌握关系模型的完整性约束,具有指导性作用。

4.2.1 数据库完整性的概述

数据库的安全性和完整性是数据库安全保护的两个不同的方面。数据库的安全性保护数据库以防止不合法用户故意造成的破坏,数据库的完整性保护数据库以防止合法用户无意中造成的破坏。从数据库的安全保护角度来讲,完整性和安全性是密切相关的。

数据库的完整性的基本含义是指数据库中数据的正确性、有效性和相容性,其主要目的是防止错误的数据进入数据库。正确性是指数据的合法性,例如数值型数据只能含有数字而不能含有字母。有效性是指数据是否属于所定义域的有效范围。相容性是指表示同一事实的两个数据应当一致,不一致即是不相容。

数据库系统是对现实系统的模拟,现实系统中存在各种各样的规章制度,以保证系统正常、有序地运行。许多规章制度可转化为对数据的约束,例如,单位人事制度中对职工的退休年龄会有规定,也可能一个部门的主管不能在其他部门任职、职工工资只能涨不能降等。对数据库中的数据设置某些约束机制,这些添加在数据上的语义约束条件称为数据库完整性约束条件,简称“数据库的完整性”,系统将其作为模式的一部分“定义”于DBMS中。DBMS必须提供一种机制来检查数据库中数据的完整性,看其是否满足语义规定的条件,这种机制称为“完整性检查”。为此,数据库管理系统的完整性控制机制应具有三个方面的功能,来防止合法用户在使用数据库时,向数据库注入不合法或不合语义的数据:定义功能,提供定义完整性约束条件的机制。

验证功能,检查用户发出的操作请求是否违背了完整性约束条件。

处理功能,如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。

本节将讨论数据库完整性约束的分类、完整性约束的定义、完整性约束的验证以及SQL Server中的完整性约束机制。

4.2.2 数据库完整性的分类

数据完整性检查是围绕完整性约束条件进行的,因此完整性约束条件是完整性控制机制的核心。

数据库完整性约束分为两种:静态完整性约束和动态完整性约束。完整性约束条件涉及到三类作用对象,即属性级、元组级和关系级。这三类对象的状态可以是静态的,也可以是动态的。结合这两种状态,一般将这些约束条件分为静态属性级约束、静态元组级约束、静态关系级约束、动态属性级约束、动态元组级约束、动态关系级约束等6种约束。

1.静态完整性约束(状态约束)

静态完整性约束(Static Integrity Constraints),简称静态约束,是指数据库每一确定状态时的数据对象所应满足的约束条件,它是反映数据库状态合理性的约束,是最重要的一类完整性约束,也称“状态约束”。

在某一时刻,数据库中的所有数据实例构成了数据库的一个状态,数据库的任何一个状态都必须满足静态约束。每当数据库被修改时,DBMS都要进行静态约束的检查,以保证静态约束始终被满足。

静态约束又分为3种类型:隐式约束、固有约束和显式约束。

(1)隐式约束

隐式约束(Implicit Constraints)是指隐含于数据模型中的完整性约束,由数据模型上的完整性约束完成约束的定义和验证。隐式约束一般由数据库的数据定义语言(DDL)语句说明,并存于数据目录中,例如实体完整性约束、参照完整性约束和用户自定义完整性约束,其具体内容已在节作了详细介绍。

(2)固有约束

固有约束(Inherent Constraints)是指数据模型固有的约束。例如,关系的属性是原子的,满足第一范式的约束。固有约束在DBMS实现时已经考虑,不必特别说明。

(3)显示约束

隐式约束和固有约束是最基本的约束,但概括不了所有的约束。数据完整性约束是多种多样的,且依赖于数据的语义和应用,需要根据应用需求显式地定义或说明,这种约束称为数据库完整性的“显示约束”(Explicit Constraints)。

隐式约束、固有约束和显示约束这三种静态约束作用于关系数据模型中的属性、元组、关系,相应有静态属性级约束、静态元组级约束和静态关系级约束。

(1)静态属性级约束

静态属性级约束是对属性值域的说明,是最常用也是最容易实现的一类完整性约束,包括以下几个方面:

对数据类型的约束(包括数据的类型、长度、单位、精度等)。例如,学号必须为字符型,长度为8。

对数据格式的约束。例如,规定学号的前两位表示入学年份,中间两位表示系的编号,后四位表示顺序编号。出生日期的格式为。

对取值范围或取值集合的约束。例如,规定学生的成绩取值范围为0~100,性别的取值集合为[男,女],大学本科学生年龄的取值范围为14~29。

对空值的约束。空值表示未定义或未知的值,它与零值和空格不同。有的属性允许空值,有的不允许取空值。例如学生学号不能取空值,成绩可以为空值。

其他约束。例如关于列的排序说明,组合列等。

(2)静态元组级约束

一个元组是由若干个列值组成的,静态元组级约束是对元组中各个属性值之间关系的约束。如订货关系中包含订货数量与发货数量这两个属性,其中发货量不得超出订货量;又如教师关系中包含职称、工资等属性,规定教授的工资不低于1000元。

(3)静态关系级约束

静态关系级约束是一个关系中各个元组之间或者若干个关系之间常常存在的各种联系的约束。常见的静态关系级约束有:

实体完整性约束。

参照完整性约束。

实体完整性约束和参照完整性约束是关系模型的两个极其重要的约束,称为关系的两个不变性。

函数依赖约束。大部分函数依赖约束都在关系模式中定义。

统计依赖约束。统计依赖约束指的是字段值与关系中多个元组的统计值之间的约束关系,如规定总经理的工资不得高于职工的平均工资的4倍,不得低于本部门职工平均工资的3倍,其中,本部门职工的平均工资是一个统计值。

2.动态完整性约束(变迁约束)

动态完整性约束(Dynamic Integrity Constraints),简称动态约束,不是对数据库状态的约束,而是指数据库从一个正确状态向另一个正确状态的转化过程中新、旧值之间所应满足的约束条件,反映数据库状态变迁的约束,故也称“变

vb大作业 实验报告

软件技术实验报告 学号2009300186 姓名赵佶男班级010109卓 越 大作业机房管理系统 课题基本目标要求: 1)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 2)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动 提前5分钟提示,待真正结束时即自动锁屏。 3)除上机课时安排以外,可以在机动时间段接受学生凭个人一卡通上机,且上机实施计时自动收费(即扣除学生一卡通上因上机而应缴 纳的上机服务费) 4)在接受零散学生付费上机时,可自动为其分配空闲机器并授权使用,在分配机器时应考虑机器的使用情况分布均匀,即每次分配机器是 前一时段未曾使用的机器,当学生一卡通上的余额,不足以支付1 小时上机服务费时,应提示其下机充值,并实施锁屏。 实验步骤: 首先,根据大作业的要求,我建立了机器表,流水表,学生基本情况表,上课表,以及一卡通表五个数据库表。机器表用来按照使用情况,选择空闲时间最长的机器。流水表用来记录现在机器以及人员使用的情况,是个

动态表,用来方便的取用和修改数据。学生基本情况表用来存放学生的学号,密码,班级等基本情况,以实现学生上课登录和自由登录。上课表存放各个班级的上课下课时间,以实现排课功能。一卡通表记录了每个学生一卡通内的金额,用来帮助实现上下机的扣费,以及余额不够支付一小时时间情况下得强制下机。 然后,我进行了窗体的设计。经过筛选优化,我设计了五个窗体,分别是主选择窗体,注册窗体,登录窗体,上课安排窗体,实时计费和下机窗体。 主选择窗体可以用来进行上课登录、学生自由登录、管理员登录和机器的推荐。注册窗体是用来进行学生登录密码的注册。登录窗体限制学生的学号和密码必须匹配才能登录。上课安排窗体可以输入班号、上下课时间并选择星期值。实时计费和下机窗体用来扣费并方便学生随时下机。 接下来,要按照要求进行代码的编写。 A)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 此功能我在排课窗体下用select选择出全体班级的上下课以及星期值,并将管理员希望的上下课时间转换为时间类型数值,进行循环比较,用do until 语句逐个比较,使得上下课时间点都不得在其他班级的上课时间段内。如果时间不冲突,就实施修改数据库的功能,并更新保存。 B)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动提前5分钟提示,待真正结束时即自动锁屏。 在主选择窗体内有上课登录按钮和自由登录按钮。点击上课登录,输入学

数据库安全性习题解答和解析

第九章数据库安全性习题解答和解析 1. 1.什么是数据库的安全性? 答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。 2. 2.数据库安全性和计算机系统的安全性有什么关系? 答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。 系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。 3.试述可信计算机系统评测标准的情况,试述TDI/TCSEC标准的基本内容。 答:各个国家在计算机安全技术方面都建立了一套可信标准。目前各国引用或制定的一系列安全标准中,最重要的是美国国防部(DoD)正式颁布的《DoD可信计算机系统评估标准》(Trusted Computer System Evaluation Criteria,简称 TCSEC,又称桔皮书)。(详细介绍参见《概论》9.1.2)。 TDI/TCSEC标准是将TCSEC扩展到数据库管理系统,即《可信计算机系统评估标准关于可信数据库系统的解释》(Trusted Database Interpretation 简称TDI, 又称紫皮书)。在TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。 TDI与TCSEC一样,从安全策略、责任、保证和文档四个方面来描述安全性级别划分的指标。每个方面又细分为若干项。这些指标的具体内容,参见《概论》9.1.2。 4.试述TCSEC(TDI)将系统安全级别划分为4组7个等级的基本内容。 答:根据计算机系统对安全性各项指标的支持情况,TCSEC(TDI)将系统划分为四组(division)7个等级,依次是D、C(C1,C2)、B(B1,B2,B3)、A(A1),按系统可靠或可信程度逐渐增高。 这些安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。各个等级的基本内容为:D级 D级是最低级别。一切不符合更高标准的系统,统统归于D组。 C1级只提供了非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主

数据库安全设计与分析

井冈山大学 《网络安全课程设计报告》 选题名称数据库的安全与分析 学院电子与信息工程 专业网络工程 班级网络工程13本(1) 姓名何依 学号130913029 日期2016.10.08

目录 一、背景与目的 (3) 二、实施方案概要 (3) 1、用户权限 (3) 2、访问权限 (3) 3、再次校对 (4) 4、登录 (4) 三、技术与理论 (4) 1、三层式数据访问机制 (4) 2、数据加密处理机制 (4) 3、数据库系统的安全策略: (5) 四、课程设计实施 (6) 1、第一步 (6) 2、第二步 (8) 3、第三步 (9) 4、第四步 (10) 5、第五步 (11) 五、课程设计结果分析 (11) 六、总结 (12)

一、背景与目的 无论是从十大酒店泄露大量开房信息,到工商银行的快捷支付漏洞导致用户存款消失,这一种种触目惊心的事件表明数据库的安全性能对于整个社会来说是十分重要的,数据库安全是对顾客的权益的安全保障,也是国家、企业以及更多的人的安全保障,从而数据库的安全性非常值得重视。 对于数据库的安全我将进行以下分析,旨在了解更多的数据库安全技术和对常见的数据库攻击的一些防范措施,并借鉴到今后的实际开发项目中去,更好的保护客户的权益。 二、实施方案概要 本次的数据库主要基于我们比较熟悉的SQLSever进行。 为了保障用户的数据的存储安全,保障数据的访问安全,我们应该对拘束看的用户采取监控的机制,分布式的处理各种应用类型的数据即采取三层式数据库连接的机制。 1、用户权限 当一个数据库被建立后,它将被指定给一个所有者,即运行建立数据库语句的用户。通常,只有所有者(或者超级用户)才能对该数据库中的对象进行任何操作,为了能让其它用户使用该数据库,需要进行权限设置。应用程序不能使用所有者或者超级用户的账号来连接到数据库,因为这些用户可以执行任何查询,例如,修改数据结构(如删除表格)或者删除所有的内容,一旦发生黑客事件数据库的安全将会岌岌可危。 2、访问权限 可以为应用程序不同的部分建立不同的数据库账号,使得它们职能对数据库对象行使非常有限的权限。对这些账号应该只赋予最需要的权限,同时应该防止相同的用户能够在不同的使用情况与数据库进行交流。这也就是说,如果某一个入侵者利用这些账号中的某一个获得了访问数据库的权限,他们也仅仅能够影响

数据库安全性和完整性实验

实验9:数据库安全性实验 一、实验目的 加深对数据库安全性的理解,并掌握SQL Server中有关用户、角色及操作权限的管理方法。 二、实验内容 1.数据库的安全性实验。在SQL Server企业管理器中,设置SQL Server 的安全认证模式,实现对SQL Server的用户和角色的管理,设置和管理 数据操作权限。 三、实验原理和步骤 1.设置SQL Server的安全认证模式,选择混合模式。 右键服务器属性-安全性:选择SQL Server和Windows身份验证模式。 重启服务,生效。 2.账号: sa账号登录 3.登录帐号的管理

1)将Windows帐号添加到SQL Server 2005中 创建操作系统用户- 4.数据库用户的管理 1)dbo用户; 查看banking数据库的dbo用户,查看用户权限。 2)U1用户; 创建banking数据库的U1用户,查看用户权限。 5.权限管理 1)赋予所创建的U1用户db_datareader角色,查看用户权限 2)赋予所创建的U1用户db_datawriter角色,查看用户权限 3)赋予所创建的U1用户db_owner角色,查看用户权限 4)两种方法赋予所创建的U1用户对banking数据库表customer的select 权限,验证并写出sql语句 5)两种方法赋予所创建的U1用户对banking数据库表branch的select 和对branch_name修改的权限,验证并写出sql语句 6)把对loan表的update权限授予所创建的U1用户用户,并允许将此 权限再授予其他用户,验证并写出sql语句 7)两种方法回收所创建的U1用户对banking数据库表customer的select 权限,验证并写出sql语句 8)两种方法回收所有用户对banking数据库表loan的update权限,验 证并写出sql语句 四、实验报告要求 要求写出如下设计报告: 1.用Transact-SQL写出实验操作的语句 2.实验步骤和实验结果。 3.实验中的问题和提高。 4.SQL Server中有的安全性功能。 五、注意事项 1.用户、角色和权限的职能,以及它们之间的关系。

数据库原理实验报告-实验三-数据完整性与安全性控制

一、实验内容、步骤以及结果 1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。 (18分,每小题3分) (1)非空约束:为出生日期添加非空约束。 非空约束:取消表S中sbirth的勾。可能需要重建表。 (2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。 设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择‘修改’命 令-->对话框中右击sno-->选择‘设置主键’-->修改主键名为‘pk_sno’ -->保 存 (3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname。 唯一约束:单击数据库Student-->单击表-->单击S-->右击sname-->选择‘修改’命令→右击sname-->选择‘索引和键’命令-->打开‘索引和键’框图-->添加--> 是否唯一改为‘是’-->名称改为‘us_sname’ -->关闭。

(4)缺省约束:为性别(ssex)添加默认值,其值为“男”。 设默认约束:单击数据库Student→单击表→单击S→右击sno→选择‘修改’命令→单击cno-->在默认值栏输入‘男’→保存

(5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查 条件为:成绩应该在0-100之间。

(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表 和C表,外键名称分别为fk_sno,fk_cno。 2.在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建第1题中的(2)-(6)小题.(15分,每小题3分,提示:alter table add constraint) 删除约束:单击数据库Student-->表-->单击S-->展开键、约束。一一删除即可。

C大作业图书管理系统实验报告

附件1: 学号:00126 《面向对象程序设计》 大作业 题目学生成绩管理系统 学院文法学院 专业教育学 班级教育学1201 姓名杨欣 指导教师鄢红国 2013 年12 月20 日

目录 一设计目的 (1) 二大作业的内容 (2) 三大作业的要求与数据 (3) 四大作业应完成的工作 (4) 五总体设计(包含几大功能模块) (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)

一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数等)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出.将图书的信息进行记录,信息内容包含:(1)图书的编号(2)图书的书名(3)图书的库存量。假设,现收集到了一个图书馆的所有图书信息,要求用C语言编写一个简单的图书管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C语言实现系统; 2、对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出. 3、图书信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一本图书的编号、书名、库存量 (2) 图书信息录入功能:(图书信息用文件保存,可以一次完成若干条记录 的输入。) (3) 图书信息显示浏览功能:完成全部图书记录的显示。 (4) 查询功能:完成按书名查找图书记录,并显示。 (5) 图书信息的删除:按编号进行图书某图书的库存量. (6) 借书登记系统:可以输入读者编号和所借书号来借书。 (7) 还书管理系统:可以输入读者编号和所借书号来还书。 (8)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

数据库的安全性实验报告

西安邮电大学 (计算机学院) 课内实验报告 实验:数据库的安全性实验 课程:数据库原理及应用B 班级:网络1203 学号: 学生姓名: 任课教师:孟彩霞

一、实验目的 (1)理解SQL Server验证用户身份的过程,掌握设置身份验证模式的方法(2)理解登录帐号的概念,掌握混合认证模式下登录帐号的建立与取消方法 (3)掌握混合认证模式下数据库用户的建立与取消方法 (4)掌握数据库用户权限的设置方法 (5)理解角色的概念,掌握管理角色技术 二、实验内容 (1)在企业管理器中打开“SQL Server属性(配置)”对话框,设置身份验证模式为“SQL Server”和“Windows”模式(即混合模式)。 (2)创建、管理数据库服务器的登录账号。 (3)创建、管理数据库用户。 (4)管理用户权限。 (5)创建、管理数据库角色。 三、实验环境 Windows7 SQL SERVER 2012 四、实验前准备 课本 上机使用代码 五、实验步骤 1.在企业管理器中打开“SQL Server属性(配置)”对话框,设置身份验证模式为“SQL Server”和“Windows”模式(即混合模式)。 2.创建、管理数据库服务器的登录账号。用T-SQL语句创建、查看、删除登录账号。 创建一个名为Student、密码为111、使用的默认数据库为JWGL的登录账号。 EXEC sp_addlogin ‘student’,’111’,’JWGL’查看登录账号EXEC sp_helplogins 删除登录账号为EXEC sp_droplogins ‘student’ 3.创建、管理数据库用户。 用T-SQL语句创建、查看、删除数据库用户。 为数据库JWGL创建一个用户user1,该用户登录SQL Server服务器的账号为wang,登录密码为secret,相应的程序代码为: EXEC sp_addlogin ‘wang’, ‘secret’, ‘JWGL’ GO EXEC sp_grantdbaccess ‘wang’, ‘user1’查看数据库用户为EXEC sp_helpuser 删除数据库中的“wang”用户为EXEC sp_revokedbaccess ‘wang’ 4.管理用户权限。 使用T-SQL语句完成第3章习题12中(1)~(3)的用户管理和用户权限管理。企业管理器: (1)允许用户李明对Orders表进行插入、删除操作。 GRANT INSERT ,DELETE ON Orders TO ‘李明’

实验五 SQL SERVER 完整性与安全性 实验报告

实验五SQL SERVER 完整性与安全性 一、实验目的 掌握SQL SERVER数据访问控制策略和技术,SQL SERVER数据库管理系统使用安全帐户认证控制用户对服务器的连接,使用数据库用户和角色等限制用户对数据库的访问。 二、实验内容 1.在服务器级别上创建三个以SQL Server身份验证的登录名,登录名称自定。 2.分别为三个登录名在“gongcheng”数据库映射三个数据库用户,数据库用户名为Tom,Mary和John,使这三个登录名可以访问“gongcheng”数据库。

3.授予用户John创建表和视图的权限。 grant create table,create view to John 在“gongcheng”下,安全性—John—属性,选择安全对象,搜索特定对象,选择“gongcheng”表,在权限中选择“创建表”和“创建视图”, 如图:

即可赋予John“创建表”和“创建视图”的权限。 4.完成以下授权: (1)把对表S的INSERT权力授予用户Tom,并允许他再将此权限授予其他用户。 grant insert on S to tom with grant option (2)用户Mary对S,P,J三个表有SELECT和INSERT权力 grant select,insert on S to Mary grant select,insert on P to Mary grant select,insert on J to Mary (3)用户Tom对SPJ表有DELETE权力,对QTY字段具有UPDA TE权力。 grant delete,update(qty) on spj to Tom

201509-实验三:数据库的安全性课案

实验三:数据库的安全性 一、实验目的 熟悉通过SQL对数据进行安全性控制。 二、实验平台 SQL Server 2008 三、实验内容和要求 1、掌握Windows登录名和SQL SERVER登录名的建立与删除方法; 2、掌握数据库用户创建与管理的方法; 3、掌握服务器角色的用法; 4、掌握数据库权限授予、拒绝和撤销的方法; 四、实验步骤 (一)授权与回收。 [例1]授权。在SQL Sever 中建立多个用户,给他们赋予不同的权限,然后查看是否真正拥有被授予的权限了。 1)建立用户U1、U2、U3、U4、U5、U6、U7。 2)以系统管理员身份对这7个用户进行授权。 [例1-1]把查询Student 表的权限授给用户U1。 GRANT SELECT ON Student TO U1; [例1-2]把对Student 表和Course 表的全部操作权限授予用户U2 和U3。 GRANT ALL PRIVILEGES ON Student TO U2,U3; GRANT ALL PRIVILEGES ON Course TO U2,U3; [例1-3]把对表SC 的查询权限授予所有用户。 GRANT SELECT ON SC TO PUBLIC; [例1-4]把查询Student 表和修改学生学号的权限授给用户U4。 GRANT UPDATE (Sno) , SELECT ON Student TO U4; [例1-5]把对表SC 的INSERT 权限授予U5,并允许U5 将此权限再授予其他用户。 GRANT INSERT ON SC TO U5

WITH GRANT OPTION; [例1-6]用户U5 将对表SC 的INSERT 权限授予U6,并允许将权限转授给其他用户。 首先应该以U5 的身份重新登录数据库,然后再进行授权。 GRANT INSERT ON SC TO U6 WITH GRANT OPTION; [例1-7]用户U6 将对表SC 的INSERT 权限授予U7。 首先应该以U6 的身份重新登录数据库,然后再进行授权。 GRANT INSERT ON SC TO U7; 3)在授权之后验证用户是否拥有了相应的权限。 在执行完上面七个语句之后,我们可以分别以不同用户的身份登录数据库,进行相关操作,检查系统是否许可。例如: [例1-8]U4 更新Student 表的学生学号。 UPDATE Student SET SNO = ‘95101’ WHERE SNO = ‘95001’; 显示更新 1 条记录,即U4 用户拥有了对Student 表Sno 的更新权限。[例1-9]U7 向SC 表中插入一条数据:(95020,20,88)。 INSERT INTO SC V ALUES(‘95020’,’20’,88); 显示插入 1 条记录,即用户U7 拥有了对SC 表的插入权限。 [例2]回收权限。将[例1]授予的权限部分收回,检查回收后,该用户是否真正丧失了对数据的相应权限。 1)回收权限。 [例2-1]收回用户U4 修改学生学号的权限。 当前用户为SYSTEM,直接执行下列语句: REVOKE UPDATE (SNO) ON Student FROM U4; [例2-2]收回所有用户对表SC 的查询权限。 REVOKE SELECT ON SC FROM PUBLIC; [例2-3]收回用户U5 对SC 表的INSERT 权限。 将权限INSERT 授予给用户U5 时,允许该用户将权限再授予给其他用户;之后,用户U5 将INSERT 权限转授给了U6,U6 又将权限转授给U7。因此,将用户U5 的INSERT 权限收回的时候必须级联收回,不然系统将拒绝执行该命令: REVOKE INSERT ON TABLE SC FROM U5 CASCADE;

sql大作业实验报告

目录 第一章、需求分析 (2) 1 、需求概述 (2) 2 、功能简介 (2) 第二章、概念结构设计 (3) 1、在员工实体内的E-R图 (3) 2、部门实体内的E-R图 (3) 3、在工资实体内的E-R图 (3) 第三章、逻辑结构设计 (4) 第四章、物理结构设计 (4) 第五章、数据库的实施和维护 (5) 一、数据库的创建 (5) 二、表格的建立 (5) 1、建立Employsse表插入数据并设计相关的完整性约束 (5) 2、建立departments表插入数据并设计相关的完整性约束 (7) 3、建立 salary表插入数据并设计相关的完整性约束 (8) 三、建立视图 (9) 四、建立触发器 (10) 五、建立自定义函数 (12) 六、建立存储过程 (13) 第六章、总结 (14)

第一章、需求分析 1 、需求概述 针对现代化公司管理情况,员工管理工作是公司运行中的一个重环节,是整个公司管理的核心和基础。它的内容对于公司的决策者和管理者来说都至关重要,所以公司管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件工籍,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 公司员工管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。 能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。 具体功能包括:系统应该提供员工数据的插入、删除、更新、查询;员工基本信息查询的功能。 2 、功能简介 员工管理系统它可以有效的管理员工信息情况。具体功能有以下几个方面。基本信息的添加,修改,删除和查询。学生信息管理包括添加、查看学生列表等功能。

数据库安全性练习题和答案

数据库安全性习题 一、选择题 1. 以下()不属于实现数据库系统安全性的主要技术和方法。 A. 存取控制技术 B. 视图技术 C. 审计技术 D. 出入机房登记和加锁 2. SQL中的视图提高了数据库系统的()。 A. 完整性 B. 并发控制 C. 隔离性 D. 安全性 3. SQL语言的GRANT和REVOKE语句主要是用来维护数据库的()。 A. 完整性 B. 可靠性 C. 安全性 D. 一致性 4. 在数据库的安全性控制中,授权的数据对象的(),授权子系统就越灵活。 A. 范围越小 B. 约束越细致 C. 范围越大 D. 约束范围大 三、简答题 1. 什么是数据库的安全性? 答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。 数据库安全性和计算机系统的安全性有什么关系?2.

答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。 系统安全保护措施是否有效是数据库系统的主要指标之一。 数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的, 3.试述实现数据库安全性控制的常用方法和技术。 答:实现数据库安全性控制的常用方法和技术有: 1)用(户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。 2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。例如C2级中的自主存取控制(DAC),B1级中的强制存取控制(MAC); 3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。 4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中, DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。 从而使得对存储和传输的数据进行加密处理,数据加密:5)

[安全管理,数据库,计算机]计算机数据库安全管理分析与研究

计算机数据库安全管理分析与研究 摘要:现阶段我国计算机数据库和网络信息技术迎来蓬勃发展趋势,可关于数据库被非法侵入以及内部关键性数据丢失问题依旧未能根除,直接限制今后大规模网络信息系统建设进度。在此类背景下,笔者决定针对目前我国网络环境中数据库面临的一切安全威胁,加以客观论证,同时结合最新技术手段和实践经验制定妥善的数据库安全维护方案,最终开拓电子商务业务的企业获得长效发展机遇,真正为我国综合竞争实力绽放,提供保障。 关键词:计算机数据库安全管理指令内容验证解析 前言:计算机数据库内部储存大量信息,依照不同路径将挖掘的信息,直接传递给指令发送终端,该类系统独立性显著,并且和其余结构单元有着本质性差异。事实上,大多数企业和电子空间,都开始将自身核心业务转移到网络数据库之中,使得地理过于分散的厂商和公司之间的数据收集、存储、传播模式,顺利地朝着分布式、开放式过渡转化,不过涉及当中的系统介入和数据盗用等安全性问题却是始终延续。这就需要相关技术人员在完整论述计算机数据库面临的威胁因素基础上,主动透过计算机操作系统、数据库注入防护等层面,进行灵活地调试方案规划整理,进一步为日后计算机数据库安全管理绩效绽放,奠定基础。 一、关于计算机数据库安全管理的必要性论述 1.计算机数据库模型的科学组建 计算机数据库运作的核心便是后台数据库,其一切访问操作功能都将交由前台程序提供支持,尤其是在网络空间之下,数据库为关键性信息共享应用提供最小冗余度和访问控制条件,尽量保证终端最终接收过程中不会产生丢失迹象。关于这部分模型具体可划分出三个层次,包括数据库、应用服务器和浏览器等。当中浏览器作为第一层客户端,更加方便用户随时输入信息,此时代码快速转化为网页并提供交互功能,将操作主体一切请求处理完毕。位于二层的应用服务器则是扮演后台角色,利用对应的进程予以开启,保证快速响应不同请求,顺势生成必要性代码处理相关结果,如若说数据存取正好落在客户端请求范畴之中,数据库服务器则必须联合二层结构单元,进行特定请求回应。而最终层数据库服务器,则针对内部关键性数据提供严格的保护管制,对于不同类型的应用服务器当下发出请求加以轻松协调。 2.计算机数据库安全性的系统化论证 针对计算机数据库安全性加以细致验证解析。这是信息管理系统的核心任务,任何细节处理不当,都会直接限制最终数据安全管制实效,毕竟大部分关键性数据都是在数据库服务器之上捆绑,包括财务、工程技术、战略性决策数据等,都是归属于机密信息范畴内部的,杜绝一切非法访问操作行为。再就是企业内部资源规划、对外交易、日常业务的交接等,也都深刻依靠网络数据库过渡转接,所以说这部分数据的安全管理,也是十分重要的。 二、针对计算机数据库加以科学安全管理的策略内容解析 1.树立全新的计算机信息安全管理理念

数据库安全性与完整性实验

数据库原理及应用 实验报告 题目:数据库安全性与完整性实验 专业:网络工程 班级: 学号: 姓名: 太原工业学院计算机工程系 2016年10 月15日一、实验目的与要求 目的: 使学生加深对数据安全性与完整性实验的理解,并掌握SQL Server中有关用户,角色及操作权限的管理方法,熟悉通过SQL语句副i数据进行完整性控制。 要求: 1.数据库的安全性实验,在SQL Server企业管理器中设置SQL server的安全认证模式,实现对SQL server的用户和角色管理,设置和管理数据操作权限。 2.指出用户和角色的区别 二、实验内容 1.设置SQL server的安全认证模式(windows或SQL server和Windows(s)认证模式)、。 2.登陆的管理 创建一个登录用户 3.数据库用户的管理 登录用户只有成为数据库(Database User)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server的数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。 4.角色的管理 创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。 5.在学生表中定义主键、外键约束 6.在课程表的“课程名”字段上定义唯一约束 7.在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100. “课程号”字段只能输入数字字符 8.定义规则,并绑定到学生表的“性别”字段,使之只能取“男、女”值 9.在学生表中增加出生年月字段,定义缺省,并绑定到学生表的出生日期上,使之只能取当前日期。

Java程序设计大作业实验报告

目录 一、前言 (2) 二、需求分析 (3) 三、系统总体设计 (3) 3.1系统总体设计系统思路 (3) 3.2数据库设计 (4) 3.2.1 login1表的设计和数据 (4) 3.2.2 student表的设计和数据 (5) 3.2.3 course表的设计和数据 (5) 3.2.4 score表的设计和数据 (6) 3.3系统功能模块设计 (6) 四、系统详细设计 (7) 4.1登录模块 (7) 4.2 学生模块 (7) 4.3 教师模块 (8) 4.4 管理员模块 (8) 五、系统测试及运行结果 (9) 5.1 主界面 (9) 5.2 学生管理中心界面 (9) 5.3 教师管理中心界面 (10) 5.4 管理员管理中心界面 (10) 5.5 查询课表界面 (11) 5.6 查询成绩界面 (11) 5.7 查询教学情况界面 (11) 5.8 查询所有学生成绩界面 (12) 5.9 学生信息管理界面 (12) 5.10 学生成绩管理界面 (13) 5.11 用户管理界面 (13) 六、实验总结 (14) 七、参考文献 (14)

一、前言 随着计算机在人们生活中的普及和网络时代的来临,对信息的要求日益增加,学生信息管理业务受到了较为强烈的冲击,传统的手工管理方式传统的手工管理方式已不能适应现在的信息化社会。如何利用现有的先进计算机技术来解决学生信息管理成为当下的一个重要问题,学生信息管理系统是典型的信息管理系统,其开发主要就是针对前台的页面展示以及后台数据的管理。对于前者,要求应用程序功能完备,易于使用,界面简单;而对于后者,则要求数据库具有一致性、完整性,并能够依据前台的操作来对应操作后台数据库达到一定的安全性。 本学生信息管理系统主要采用的纯JAVA代码实现图形界面系统的开发,以及数据库知识进行数据的查询,删除,插入和更新。本系统主要分为三个部分:学生模块、教师模块、管理员模块。其中学生模块实现的功能:查询课表信息和查询成绩。教师模块实现的功能:查询课表信息、查询教学情况和查询所有学生的各科成绩。管理员模块实现的功能:课表信息的管理、学生信息管理、学生成绩管理和用户信息管理。

虚拟仪器大作业实验报告

东南大学生物科学与医学工程学院 虚拟仪器实验报告 大作业 实验名称:基于MIT-BIH心率失常数据库的心电信号系统的设计专业:生物医学工程 姓名:学号: 同组人员:学号: 实验室: 综合楼716 实验时间:2013/11/28 评定成绩:审阅教师:

目录 一.实验目的 二.实验内容 基于MIT-BIH心率失常数据库的心电信号系统的设计 1.实验要求和说明 2.程序设计流程图 3.程序各版块介绍说明 4.前面板的设计 5.调试过程 6.结果及分析 三.实验收获及小结 四.参考文献

一.实验目的 现代医学表明,心电信号(ECG)含有临床诊断心血管疾病的大量信息,ECG的检测与分析在临床诊断中具有重要价值,是了解心脏的功能与状况、辅助诊断心血管疾病、评估各种治疗方法有效性的重要手段。 本次大作业利用具有直观图形化编程和强大数字信号处理功能的虚拟仪器编程语言LabVIEW作为开发平台,设计一个基于虚拟仪器的简单心电信号分析系统,该系统具有心电信号的读取,处理分析,波形显示、心率显示及报警,波形存储和回放等功能。 二.实验内容 1.实验内容及要求 基于MIT-BIH心率失常数据库的心电信号系统的设计 1. 本次大作业所用原始信号是从MIT-BIH(Massachusettes Institute of and Beth Israel Hospital,美国麻省理工学院和波士顿贝丝以色列医院)心率数据库(https://www.doczj.com/doc/719495808.html,/physiobank/database/mitdb/)中选取心电信号作为实验分析的数据。设计的系统要求对原始心电信号进行读取、绘制出其时域波形,利用原始心电数据中的时间数据控制显示时间,并具有保存回放功能,同时具有心率过快或过缓报警提示功能。 2. 心电信号是微弱低频生理电信号,通常频率在0.05Hz~100Hz,幅值不超过 4mV,它通过安装在皮肤表面的电极来拾取。由于实际检测工况的非理想,在ECG 信号的采集过程中往往会受到工频噪声及电极极化等各种随机噪声的影响。噪声的存在降低了诊断的准确性。其中影响最大的是工频干扰和基线漂移噪声。因此,在ECG 信号检测过程中,如何抑制工频干扰和基线漂移等是必须解决的问题。要求选择并设计合适的滤波器,除去所给心电信号的工频干扰和基线漂移。 3. 检测心率:检测信号心电的R波,计算平均心率和实时心率(R-R波时间间隔 的倒数),并显示实时心率和平均心率。 4. 对任一路心电信号滤波前后的信号进行时域分析和频谱分析,分别显示出结 果。

数据库的安全性保护

数据库的安全性保护 张海飞西北民族大学甘肃省兰州市 730124 摘要:随着计算机特别是计算机网络的发展,数据的共享日益增强,数据的安全保密越来越重要。网络数据库安全性问题一直是围绕着数据库管理的重要问题,数据库数据的丢失以及数据库被非法用户的侵入使得网络数据库安全性的研究尤为重要。数据库管理系统是管理数据的核心,因而其自身必须有一整套完整而有效的安全性机制。实现数据库系统安全性的技术和方法有多种,最重要的是存取控制技术、视图技术和审计技术。 关键字:数据库安全性安全保护网络安全 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。安全性问题不是数据库系统所独有的,所以的计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要技术指标之一。数据库的安全性和计算机系统的安全性,包括计算机硬件、操作系统、网络系统等的安全性,是紧密联系、相互支持的。 在一般的计算机系统中,安全措施是一级一级层层设置的。在下图所示的安全模型中,用户要求进入计算机系统时,系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准进入计算机系统。对已进入系统的用户,DBMS 还要进行存取控制,只允许用户执行合法操作。 数据库安全性所关心的主要是DBMS的存取控制机制。数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库权限,同时令所有未被授权的人员无法接近数据。这主要通过数据库系统的存取控制机制实现。存取控制机制主要包括:一、定义用户权限,并将用户权限登记到数据字典中;二、合法权限检查。 我们还可以为不同的用户定义不同的视图,把数据对象限制在一定的范围内,即通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。视图机制间接地实现支持存取谓词的用户权限定义。 “审为了使DBMS达到一定的安全级别,还需要在其他方面提供相应的支持,计”功能就是DBMS达到C2以上安全级别比不可少的一项指标。审计常常是很费时间和空间的,所以DBMS往往都将其作为可选特征,允许DBA根据应用对安全性的要求,灵活地打开或关闭审计功能。审计功能一般主要用于安全性要求较高的部门。 既然造成数据库不安全的一个主要原因是因为原始数据以可读(明文)形式存放在数据库中。一旦某一用户非法获取用户名和口令,或者绕过操作系统缄DBMs)的控制入侵到系统中,可以访问和修改数据库中的信息。 另外,数据存储介质(如磁盘、光盘、磁带等)丢失也会导致数据库中的数据泄漏。如果我们对数据库中的数据(明文)进行加密处理,那么上述问题就可以得到解决。即使某一用户非法入侵到系统中或者盗取了数据存储介质,没有相应的

数据库系统安全性分析与实现

数据库系统安全性分析与实现 (刘中胜信息系统项目管理师,高级项目经理) 摘要:随着信息技术的不断发展,各行企业都不同程度地实现了信息化,因而信息系统的应用非常普及,作为信息系统的重要组成部分---数据库系统也就成为重中之重。数据库系统在运行过程中,会受到软件、硬件、人为和自然灾害等各种因素的影响,这些因素不但会破坏数据的机密性、完整性、可用性,造成数据损坏或丢失,而且会影响数据库系统的正常运行,甚至导致数据库系统的崩溃,因此,数据库系统的安全性问题变得尤为突出,不断面临巨大的、新的挑战。本文将从数据库系统的安全属性及安全技术进行分析,探讨实现数据库系统的高安全性策略。 关键字:数据库系统;数据库技术;安全性;安全策略 随着信息技术的不断发展,各行企业都不同程度地实现了信息化,因而信息系统的应用非常普及,作为信息系统的重要组成部分---数据库系统也就成为重中之重。数据库系统在运行过程中,会受到软件缺陷和故障、硬件损坏和故障,人为非法访问和误操作,以及自然灾害等各种因素的影响,这些因素不但影响数据的安全,而且会影响数据库系统的正常运行,甚至导致数据库系统的崩溃,因此,数据库系统的安全性问题变得尤为突出,不断面临巨大的、新的挑战。如何保证数据的安全,如何保证数据库系统正常安全地运行,是我们在实现企业信息化建设过程中必须认真考虑的问题。下面将从数据库系统的安全属性出发,分析构建数据库系统的安全技术,并阐述实现数据库系统高安全性的策略。 一、数据库系统的安全属性分析 对数据库系统安全属性的分析,是实现数据库安全策略的一个重要环节,是一个数据库系统采用恰当安全策略的前提。数据库系统的安全属性涉及多个方面,从总体上来讲,包括机密性、完整性、可用性、可控性和可审查性等属性。 (1)机密性:防止数据被非法窃取、调用或存取而泄密。数据只能被其相应的合法用户访问或调用。 (2)完整性:防止非法用户对数据进行添加、修改和删除,同时也防止合法用户越权访问对未被授权的数据进行添加、修改和删除,并且能够判断数据是否被修改。

数据库设计大作业

《数据库原理》课程大作业数据库设计与应用开发 课题名称:实验教学管理数据库设计 学号: 101530518 姓名:庞彪 专业年级: 10 级软工四班 成绩:

内容与要求 1. 请结合软件类专业课程实验教学环节设计数据库,实现实验教学的有效管理,具体功能应包括但不限于: (1)教师可以根据不同课程编辑和发布实验内容; (2)学生可以浏览实验内容,同时完成作品的提交; (3)学生可以在规定时间内填写、修改和提交实验报告; (4)教师可以通过应用系统批改实验报告,并提交成绩; (5)学生可以查询个人实验成绩; 2. 给出数据库设计各个阶段的详细设计报告,包括: (1)需求分析 (2)概念结构设计 (3)逻辑结构设计 (4)物理结构设计与实施 3. 写出应用系统的主要功能设计; 4. 写出收获和体会,包括已解决和尚未解决的问题,进一步完善的设想和建议; 5. 独自完成作业,有雷同的平分得分; 6. 也可以自行设计课题。

目录 1 绪论 (1) 2 应用系统功能设计 (2) 2.1 业务操作流程 (3) 2.2 系统功能设计 (3) 3 数据库设计 (4) 3.1 需求分析 (4) 3.2 概念结构设计 (7) 3.3 逻辑结构设计 (7) 3.4 物理结构设计与实施 (9) 4 结束语 (9) 4.1 收获和体会 (9) 4.2 总结与展望 (10)

1 绪论 在日常实验教学过程中,我们会遇到一些各种各样的问题,为了方便广大师生,提高教学效率,我们需要设计一种实验教学管理系统数据库软件,加强教师与学生之间的互动,实现信息化的现代化教育模式。 首先面临的问题是怎样实现教师安排学生进行实验的地点和时间。在遭遇不可预知因素时(例如:停电,教师请假,学生请假,学生设备损坏等),能够使师生交流如何解决这些特殊情况,将实验正常的进行。 其次教师可以利用该软件根据实际情况(如:不同课程等)编辑和发布实验内容,这些实验内容将保存下来,当进行教学评估时能够及时的将其任意内容调用出来。教师也能够对发布过的实验内容进行修改,但学生没有修改的权限。 第三,学生可以通过软件浏览实验当天教师发布的实验内容,也可以查找之前进行过的实验。当实验完成后,学生可以通过该系统进行作业的提交,每个学生只能提交一次作业。学生可以在规定的时间内填写、修改和提交实验报告,如果学生超过规定时间想要修改实验内容,需要向教师申请权限。 第四,教师能够通过该系统查收学生上交的实验报告,对所有的实验报告具有修改其内容的权利。对每个学生的实验成绩进行评估后,教师可以通过该系统提交各个学生的实验成绩,系统将这些内容存储到对应的学生档案数据中,如果出现提交错误的情况:如果在提交当天发现提交错误成绩,教师可以直接对成绩进行修改重新提交;否则教师与学生(成绩错误)需要向教务处申请复查成绩,核实情况后进行修改。 最后,学生可以通过该系统进行个人实验成绩的查询,当发现成绩有误时,可以通过该软件向教师申请成绩复查,教师收到成绩复查请求后,经过核实情况,如果情况属实,则向教务处提交成绩修改请求,核实情况后进行成绩的修改。 该实验教学管理系统最终目的是实现快捷的教学内容安排,方便的学生成绩查询,加强师生互动,最终达到提高教学效率和质量,构建信息化和谐教学模式。

相关主题
文本预览
相关文档 最新文档