Server2000

2024-06-28

Server2000(精选6篇)

Server2000 篇1

摘要:游标是一种处理数据的方法, 能对结果集中的每一行进行相同或不同的操作。若能正确使用游标可以使面向集合的数据库管理系统和面向行的程序设计之间的沟通变得更容易。

关键词:游标,SQL Server 2000,结果集

1. 引言

在数据库开发过程中, 我们习惯将整个结果集作为一个单元来进行处理, 然而事实上很多时候用户需要对这些数据集合中的每一行进行相同或不同的操作。游标正是能从结果集中逐一地读取一条或一部分行记录进行处理。

2. 游标的使用

当我们在SQL Server 2000中使用游标时, 我们需要执行下面任务:

2.1 声明游标

游标和变量一样, 遵循先定义后使用的原则。游标的声明有两种格式:SQL-92标准定义和Transact-SQL扩展定义。现按SQL-92语法格式来说明如何声明游标。

SQL-92语法格式:DECLARE游标名[INSENSITIVE][SCROLL]CURSOR FOR select_语句[FOR{READ ONLY|UPDATE[OF列名1[, 列名2...]]}]

其中, 使用INSENSITIVE定义的游标, 以创建将由该游标使用的数据的临时副本。对游标的所有请求都从tempdb中的临时表中得到应答, 而与基本表无关。SCROLL指定所有的提取选项 (FIRST、LAST、PRIOR、NEXT、RELATIVE、ABSOLUTE) 均可用。如果在SQL-92D E C L A R E C U R S O R中未指定SCROLL, 则NEXT是唯一支持的提取选项。select_语句是定义游标结果集的标准SELECT语句。READ ONLY声明只读游标, 不允许通过只读游标来进行数据更新。UPDATE[OF列名1[, 列名2...]]定义游标内可更新的列。如果指定[OF列名1[, 列名2...]]参数, 则只允许修改所列出的列, 否则就可以更新所有列。

2.2 打开游标

游标在声明之后若要从游标中读取数据, 必须先打开游标。打开游标的语法:OPEN游标名。

2.3 使用游标提取数

在打开游标之后, 我们就可以从游标中按要求提取数据。提取数据的语法格式:FETCH[[NEXT|PRIOR|FIRST|LAST|ABSOLUTE{n|@nvar}|RELATIVE{n|@nvar}]FROM]游标名[INTO@variable_姓名[, ...n]]

其中, NEXT返回紧跟当前行之后的结果行, 并且当前行递增为结果行。PRIOR返回紧临当前行前面的结果行, 并且当前行递减为结果行。FIRST返回游标中的第一行并将其作为当前行。LAST返回游标中的最后一行并将其作为当前行。n和@nvar表示游标相对与作为基准的数据行所偏离的位置。ABSOLUTE是按绝对位置取数据, RELATIVE则是按相对位置取数据。

INTO@variable_姓名[, ...n]允许将提取操作的列数据放到局部变量中。列表中的各个变量从左到右与游标结果集中的相应列相关联。各变量的数据类型必须与相应的结果列的数据类型匹配或是结果列数据类型所支持的隐性转换。变量的数目必须与游标选择列表中的列的数目一致。

2.4 关闭游标

当我们不使用游标的时候, 要及时关闭游标, 通知服务器释放游标所占用的资源。其语法格式:CLOSE游标名。

2.5 释放游标

游标结构本身也会占用一定的计算机资源, 当我们不再需要使用这个游标时, 为了回收被游标所占用的资源, 应该将游标释放。释放游标的语法格式:DEALLOCATE游标名。

3. 游标的应用

游标的应用主要体现在两个方面, 一是允许程序对由查询语句SELECT返回的行集合中的每一行数据执行相同或不同的操作, 而不是对整个行集合执行同一个操作。二是使用游标能对多表中的数据进行修改和删除。其中第二个功能是一种不规范的更新数据的途径很容易造成数据的不一致, 因此我们通常不使用游标来更新多表中的数据。

在游标的实际应用中, 游标取数至关重要。在执行FETCH语句后, 全局变量@@FETCH_STATUS返回了游标当前的状态。其中@@FETCH_STATUS的值为0表明FETCH语句执行成功;-1表明FETCH语句执行失败或者此行不在数据结果集中;-2表示提取的数据行不存在。所以在实际使用游标取数的操作通常与W H I L E循环紧密结合在一起, 利用@@FETCH_STATUS的返回值确定取数操作是否成功。下面通过一个具体的例子使我们更加深刻地理解游标的原理与应用。

例:利用游标从rs数据库中的jbqk表 (基本情况表) 和b m x x表 (部门信息表) 检索出每个部门的职工姓名, 并计算出该部门职工总人数。其中两表数据如表一、表二:

通过利用游标进行操作后, 我们得到了新表zgbm中的记录如下:

4. 结束语

数据库的游标是类似于C语言指针一样的语言结构。它提供了一种在服务器内部处理结果集的方法, 它可以识别一个数据集合内部的工作行, 从而可以有选择地按行采取操作。因此能否正确合理地使用游标对面向集合的数据库管理系统和面向行的程序设计之间的沟通更为合理。

参考文献

[1]王晟, 马里杰编.SQL Server数据库开发经典案例解析.北京:清华大学出版社.2006.

[2]虞益诚编.SQL Server2000数据库应用技术.北京:中国铁道出版社.2006.

[3]林晓庆.MS SQL SERVER中游标的使用.甘肃农业.2006, (11) .

Server2000 篇2

用户无限制地占用服务器存储空间会大大影响服务器资源的合理利用,甚至能降低系统运行效率。我们可以利用Windows 2000 Server的磁盘配额功能,来进行磁盘空间的合理分配,提高存储空间的有效利用。

通过使用卷的磁盘配额跟踪以及控制磁盘空间,系统管理员可将 Windows 配置为:用户超过所指定的磁盘空间限额时,阻止其进一步使用磁盘空间并记录此事件。启用磁盘配额时,可以设置两个值:磁盘配额限度和磁盘配额警告级别。该限制指定了允许用户使用的磁盘空间容量。警告级别指定了用户接近其配额限度的值。

首先,我们要用Windows 2000的NTFS版本格式化磁盘。要管理卷上的配额,必须是驱动器所在计算机上的Administrators 组的成员。文件压缩不影响配额统计。例如,如果用户限制3MB的磁盘空间,则只能存储3MB以内的文件。如果卷不是用NTFS格式化的或者不是本地计算机上的Administrators组的成员,那么卷的属性页上将不显示“配额”选项卡。

接下来,我们来进行磁盘空间限额的设置:打开“我的电脑”/创建报告的卷,单击“属性”/单击配额选项卡,系统默认没有启动配额管理,只要单击“启用配额管理”选项就可以启动配额管理,选择“将磁盘空间限制为”项,在其下面输入限制值,同时可以设置警告等级,

设置好这些选项后,Windows 2000 Server仍然能够让用户在超过限制值后继续向服务器存放文件,如不让用户继续存放文件,只要选中“拒绝将磁盘空间给超过配额限制的用户”选项卡,超过配额限制的用户就不能够继续向服务器存放文件了。如果管理人员想了解用户超过指定限额的情况,只要选择“该卷的配额记录”选项,当用户达到这里所规定的要求时,计算机自动会将其记录下来,系统管理员可以通过“事件查看器”来查看。

磁盘限额设置只能应用到“启用卷的磁盘配额到管理”后所创建的用户上,系统设定后自动跟踪新用户卷的使用。但是,磁盘配额不能用到已经存在的卷用户上。我们可以通过在“配额项”窗口中添加新的配额项目将磁盘空间配额应用到现有的卷用户上。

另外,配额项主要用于具体查看、更改、添加、删除对某一用户的配额,即在上面磁盘配额中所设置的是对后来所创建的所有用户都起作用,而配额项使我们可以具体对某一用户进行设置。在配额项窗口中列出有当前已经设置了配额的所有用户账号使用磁盘空间的情况,双击相应用户,可以更改这一用户的磁盘空间限额。如要删除某一用户的磁盘空间限额,只要选择相应用户,选择“配额”选单中的“删除配额项”。对于在“启用配额管理”之前创建的用户,我们可以选择“配额”选单中的“新建配额项”,弹出下面用于选择用户建立配额项的对话窗口,我们可以选择一个或一批还没有创建配额的用户后,单击确定,在对话框中输入限制的数量就可以创建。 通过上面的方法创建的磁盘配额项只适用于卷,且不受卷的文件夹结构及物理磁盘上的布局限制。如果卷有多个文件夹,则分配给该卷的配额将整个应用于所有文件夹。如果单个物理磁盘包含多个卷,并把配额应用到每个卷,则每个卷配额只适于特定的卷。

Server2000 篇3

关键词:面向对象,数据库,测试软件,多进程软件

随着计算机、通信和网络技术的发展,用户对图像传输和存储中的数据压缩要求变得更高。图像压缩算法是图像压缩过程中的核心内容。图像压缩传输后再解压得到图像质量的好坏,直接用于评价压缩算法的优劣。因此,在研究算法时关于算法的测试评选过程必不可少。文中的算法评测软件主要用于图像压缩算法研究过程中的算法测试以及算法对某些图像和参数的效果差异的统计记录。

1 设计要求及设计策略

1.1 设计要求

软件设计的算法质量测评过程是:先进行大范围遍历测试,通过统计图形或数据找出效果较好的参数组合,然后使用这些较好的参数进行测试,这次测试将保存解压缩后的图像数据,可以进行主观评价,最后得出结论,便于以后查询。具体软件流程图如图1所示[1]。

1.2 设计策略

以数据为中心的分布式计算为主导思想,强调代码的重用性,在整体上将软件分为几个部分,各个部分相互独立,把通用对象单独封装,形成较为独立的程序库,可以在其他项目中调用[2]。

采用面向对象的思想操作数据库,把数据对象化,就是使用类封装同属性数据集合,真正数据的使用者看不到数据的物理结构,仅仅能看到其中的逻辑关系。软件依托SQL Server2000实现对测试数据的存储和管理,将软件用到的算法内容、算法参数、图像数据以及结果数据都交给数据库维护[3]。

图像压缩算法以及各个辅助算法是独立的可执行文件,而且必须是DOS提示符下运行的无界面程序,软件将不断启动执行算法进程,遍历执行算法的所有参数组合。

软件将以工程的形式来进行操作,它将包含软件应用中所有的数据和设置。整个算法的评估过程和在其中用到、产生的各类数据,都将以一个工程的形式进行保存,工程的概念将作为软件的主框架来实现。

2 软件总体设计

2.1 软件结构层次

软件实现大致分为三层:第一层,负责最底层的数据维护和算法执行,具体包括数据库的管理和测试算法的执行进程。第二层,是将软件执行时存在于内存中的数据维护起来的一些类,具体包括维护从数据库中取出数据的工程数据管理类、算法数据管理类、图像数据管理类以及保存查找行为所得到数据的算法列表类和工程列表类。第三层,就是软件与用户间的接口界面,主要负责接受用户的输入以及实时显示软件执行进程。各层之间的关系如图2所示[4]。

2.2 类的继承关系

软件根据各模块实现功能的相似性和多样性,可利用类的继承性很好地将各个功能模块表示出来,为后面其他模块的扩展或修改提供了良好的结构基础。

首先定义软件中的多个基础类,包括管理数据的数据管理类、负责查找功能的数据查找器以及保存查找结果的数据列表类和数据内容类。然后根据不同数据的不同性质,从基础类派生出各种派生类。它们虽然通过不同的方法实现,但其具有很多相同的对外接口,这为后面模块多态地调用各模块功能提供了方便。其具体的继承关系如图3所示[5,6]。

3 主要功能模块介绍

如图4所示,软件功能直接依赖于5个模块,其中左边3个模块与软件操作流程相关,有明显的先后顺序;右边的两个模块属于辅助模块,向主要操作提供数据支持。

3.1 工程管理模块

工程管理模块不仅负责对历史工程的查找、查看和删除操作,而且包含了对当前正在执行工程的进度管理。因为软件设计时将整个算法评测过程定义为一个工程,无论是评测过程中用到的算法、算法参数,还是评测完毕后的算法执行结果、结果统计筛选以及算法的执行过程和与数据库的交互,都将在工程管理的大框架下完成。工程查看界面将是软件的主要界面,用户在上面可以完整地看到工程的各项详细内容,并在其上进行工程编辑。

图中描述了工程管理模块的界面操作流程,从左边的菜单开始,是用户点击菜单后出现的对话框。图中体现出两个主要界面,显示工程列表对话框和查看编辑工程窗口。工程列表对话框提供查找功能,可以按照工程各项参数数据查找工程,支持在查找结果中再次查找。工程查看窗口是整个软件的主窗口,工程打开后,该窗口被显示出来,作为主窗口直到软件关闭。

3.2 算法执行模块

算法执行模块功能简单,从数据库中读取参数,然后执行参数中指定的算法程序,最后把结果保存到数据库中,并在界面上提示用户。

算法执行模块有两个类,状态显示对话框类和算法执行线程类。其中状态显示对话框负责与用户交互,向线程提供数据,控制线程的执行;而算法执行线程类只负责执行算法程序以及获取执行结果。算法执行模块的主要功能是启动算法执行线程,在软件后台执行算法的所有遍历,将结果随时存入数据库,并在界面上实时显示执行过程。该模块主要将算法执行时出现的错误或崩溃限制在模块内,不使其扩散到软件其他部分导致整个软件的崩溃。

3.3 统计与筛选模块

统计筛选模块主要实现评测算法遍历完毕后的数据分析工作。该模块主要的操作对象是数据库中的遍历参数表,通过对该表的分析可以了解到算法在各种参数组合下的性能表现。软件通过对某些结果值随参数变化趋势的观察,可以客观地做出对算法的评价。该模块在界面上主要有两个对话框组成:绘图对话框和参数筛选对话框。

绘图对话框主要用于显示测试参数与测试结果的关系曲线图,使算法测试用户能够直观地观察到算法的某些性能。通过绘制两种参数的关系曲线图,可以很快获取算法在某些方面某些参数区间的优劣性能。

参数筛选对话框主要是评价数据的统计,能让用户筛选需要的组合。其具体功能是将统计出符合的参数组合数据显示在界面上。统计功能相当于查找,能够让用户找到符合条件的参数组合。

3.4 算法管理模块

算法管理是对待测算法和其他辅助算法程序的管理。本模块实现了算法的添加、导入、查看和删除功能。模块中主要有5个对话框,这些对话框的关系如图6所示,图中历史工程列表和工程查看两个对话框是工程管理的对话框,不包括在算法管理模块中。

添加算法对话框实现了用户添加算法的接口,用户只需填入算法描述脚本文件即可。对话框打开指定的脚本文件,解析文件内容,把解析正确的内容显示在对话框上。添加算法成功后,算法相关的各种数据将在数据库的相应项目中保存,从而实现算法在数据库的添加。

算法列表对话框实现快速查找算法的手段,按一定条件查找符合的算法,并支持在结果中查找。查找成功后在对话框列表中显示符合条件算法的名称、版本、添加时间等基本内容。

算法详细内容对话框查看对话框显示算法的所有内容信息,主要功能是以列表的方式逐一显示算法的详细信息,提供算法的“删除”和“导入”工程的功能。

测试参数列表对话框显示所有与当前算法相关的测试参数概要,主要功能有:提供测试参数的查找功能以缩小参数的范围;显示测试参数对应的各项工程内容数据。

测试参数详细内容查看窗口用于查看测试参数的所有内容。窗口以非模式对话框的形式实现,以便用户在观察窗口时,能够同时操作前一个对话框。

3.5 图像管理模块

图像管理模块将通过“图像管理软件”以com组件的形式,通过图像管理软件将待测图像以及算法测试中产生的中间临时图像和结果图像保存维护起来,供软件的其他模块使用。

4 结束语

本文主要对基于数据库算法评测软件的具体设计开发进行了说明。软件利用数据库管理纷繁复杂的测试数据,而且通过不断地启动新的进程快速的遍历测试算法所有参数,为算法研究人员提供了便利的辅助工具。软件以面向对象作为软件设计的主题思想,将数据封装为对象并建立各数据对象之间的逻辑关系,将实现功能的各部分建立为一个个独立的模块,所以在后面的算法研究中对功能扩展升级要求实现就变得十分方便。

参考文献

[1]孙鑫.VC++深入详解[M].北京:电子工业出版社,2006.

[2]Comp-U-Learn Tech India Ltd.UML系统分析设计[M].王强,译.北京:高等教育出版社,2005.

[3]CHUCK W.Visual C++6.0数据库编程大全[M].北京:电子工业出版社,2000.

[4]STEVE R.代码大全[M].2版.金戈,汤凌,译.北京:电子工业出版社,2006.

[5]刘刀桂.Visual C++实践与提高:数据库篇[M].北京:中国铁道出版社,2001.

Server2000 篇4

1《SQL Server2000数据库》教学重要性、现状及分析

1.1 SQL Server2000数据库教学的重要性

SQL Server 2000是一个杰出的网络数据库平台, 它建立在成熟而强大的关系数据模型的基础之上, 很好地支持C/S模式, 能够满足各种类型的信息管理需求。

在高职高专的数据库及应用课程体系中, SQL Server的先修课程是数据库原理 (基于A c c e s s) , 后续课程是数据库系统开发 (基于ASP、JSP或PHP) 。因此, SQL Server实训负有承前启后的使命。

1.2 SQL Server2000数据库教学的现状及分析

笔者就此情况设计了一份调查问卷, 调查选取对象是我校2008和2009年修完SQL Server 2000课程的学生, 以了解学生在学习完本课程之后的感受及建议。本次问卷共发放46份, 回收46份, 有效问卷46分, 有效率100%。因此, 问卷调查的结果有效。

2 改进教学方案和教学手段

2.1 数据库建模

对于数据库初学者而言, 要完成数据库建模, 无疑是思维模式的一种转变。如何引导学生从现实世界抽象到信息世界, 再从信息世界转换成机器世界是学习数据库建模首先要解决的概念问题。

经验表明, 选择案例, 是十分重要的。如果案例比较简单, 达不到效果;如果过于复杂, 难免挫伤学生的积极性。所以结合学生实际, 再结合理论知识的指导, 选择学生成绩管理系统作为案例既可以大大提高其应用能力和成就感, 也可以培养学习兴趣。

而数据库设计的难度同样可以通过引导学生建立E-R图来调节。例如图1只创建三个数据表:学生表、课程表、成绩表。如果将基本E-R图扩展为图2所示的复杂E-R图, 则需再增加创建系部表、教师表和任课表。此时, 设计数据库的难度和创建数据表的工作量都显著增大。

2.2数据的完整性

在系统的前台操作及后台数据库的操作中经常会出现漏洞, 而导致这些问题的原因在于数据规划的不完整性。因此, 数据的完整性成为数据库建立中创建表的关键。

而什么是数据完整性呢?数据完整性是指存储在数据库中数据的一致性和正确性, 包括实体完整性、域完整性、引用完整性及用户定义完整性。

从表一的数据可知, 由于在该门课程的教学中, 很多教师忽略了数据完整性的重要, 由此, 让学生产生误区, 忽视了数据的完整性或觉得难于理解。那应该怎样用更易于理解的教学方法让学生了解数据完整性的重要性呢?以学生成绩管理系统为例, “学生”的表中含有学号、姓名、性别、出生日期等多个字段, 而每个学生只有“学号”字段不可能出现重复值, 故将“学号”字段设置为关键字, 从而确保实体完整性;而“成绩”表中含有学号、课程代号、分数等多个字段, 分数字段的取值范围为0至100, 以确保成绩值合理来规约域完整性……这样, 由简至难引入通过数据类型、索引、各种约束、触发器等来规约数据的完整性。

2.3 T—SQL语句的使用

SQL (结构化查询语言) 是一种在SQL S erv er中定义、操纵和控制数据的标准语言。为了让教学具有更好的通用性和可移植性, T-SQL语言的学习往往是教学课时数安排最多的一个部分。表一中的数据反映出来的效果就是最好的说明。在这部分内容的课程讲授中, 笔者结合学生成绩管理系统这一案例进行SQL语言基础的讲解, 从创建数据库、数据表、完整性约束设置到数据表的插入、更新、删除以及查询, 从数据表视图的管理到数据库的备份还原, 逐步向学生展示T-SQL语言的用法及功能, 并结合系统的具体需求, 向学生传授较难掌握的知识点。

在SQL Server 2000中, SELECT语句是一个最基本和最重要的语句, 其功能是实现选择查询。SELECT语句包含的子句很多, 要让学生充分掌握每一个字句, 并可以灵活的应用, 是这门课程的重点也是难点。在这一部分的讲授中, 笔者最大的体会就是, 一定要让学生学会分析问题, 把复杂的问题简化为几个小问题, 清晰地找出查询要求和条件表达式的字段所分布的表, 以及涉及执行操作功能, 结合SLECT语句的语法知识, 就可以轻而易举地解决问题。

例如:查询选修了“数据库”课程的学生的姓名和所属院系。

解题思路:该查询要求的数据分布在学生表中, 但条件表达式的字段来源于课程表, 而且学生表和课程表不能通过相同的字段连接起来。为了实现查询目标, 应该使用成绩表作为实现查询的中间表, 通过字段学生学号和课程号把三张表联系起来。

查询语句为:

Select学生.姓名, 所属系

From学生, 成绩, 课程

Where成绩.学号=学生.学号and成绩.课程号=课程.课程号and课程表.课程名=‘数据库’

2.4 触发器、存储器的使用

存储过程是集中存储在SQL Server服务器端的SQL语句和流程控制语句的预编译集合, 用以实现某种任务;而触发器则一种特殊的存储过程。在实际的系统设计中, 引入这两个数据库对象不仅可以减少客户端代码的重复, 提高执行效率, 而且可以减少网络流量, 提高安全性能。但学生往往不能正确理解触发器的设计规则及实现原理, 致使在表间数据同步问题上不会巧妙地利用触发器。

笔者采用三种方法解决了触发器对大部分同学的困扰:一是将创建触发器的语法格式分解成多个“子句”, 让学生逐层消化理解触发器;二是引入inserted和deleted这两个特殊的临时表, 通过讲授这两个表的生成时机和内容来源, 说明当用户对数据表做添加、删除、修改等更新操作时, 数据的原型在inserted或deleted表存有临时副本, 利用数据原型副本条件即可同步更新相关子表的数据;三是通过各种触发器的应用实例让学生从感性上理解触发器的作用, 从而可以正确使用触发器。

3 考核方式的改革

由于该门课程的应用性和实用性很强, 所以对学生进行考核时, 应着重考核学生实际技能的掌握与熟练程度, 因此对考试方式进行改革, 加强学生对知识运用能力的考核, 改变了以往只有笔试考试的方式, 采用笔试+实训考试+实例开发三者相结合的方式, 提高了实践动手能力占总成绩的比例。这在一定程度上促进了学生平时动手能力的培养, 增强了学生学习的积极主动性。同时在平时作业中, 增加了附加思考题, 给有能力的学生完成, 这将进一步激发学生学习的积极性。为部分同学以后的毕业设计积累经验, 为就业做准备。

参考文献

[1]王伟, 刘洋.《SQL Server2000数据库管理系统》课程教学改革探索[A].中国科技信息.2008, (7)

[2]赵杰文, 原娇杰, 丰树谦.“Task-driven”教学法在SQL Server2000数据库教学中的应用[A].软件导刊.2007, (7) .

[3]叶品菊.SQL Server2000的组合查询方法设计[A].农业网络信息.2007, (4) .

[4]徐光迎.SQL Server实训项目设计中的“五要”[A].电脑知识与技术.2009, (3) .

[5]霍红颖.高职《SQL Server数据库开发》网络课程建设与实施[A].职业技术教育.2009, (29) .

[6]曾海峰.高职校院网络数据库SQL Server课程教学探讨[A].电脑知识与技术.2009, (8) .

[7]李爱军.浅谈SQL Server2000教学中的体会[A].计算机教育.2009.

Server2000 篇5

首先登陆windows2000 server网络的域控制服务器, 打开“程序/管理工具/Active Directory用户和计算机”, 这是windows2000 server对域内用户和计算机进行各种权限管理的主要工具。我们在图一左侧“树”窗口中看到目前的域为tv.com, 域控服务器为DB-MAIN, 最下面有一个名为“tv”的组织单元, 我们的普通编辑用户“edit”就是属于它的一个对象。要限制“edit”用户能够访问哪些特定的硬盘驱动器, 就必须对“tv”组织单元的组策略进行修改, 用鼠标双击“tv”打开它的属性窗口, 在组策略面板点“编辑”按钮, 打开组策略编辑窗口图二。

要限制用户访问特定的硬盘驱动器, 在图二左侧“树”窗口依次打开“用户配置/管理模板/windows组件/windows资源管理器”, 双击右侧“策略”窗口的“隐藏我的电脑中这些指定的驱动器”, 打开新窗口见图三。

图三列出了windows2000 server缺省安装的几种限制驱动器的策略, 如果有符合需要的项目, 将它启用即可。可是, 在这个非编网络中, 我们想让编辑用户edit只使用本地驱动器的F盘, 此外无权访问其他的任何驱动器, 所以这些默认的策略是不够用的。怎么办呢?

当使用windows2000 server“Active Directory用户和计算机”创建组策略对象 (包括组织单元) 时, 会针对每个组策略对象自动生成一套管理模板 (ADM) 文件, 其中名为“system.adm”的文件包含了该组策略对象的各种设置信息, 对它进行相应的编辑修改就能够实现我们的要求。接下来我们首先要找到edit用户对应的system.adm文件。

返回到图一, 点击tv组织单元 (记住:edit用户是它的下属对象) 属性窗口的“属性”按钮, 打开窗口见图四;需要记录“唯一的名称”项目中的数值:这里是“{B2E3AC98-698E-4DE7-8028-0A7E284152A7}”。windows2000 server各个域策略管理模板文件夹的默认位置是:“%SystemRoot%SysvolSysvolDomainNamePolicies”, 我们打开域控制服务器的“c:winntSysvolSysvoltv.comPolicies”文件夹, 找到其中一个名为“{B2E3AC98-698E-4DE7-8028-0A7E284152A7}”的子文件夹, 这里就是tv组织单元域策略管理模板存放的位置。用windows自带的记事本软件打开“adm”子文件夹下的system.adm文件, 现在可以开始编辑修改工作了。

要更改默认的“限制访问特定驱动器”项目, 必须修改System.adm中以下部分:

注意ITEMLIST下的几条语句, 它们表示前面图三“隐藏我的电脑中这些指定的驱动器”窗口中下拉列表列出的各个选项, 其中VALUE NUMERIC后面的十进制数值转换为26位二进制字符串后, 对应26个驱动器号 (Z到A, 倒序) 的开关状态;例如十进制数67108863转换后为:11111111111111111111111111, 代表驱动器号为“ZYXWVUTSRQPONMLKJIHGFEDCBA”的26个驱动器全部受到限制无法访问。我们现在的要求是只能访问F盘, 二进制字符串应为:11111111111111111111011111, 对应的十进制数是67108831。而[strings]部分负责对ITEMLIST下的各个语句中“NAME!!”前缀的字段进行注释, 让他们显示在图三“隐藏我的电脑中这些指定的驱动器”窗口的下拉列表中。

我们要做的是:在I T E M L I S T中加上一句“N A M E!!FdisplayOnly VALUE NUMERIC 67108831”, 在[strings]中加上另一句“FdisplayOnly="只显示F盘"”, 然后将system.adm存盘后退出记事本, 重启动域控制服务器。

再次打开打开“程序/管理工具/Active Directory用户和计算机”, 编辑tv组织单元的组策略, 我们看到其中多了一项“只显示F盘” (见图五) , 将它启用。以edit用户登陆非编网络, 现在他只能使用本地驱动器的F盘了。

Server2000 篇6

数据库是重要的信息载体, 其存取的数据都是重要的资料。而数据库所存取的数据的完整性和合法存取会受到很多方面的安全威胁, 包括密码策略、系统后门、数据库操作以及本身的安全方案等等。因此数据库安全性理应受到重视。目前, 微软的SQL Server是一种广泛使用的关系数据库, 很多单位的信息化平台都是基于SQL Server上的, 如果数据库系统中存在的安全漏洞和不当的配置, 通常会造成严重的后果, 如数据资料被破坏和窃取。本文主要讨论SQL Server 2000数据库的网络连接安全和使用上的问题。

2. SQL Server 2000中的网络连接安全

在进行SQL Server 2000数据库的安全配置之前, 首先你必须对其操作系统进行安全配置, 保证操作系统处于安全状态。其次对使用的操作数据库软件进行必要的安全审核, 如对ASP、PHP, JSP等脚本, 这是很多基于数据库的WEB应用常出现的安全隐患, 对于脚本主要是一个过滤问题, 防止破坏者构造恶意的SQL语句。再次, 要及时从微软的网站上下载和安装SQL Server2000补丁。下面逐一讨论SQL Server 2000中的网络连接安全问题。

(1) 密码策略的使用密码作为打开数据库的钥匙, 所以把密码策略摆在所有安全配置的最重要位置, 目前, 很多数据库帐号的密码过于简单, 如操作系统密码过于简单是一个道理。对于sa更应该注意, 同时不要让sa帐号的密码写于应用程序或者脚本中。健壮的密码对于数据库的安全是极其重要的。SQL Server 2000安装的时候, 应该使用混合模式, 那么就需要输入sa的密码, 除非你确认必须使用空密码。这比以前的SQL Server版本有所改进。同时养成定期修改密码的好习惯。数据库管理员应该定期查看是否有不符合密码要求的帐号。比如使用下面的SQL语句:

用它来检测空密码现象的存在, 同时要告之即时更正。

(2) 安全帐号策略的使用由于SQL Server 2000中不能更改sa用户名称和删除这个超级用户, 所以, 必须对这个帐号进行重点保护, 就要给sa用户一个非常强壮的密码, 最好不要在数据库应用中使用sa帐号, 在当其它系统管理员不可用或忘记了密码的情况下, 才使用sa。数据库管理员应该新建立一个拥有与sa一样权限的超级用户来管理数据库。安全的帐号策略还包括不要让管理员权限的帐号泛滥。SQL Server 2000的认证模式有Windows身份认证和混合身份认证两种。如果数据库管理员不希望操作系统管理员来通过操作系统登陆来接触数据库, 可以在帐号管理中把系统帐号删除。这样做的危险是sa帐号的密码被忘记, 就没有办法来恢复。很多主机使用数据库只是用来做查询、更新等简单功能的。这就要求在分配帐号权限时, 根据实际需要赋予能够满足应用要求为最佳。 (3) 加强数据库日志的记录的查看定期查看SQL Server日志检查是否有可疑的登录事件发生。审核数据库登录事件的失败和成功, 在实例属性中选择"安全性", 将其中的审核级别选定为全部, 就详细记录了所有帐号的登录事件。发现可疑的登录要做出及时处理。

(4) 协议加密的使用SQL Server 2000使用的Tabular Data Stream协议来进行网络数据交换, 如果不加密的话, 所有的网络传输都是明文的, 包括密码、数据库内容等等, 这是一个很大的安全威胁。能被人在网络中截获到他们需要的东西, 包括数据库帐号和密码。所以, 在条件容许情况下, 最好使用SSL来加密协议。

(5) 管理扩展存储过程对存储过程进行变动, 并且对帐号调用扩展存储过程的权限要慎重, 在多数应用中根本用不到系统的存储过程, 而SQL Server 2000的很多系统存储过程只是用来适应用户需求的, 其实没有必要, 相反这些系统存储过程能很容易地被人利用起来提升权限或进行破坏。所以请删除不必要的存储过程。

(6) TCP/IP端口问题默认情况下, SQL Server 2000使用1433端口监听, 很多数据库管理员认为SQL Server 2000配置的时候要把这个端口改变, 就不很容易地知道使用的什么端口。但通过微软未公开的1434端口的UDP探测可以很容易知道SQL Server 2000使用的什么TCP/IP端口。一种解决方法可以通过在实例属性中选择TCP/IP协议的属性, 选择隐藏SQL Server实例。如果隐藏了SQL Server实例, 则将禁止对试图枚举网络上现有的SQL Server实例的客户端所发出的广播作出响应。这样就不能用1434来探测你的TCP/IP端口了。另一种解决方法拒绝来自1434端口的探测, 由于1434端口探测没有限制, 能够被别人探测到一些数据库信息, 而且还可能遭到攻击让数据库服务器的负荷增大, 所以对操作系统来说, 在IPSec过滤拒绝掉1434端口的UDP通讯。

(7) 对网络连接进行IP限制SQL Server 2000数据库系统本身没有提供网络连接的安全解决方案, 但是操作系统提供了这样的安全机制。使用操作系统自己的IPSec可以实现IP数据包的安全性。请对IP连接进行限制, 只保证自己的IP能够访问, 也拒绝其他IP进行的端口连接, 把来自网络上的安全威胁进行有效的控制。

3. 小结

上面主要介绍的SQL Server 2000的网络连接安全配置的一些方法, 通过安全配置, 可以让SQL Server 2000本身具备足够的安全防范能力。当然, 更主要的还是要加强内部的安全控制和数据库系统管理员的安全意识。数据库中数据的安全性问题是一个长期的解决过程, 需要以后进行更多的安全维护工作。

参考文献

[1].王恩波.网络数据库实用教程-SQL Server 2000高等教育出版社, 2005

【Server2000】推荐阅读:

上一篇:监测数据审核下一篇:肝动脉造影

本站热搜

    相关推荐