数据库课后题答案 第八章 管理SQL Server的安全性
数据库原理及应用第八章课后习题答案
习题81、什么是数据库的安全性?数据库的安全性是指数据库的任何数据都不允许受到恶意的侵害或未经授权的存取或修改。
主要内涵包括三个方面:①保密性:不允许未经授权的用户存取数据。
②完整性:只允许被授权的用户修改数据。
③可用性:不应拒绝已授权的用户对数据进行存取。
2、什么是数据库的完整性?数据库的完整性是指数据库中数据的正确性和一致性。
数据库的完整性对数据库应用系统非常重要。
3、什么是数据库的完整性约束条件?为了保证数据库中的数据完整性,SQL Server设计了很多数据完整性约束:实体完整性、域完整性、参照完整性、用户定义完整性。
4、DBMS的完整性控制机制应具有哪些功能?1)数据库的完整性约束能够防止合法用户向数据库中添加不合语义的数据。
2)完整性控制机制易于理解,可以降低应用程序的复杂性,提高运行效率。
3)合理的数据完整性设计,能够兼顾数据库的完整性和系统的性能。
完善的数据库完整性,有助于尽早发现应用程序的错误。
5、DBMS在实现参照完整性时需要考虑哪些方面?强制参照完整性时,SQL Server将防止用户执行下列操作:1)在主表中没有关联的记录时,将记录添加或更改到相关表中。
2)更改主表中的值,导致相关表中生成孤立记录。
3)从主表中删除记录,但仍存在于该记录匹配的相关记录。
6、在关系系统中,当操作违反实体完整性、参照完整性和用户定义完整性约束条件时,一般是如何处理的?系统可以采用以下的策略加以处理:1)拒绝(NO ACTION)执行:不允许该操作执行,该策略一般为默认策略。
2)级联(CASCADE)操作:当删除或修改被参照表的一个元组造成了与参照表不一致,则删除或修改参照表中的所有造成不一致的元组。
3)设置为空值(SET-NULL):当删除或修改被参照表的一个元组造成了与参照表不一致,则将参照表中的所有造成不一致的元组的对应属性设置为空值。
7、数据库安全性和计算机系统的安全性有什么关系?计算机系统中,安全措施是一级一级层层设置。
SQLServer课后习题参考答案(详解)
SQLServer课后习题参考答案(详解)第一章:1、订单管理系统的功能有哪些?答:订单管理系统的功能主要有客户查询商品信息、客户预订商品并提交订单、销售人员处理客户的订单信息、销售人员管理商品信息、客户信息等。
2、说明ER模型的作用?答:ER模型(实体关系模型)是描述概念世界,建立概念世界的工具,ER方法把管理系统所要描述的问题划分为单个的实体,通过实体间的联系实现有效、自然地模拟现实世界。
3、什么是关系模型?关系的完整性包括哪些内容?答:关系模型就是用二维表格结构来表示实体及实体之间联系的模型,关系模型包括四类完整性:域完整性、实体完整性、参照完整性和用户定义的完整性。
4、按照功能,SQL语言分为哪4部分?答:按照功能,SQL语言分为数据定义语言、查询语言、数据操纵语言、数据控制语言。
5、规范化范式是依据什么来划分的?它与一事一地的原则有什么联系?答:规范化范式根据一个关系满足数据依赖的程度不同,可规范化为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)。
规范化范式遵循一事一地的原则,将描述一个独立事物的属性组成一个关系。
第二章:1、SQL Server 2005有哪些新增特性?答:SQL Server 2005的新特性主要体现在企业数据管理、开发人员生产力、商务智能三个方面。
企业数据管理体现在高可用性、管理工具、安全性和可伸缩性;开发人员生产力体现在CommonLanguage Runtime集成、集成XML、Transact-SQL增强和SQL服务代理;商务智能体现在分析服务、数据转换服务、报表服务和数据挖掘。
2、SQL Server 2005安装的软件和硬件环境是什么?答:SQL Server 2005安装的软件和硬件环境参见教材表2-3、2-4、2-5、2-6。
3、SQL Server 2005有哪些版本?有哪些服务组件?答:SQL Server 2005包括企业版、标准版、工作组版、开发版和简易版五个版本,服务组件主要有SQL Server 数据库引擎、Analysis Services、Reporting Services、Notification Services、Integration Services等。
第八章SQLServer安全性管理
第11章 SQL Server的安全性管理
11. 1 安全性管理概述 11. 2 登录身份验证管理 11. 3 角色管理 11. 4 数据库用户管理 11. 5 权限管理
登录身份验证模式
SQL Server 2000身份验证 Windows身份验证
Windows身份验证
单击“是”按钮,则系统会停止当前服 务并重新启动SQL Server 2000服务器, 使修改后的设置开始生效。
SQL Server 2000的登录账户
与SQL Server 2000提供的两种确认用户 的验证模式相对应,在SQL Server 2000 中存在两类登录账户: SQL Server账户 和Windows账户。其中Windows账户又 包含“Windows用户”账户和“Windows组” 账户两种类型。
修改登录账户属性
修改SQL Server登录账户属性 修改Windows登录账户属性
修改SQL Server登录账户属性
(1)企业管理器: 双击需要修改属性的 SQL Server登录账户, 这里双击newlogin2, 打开“SQL Server登 录属性”对话框,在 里面可以修改密码、 默认数据库和默认语 言。
Windows身份验证
在安装SQL Server 2000的过程中,系统 会让用户选择在登录SQL Server 2000时 使用哪种身份验证模式。在SQL Server 2000安装成功后,用户也可以根据需要 随时修改身份验证模式,修改的方法如 下:
Windows身份验证
Windows身份验证
删除登录账户
使用企业管理器删除(以newlogin1为例) 使用系统存储过程删除登录账户时,要
数据库的安全性和完整性习题及答案
第八章.数据库安全性和完整性习题:一.填空题1.保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。
这是指数据的。
2.数据库的是指数据的正确性和相容性。
3.在数据库的安全性控制中,为了保证用户只能存取它有权存取的数据,在授权的定义中,数据对象的,授权子系统就越灵活。
4.保护数据安全性的一般方法是。
5.存取权限包括两个方面的内容,一个是,另一个是。
6.完整性约束是指和。
7.实体完整性是指在基本表中,。
8.参照完整性是指在基本表中,。
二.简答题1.试述实现数据库安全性控制的常用方法和技术。
2.什么是数据库中的自主存取控制方法和强制存取控制方法?3.什么是数据库的审计功能?为什么要提供审计功能?4.DBMS的完整性控制机制应具有哪些功能?5.关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?参考答案一.填空题6.安全性7.完整性8.范围越小9.设置用户标识和存取权限控制10.要存取的数据对象,对此数据对象进行操作的类型11.实体完整性,参照完整性12.主属性不能取空值13.外码可以是空值或者另一个关系主码的有效值二.简答题1.实现数据库安全性控制的常用方法和技术有:1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份,每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。
2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。
3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来,放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。
sql_server实验指导 课后答案
sql_server实验指导课后答案一、实验题目1. 什么是SQL Server?答:SQL Server是一种关系型数据库管理系统(RDBMS),由微软公司开发,用于存储和管理大量的数据。
它可以处理复杂的数据查询,提供高性能的数据存储和管理,并且可以支持多种编程语言,如T-SQL、C#、Java等。
2. SQL Server的优势有哪些?答:SQL Server的优势有:(1)高性能:SQL Server提供了高性能的数据存储和管理,可以满足大量数据的需求。
(2)安全性:SQL Server提供了多种安全性功能,可以有效保护数据安全。
(3)可扩展性:SQL Server可以根据用户的需求进行扩展,满足不同的业务需求。
(4)可移植性:SQL Server可以跨多种操作系统运行,可以满足不同的环境需求。
(5)可维护性:SQL Server提供了多种维护功能,可以有效管理数据库。
3. SQL Server的组件有哪些?答:SQL Server的组件有:(1)SQL Server数据库引擎:用于存储和管理数据库中的数据。
(2)SQL Server数据库安全:用于保护数据库中的数据安全。
(3)SQL Server数据库管理工具:用于管理数据库中的数据。
(4)SQL Server数据库开发工具:用于开发数据库应用程序。
(5)SQL Server数据库报表服务:用于创建和管理报表。
(6)SQL Server数据库集成服务:用于数据集成和数据交换。
(7)SQL Server数据库分析服务:用于分析数据库中的数据。
(8)SQL Server数据库服务器:用于管理数据库服务器。
sqlserver2008数据库应用与开发教程课后习题参考答案
sqlserver2008数据库应用与开发教程课后习题参考答案SQL Server 2008数据库应用与开发教程(第二版)第一章习题参考答案1.简述SQL Server 2008系统中主要数据库对象的特点。
答:主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则和默认值等。
“表”节点中包含了数据库最基本、最重要的对象——表。
表实际用来存储系统数据和用户数据,是最核心的数据库对象。
“视图”节点包含了数据库中的视图对象。
视图是一种虚拟表,用来查看数据库中的一个或多个表,视图是建立在表基础之上的数据库对象,它主要以SELECT语句形式存在。
在“同义词”节点中包含了数据库中的同义词对象。
这是Microsoft SQL Server 2008系统新增的一种对象。
“可编程性”对象是一个逻辑组合,它包括存储过程、函数、触发器、程序集、类型、规则和默认值等对象。
数据库中的函数对象包含在“函数”节点中。
函数是接受参数、执行复杂操作并将结果以值的形式返回的例程。
2.SQL Server 2008数据库管理系统产品分为哪几个版本,各有什么特点?答:SQL Server 2008数据库管理系统产品的服务器版本包括了企业版和标准版,专业版本主要包括以下版本:工作组版(Workgroup)、开发人员版(Developer)、免费精简版(Express)、Web版,以及免费的集成数据库SQL Server Compact 3.5。
3.SQL Server 2008包含哪些组件,其功能各是什么?答:SQL Server 2008的体系结构是对SQL Server的组成部分和这些组成部分之间的描述。
Microsoft SQL Server 2008系统由4个组件组成,这4个组件被称为4个服务,分别是数据库引擎、Analysis Services、Reporting Services和Integration Services。
第8章SQLServerXX的安全管理
第8章SQLServerXX的安全管理______应用SQL Server 2005安全管理策略任务熟练掌握如何注册服务器,学习如何管理用户、角色并授予有关权限。
目标●熟悉SQL Server 2005的安全机制●掌握登录名的创建与管理。
●掌握角色与用户的创建与管理。
●熟悉数据操纵语言对数据库权限的操纵。
●熟悉SQL Server 2005的安全管理模型8.1任务8-1 SQL Server 2005 安全机制任务:熟悉SQL Server 2005的安全机制与有关概念。
就目前而言,绝大多数数据库管理系统都还是在某一特定操作系统平台下运行的应用程序,SQL Server 2005也不例外,SQL Server 2005的安全机制分为下列4个等级。
●客户机操作系统的安全性。
●SQL Server的登录安全性。
●数据库的使用安全性。
●数据库对象的使用安全性。
每个安全等级都好像一道门,假如门没有上锁,或者者用户就有开门的钥匙,用户就能够直接通过这道门,从而轻松的到达下个一个安全等级。
假如通过了所有的门,则用户就能够实现对数据库的方问了。
这种关系如图8-1所示。
图8-1 SQL Server 2005的安全等级1.操作系统的安全性在使用客户计算机通过网络实现对SQL Server服务器的访问时,用户要首先获得客户计算机操作系统的使用权。
通常来说,能够实现网络互联的前提下,用户没有必要直接登录运行SQL Server 服务器的主机,除非SQL Server服务器就运行在本地计算机上。
SQL Server 能够直接访问网络端口,因此能够实现对Windows NT安全机制以外的服务器及其数据库的访问。
操作系统安全性是操作系统管理员或者者网络管理员的任务。
由于SQL Server使用了集成Windows NT网络安全机制,从而使得操作系统安全性的地位得到提高,但同时也加大了管理数据库系统安全性与灵活性的难度。
2.SQL Server的安全性SQL Server的服务器级安全性建立在操纵服务器登录账号与密码的基础之上。
(完整版)数据库系统原理与设计(第2版)课后习题详细答案
数据库系统原理与设计习题集第一章绪论一、选择题1. DBS是采用了数据库技术的计算机系统,DBS是一个集合体,包含数据库、计算机硬件、软件和()。
A. 系统分析员B. 程序员C. 数据库管理员D. 操作员2. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
A. DBS包括DB和DBMSB. DBMS包括DB和DBSC. DB包括DBS和DBMSD. DBS就是DB,也就是DBMS3. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段II.文件系统阶段III.数据库阶段A. I 和IIB. 只有IIC. II 和IIID. 只有I4. 下列四项中,不属于数据库系统特点的是()。
A. 数据共享B. 数据完整性C. 数据冗余度高D. 数据独立性高5. 数据库系统的数据独立性体现在()。
A.不会因为数据的变化而影响到应用程序B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C.不会因为存储策略的变化而影响存储结构D.不会因为某些存储结构的变化而影响其他的存储结构6. 描述数据库全体数据的全局逻辑结构和特性的是()。
A. 模式B. 内模式C. 外模式D. 用户模式7. 要保证数据库的数据独立性,需要修改的是()。
A. 模式与外模式B. 模式与内模式C. 三层之间的两种映射D. 三层模式8. 要保证数据库的逻辑数据独立性,需要修改的是()。
A. 模式与外模式的映射B. 模式与内模式之间的映射C. 模式D. 三层模式9. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是(),它是模式的逻辑子集。
A.模式B. 物理模式C. 子模式D. 内模式10.下述()不是DBA数据库管理员的职责。
A.完整性约束说明B. 定义数据库模式C.数据库安全D. 数据库管理系统设计选择题答案:(1) C (2) A (3) D (4) C (5) B(6) A (7) C (8) A (9) C (10) D二、简答题1.试述数据、数据库、数据库系统、数据库管理系统的概念。
第8章习题参考答案
第8章习题解答1.思考题(1)SQL Server 2008提供了哪些安全管理机制?安全性管理是建立在什么机制上的?答:SQL Server 2008提供了非常完善的安全管理机制,包括用户登录、管理和对用户使用数据库对象的管理。
SQL Server2008的安全性管理是建立在身份验证和访问许可机制上的。
(2)SQL Server 2008有几种身份验证方式?它们的区别是什么?哪种身份验证方式更安全?答:SQL Server 2008有两种身份验证方式,即Windows身份验证模式和混合模式。
Windows 身份验证模式会启用 Windows 身份验证并禁用 SQL Server 身份验证。
混合模式会同时启用 Windows 身份验证和 SQL Server 身份验证。
Windows 身份验证始终可用,并且无法禁用。
SQL Server 2008 的默认身份验证模式是Windows身份验证模式,混合模式更为安全。
(3)数据库的权限是指什么权限?权限管理的主要任务是什么?角色中的所有成员能否继承该角色所拥有的权限?答:SQL Server2008中的权限包括3种类型:对象权限、语句权限和隐含权限。
权限管理的主要任务是对象权限和语句权限的管理。
角色中的所有成员继承该角色所拥有的权限。
(4)SQL Server 2008中有几种角色类型?它们的主要区别是什么?答:SQL Server 2008中有3种角色类型:固定角色、用户定义的数据库角色和应用程序角色。
固定角色:是指其权限已被SQL Server 2008定义,且SQL Server 2008管理者不能对其权限进行修改的角色。
这些固定角色涉及服务器配置管理以及服务器和数据库的权限管理。
按照管理目标对象的不同,固定角色又分为固定服务器角色和固定数据库角色。
用户定义数据库角色:就是当一组用户需要设置的权限不同于固定数据库角色所具有的权限时,为了满足要求而定义的新的数据库角色。
SQL Server的安全性管理——例题解答
第11章SQL Server的安全性管理——例题解答例11-2-1:创建一个SQL Server 登录帐户USER1,密码为Abc123#$。
程序清单如下:CREATE LOGIN USER1 WITH PASSWORD ='Abc123#$'例11-2-2:删除SQL Server帐户USER1。
程序清单如下:DROP LOGIN USER1例11-3-1:在STUDENT数据库中为SQL Server用户USER1添加数据库用户,并取名为USER1,默认架构为STU。
程序清单如下:USE STUDENTCREATE USER USER1 FOR LOGIN USER1WITH DEFAULT_SCHEMA =STU例11-3-2:从STUDENT数据库中删除数据库用户USER1。
程序清单如下:USE STUDENTDROP USER USER1例11-4-1:为STUDENT数据库新创建一个数据库用户USER2,并为其赋予查询T_COURSE表的权限。
实现步骤如下:(1)在SQL Server管理控制台中,展开SQL Server服务器组中相应服务器。
(2)创建一个新的登录帐户USER2。
第11章SQL Server的安全性管理(3)展开STUDENT数据库,在STUDENT数据库中创建一个新的数据库用户USER2。
(4)右击新创建的数据库用户USER2,在弹出的快捷菜单中选择“属性”选项。
打开“数据库用户- USER2”对话框。
在属性对话框中选择“安全对象”选择页。
(5)单击“添加”按钮,打开“添加对象”对话框。
(6)在“添加对象”对话框中单击“特定对象”,并单击“确定”,打开“选择对象”对话框(7)在“选择对象”对话框中,单击“对象类型”,打开“选择对象类型”对话框。
(8)在“选择对象类型”对话框中选中“表”,并单击“确定”按钮。
在“选择对象”对话框中选择“浏览”按钮,会打开“查找对象”对话框。
课后习题答案第8章
课后习题答案第8章1. 概述第8章是XXX课程的课后习题答案,本文档将为大家提供第8章的课后习题答案,以帮助同学们复习和加深对知识点的理解。
2. 习题答案2.1 问题1问题描述:请列举出几种数据库管理系统(DBMS)的类型,并且给出它们的特点。
答案:•关系型数据库管理系统(RDBMS):以关系模型为基础的数据库管理系统,使用表格的形式来组织数据,支持SQL语言进行数据操作。
具有数据一致性、可靠性高等特点。
•非关系型数据库管理系统(NoSQL):相对于关系型数据库,NoSQL数据库采用非关系型的数据组织方式,更加适用于大规模分布式存储和处理。
具有高可扩展性、灵活性等特点。
•面向对象数据库管理系统(OODBMS):将对象概念引入数据库系统,将对象作为数据库的主要组织单位,支持面向对象的数据库操作和查询。
具有数据隐蔽性、可重用性等特点。
•XML数据库管理系统(XML-DBMS):以XML标准为基础的数据库管理系统,可以存储和管理XML格式的数据。
具有对XML数据的高效操作和查询能力。
2.2 问题2问题描述:请解释什么是数据库索引,它的作用是什么?答案:数据库索引是对数据库表中一列或多列的值进行排序的一种数据结构,它可以快速地定位到具有特定值的数据记录。
索引可以加快数据库的查询速度,减少数据扫描的时间。
具体而言,索引的作用包括:•提高数据库查询的效率:索引可以根据索引键值快速定位到数据记录,加快查询速度。
•减少磁盘I/O的需求:通过使用索引,数据库可以减少需要扫描的数据块数量,从而减少磁盘I/O的次数。
•保证数据的唯一性:索引可以设置为唯一索引,确保某一列的值在表中是唯一的。
•支持表之间的关联:通过使用外键和关联索引,数据库可以实现表之间的关联和连接操作。
2.3 问题3问题描述:请解释什么是数据库事务,它的特点是什么?答案:数据库事务是一组数据库操作的逻辑单元,它被视为一个不可分割的工作单位,要么全部执行成功,要么全部回滚。
SQL Server 课后习题参考答案(详解)
答:实例就是SQL服务器引擎,每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。一个SQL Server服务器就是一个实例,一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。
答:实体是客观存在并且可以相互区别的事物,实体可以是具体的事物,也可以是抽象的事物。不同的事物是用不同的特征决定的,用来描述实体的特性称为实体的属性。表中每条记录对应一个实体,而每个字段保存着对应实体的属性值。
2、说明主键、惟一键和外键的作用。说明它们在保证数据完整性中的应用方法。
答:主键是唯一识别一个表的每一记录,作用是将记录和存放在其他表中的数据进行关联,并与外键构成参照完整性约束。惟一键用于指明创建惟一约束的列上的取值必须惟一。外键用于建立和加强两个表数据之间的链接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就成为第二个表的外键。外键约束的主要目的是控制存储在外键表中的数据,但它还可以控制对主键表中数据的修改。
7、SQL Server 2005中有哪些类型数据?
答:参见教材表4-1。
9、数据完整性包括哪些?如何实现?
答:数据完整性包括实体完整性,域完整性,引用完整性,用户定义完整性,通过在表中,列中,表与表之间设置主键、惟一键、外键、CHECK约束等可以实现。
16、说明使用标识列的优缺点。
答:优点:方便可以让计算机为表中的记录按照要求自动地生成标识字段的值。
8、通过视图修改数据要注意哪些限制?
答:对视图进行的修改操作ห้องสมุดไป่ตู้以下限制:
数据库原理与应用教程—SQL Server课后习题答案
数据库原理与应用教程―SQL Server习题解答1.5 习题1.数据库的发展历史分哪几个阶段?各有什么特点?答:数据库技术经历了人工管理阶段、文件系统阶段和数据库系统三个阶段。
1)人工管理阶段这个时期数据管理的特点是:数据由计算或处理它的程序自行携带,数据和应用程序一一对应,应用程序依赖于数据的物理组织,因此数据的独立性差,数据不能被长期保存,数据的冗余度大等给数据的维护带来许多问题。
2)文件系统阶段在此阶段,数据以文件的形式进行组织,并能长期保留在外存储器上,用户能对数据文件进行查询、修改、插入和删除等操作。
程序与数据有了一定的独立性,程序和数据分开存储,然而依旧存在数据的冗余度大及数据的不一致性等缺点。
3)数据库系统阶段数据库系统的特点如下:(1)数据结构化(2)较高的数据共享性(3)较高的数据独立性…(4)数据由DBMS统一管理和控制2.简述数据、数据库、数据库管理系统、数据库应用系统的概念。
答:数据是描述事物的符号记录,是信息的载体,是信息的具体表现形式。
数据库就是存放数据的仓库,是将数据按一定的数据模型组织、描述和存储,能够自动进行查询和修改的数据集合。
数据库管理系统是数据库系统的核心,是为数据库的建立、使用和维护而配置的软件。
它建立在操作系统的基础上,位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的创建、查询、更新及各种数据控制等。
凡使用数据库技术管理其数据的系统都称为数据库应用系统。
3.简述数据库管理系统的功能。
答:数据库管理系统是数据库系统的核心软件,一般说来,其功能主要包括以下5个方面。
(1) 数据定义和操纵功能(2) 数据库运行控制功能(3) 数据库的组织、存储和管理(4) 建立和维护数据库(5) 数据通信接口4.简述数据库的三级模式和两级映像。
答:为了保障数据与程序之间的独立性,使用户能以简单的逻辑结构操作数据而无需考虑数据的物理结构,简化了应用程序的编制和程序员的负担,增强系统的可靠性。
数据库课后题答案 第八章 管理SQL Server的安全性
第八章SQL Server的安全性要点:SQL Server 2000两级权限管理机制登陆帐户和服务器角色数据库用户和数据库角色权限的管理第一节SQL Server 2000安全性概述作为一种数据库管理系统,SQL Server2000系统中存储了用户大量的业务数据,这些数据都是用户的商业机密。
这些商业数据必须得到安全保障。
安全性管理是数据库管理系统的一个重要组成部分。
安全性就是确保只有授权的用户才能使用数据库中的数据和执行相应的操作,安全性管理包括两个方面的内容,一是用户能否登录系统和如何登录的管理,二是用户能否使用数据库中的对象和执行相应操作的管理。
SQL Server2000提供了一套完整的安全机制。
一、认证进程和认证模式认证进程就是指当用户访问数据库系统时,系统对该用户帐号和口令的确认过程,认证的内容包括确认用户的帐号是否有效、是否能访问系统、能访问系统中的哪些数据等。
认证模式就是指系统选择何种认证进程确认用户的方式。
用户必须使用一个登录帐号,才能连接到SQL Server系统中。
SQL Server 系统通过两种认证进程来确认用户的身份,这两种认证进程是:(1)WINDOWS认证进程(2)SQL Server认证进程当SQL Server在WINDOWS环境中运行时,系统管理员必须指定系统的认证模式类型。
认证模式类型有两种:(1)WINDOWS认证模式(2)混合模式WINDOWS认证模式只允许使用WINDOWS认证进程。
这时,用户不能指SQL Server的登录帐号。
混合认证模式既允许使用WINDOWS认证进程,又允许使用SQL Server认证进程。
在混合认证模式中,当某个用户希望登录SQL Server系统时,系统是采用WINDOWS认证进程还是采用SQL Server认证进程取决于该用户连接到系统的网络协议类型。
注意:在SQL Server系统中,除了网络协议Named pipes和TCP/IP,其他的网络通信协议都是非信任连接协议。
第8章SQLServer安全管理
第8章SQLServer安全管理第8 章安全管理(4课时)主要内容:1 安全管理概述(身份验证模式、主体和安全对象)2 登录名管理(创建、维护等)3 数据库用户管理(创建、维护等)4 架构管理(创建、修改和删除等)5 角色管理(固定角色、用户定义的数据库角色、应用程序角色)6 权限管理(权限类型、常用对象的权限、管理权限)8.1 安全管理概述本章主线安全管理是数据库管理系统一个非常重要的组成部分,是数据库中数据被合理访问和修改的基本保证。
SQL Server提供了非常完善的安全管理机制(身份验证机制[authentication]和访问许可机制[permission]),包括用户登录管理和用户使用数据库对象的管理。
只有使用特定的身份验证方式的用户,才能登录到系统中。
只有具有一定权限的用户,才能对数据库对象执行相应的操作。
当用户登录数据库系统时,应确保只有合法的用户才能登录到系统中,这是一个基本的安全问题。
SQL Server 2008系统中,通过身份验证模式和主体解决这个问题。
8.1.1 身份验证模式身份验证是确定客户端能否连接到SQL Server的验证方式,通过登录账号和密码来实现。
从客户端看,登录到SQL Server 2008系统可以通过两种身份验证:●Windows身份验证●SQL Server身份验证Windows身份验证。
该方式使用Windows操作系统的安全机制验证身份,只要用户能够通过Windows用户账号验证,即可连接到SQL Server而不用再进行身份验证。
Windows 身份验证方式是默认的身份验证方式,比SQL Server方式更安全。
这种身份验证方式下的连接是信任连接。
Windows身份验证方式下的用户账户是Windows操作系统下的用户或组,是由Windows 维护的。
当然Windows下的用户或组要成为SQL Server的登录账户必须经过映射。
SQL Server身份验证方式。
数据库原理与应用系列第八章习题(含答案)
第八章习题(答案)班级:学号: 姓名:1.填空题(1)SQL Server 有两种安全认证模式,即___WINDOWS_______________安全认证模式和______混合______安全认证模式。
(2)SQL SERVER安装好以后,只有2个已经创建的用户:___SA_______和BULTIN/administrators,它们都是超级用户,对数据库拥有一切权限。
(3)数据库的完整性是指数据的___正确性___和___相容性____。
(4)按数据库状态,数据转储分为动态转储和静态转储。
(5)按数据转储方式,数据转储分为海量转储和增量转储。
2.单选题(1)日志文件用于记录( D )。
A、程序运行过程B、数据操作C、程序运行结果D、对数据的更新操作(2)SQL的COMMIT语句的主要作用是( C )。
A、终止程序B、中断程序C、事务提交D、事务回退(3)SQL的ROLLBACK语句的主要作用是( D )。
A、终止程序B、中断程序C、事务提交D、事务回退(4)在数据库系统中,对存取权限的定义称为(B)。
A、命令B、授权C、定义D、审计(5)设有两个事务T1,T2,其并发操作如下表所示,下面评价正确的是(C )。
A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(6)设有两个事务T1,T2,其并发操作如下表所示,下面评价正确的是(B )。
A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(7)A、该操作不存在问题B、该操作丢失修改C、该操作不能重复读D、该操作读“脏”数据(8)若事务T对数据对象A加上S锁,则( C )A、事务T可以读A和修改A,其他事务只能再对A加S锁,而不能加X锁B、事务T可以读A但不能修改A,其他事务能对A加S锁和X锁C、事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁D、事务T可以读A和修改A,其他事务能对A加S锁和X锁(9)若事务T对数据对象A加上X锁,则( C )A、事务T可以读A和修改A,其他事务不能对A加X锁B、事务T可以修改A,其他事务不能对A加X锁C、事务T可以读A和修改A,其他事务都不能再对A加任何类型的锁D、事务T修改A,其他事务都不能再对A加任何类型的锁(10)数据库中的封锁机制是( C )的主要方法。
第8章SQLServer安全管理
8.2.1 使用企业管理器管理登录账户
[实例8.1]利用企业管理器创建一个SQL账户 名为test,密码为xxxbjwk,默认数据库为学生 库的账户。
步骤:
图8.2 创建登录账户
图8.3 创建登录账户
图8.4 分配数据库访问权限
这样使用企业管理器就可以创建一个登录账户。 在建立SQL账户实现服务器连接时,用户必须 拥有合法的账号和正确的密码。在SQL Server 系统中,登录密码并不是必须的。但是用户最 好设置密码,没有密码的保护,SQL Server的 服务器级安全保护就像没有上锁的大门,知道 门的位置(账号)的用户都可以畅通无阻。
旧的登录密码,其默认值为NULL; 新的登录密码,无默认值;:需要更改密码的登录名
必须已经存在。
[实例8.5] 将SQL账户yn_sql 中的默认语言更 改为英语,默认的数据库更改为master。
输入如下SQL语句:
通过上例,我们可归纳出使用系统存储过程修改SQL账户默 认语言和默认数据库的命令格式:
sp_revokelogin [@loginame:] '用户或用户组名' 例如:删除06CC3021493C418域中的用户myuser登录数据库
实例的权限。可使用如下语句实现:sp_revokelogin '06CC3021493C418\myuser'
网络数据库SQL Server 2012教程第8章 数据库安全与保护
3.打开“新用户”对话框,在其中输入用户名为StuManager,设臵相 应的密码,并选择“密码永不过期”选项。如图8-3所示。
4.设臵完成后,单击“创建”按钮。关闭新用户对话框,在用户选项 中出现新的用户账户,如图8-4所示。 5.创建用户账户完成后,可以创建要映射到这个账户上的Windows 登录了。打开SQL Server Management Studio,打开“服务 器”→“安全性”→“登录名”,如图8-5所示。
Page 5
SQL Server 2012的服务器级安全性建立在控制服务器登 录和密码的基础上。SQL Server 2012采用了标准SQL Server登录和集成Windows登录两种方式。无论使用哪 种登录方式,用户在登录时提供的登录账号和密码决定了 用户能否获得SQL Server 2012的访问权限以及用户在访 问SQL Server 2012进程时可以拥有的权利。管理和设计 合理的登录方式是SQL Server2012数据库管员的重要任 务,是SQL Serve 2012安全体系中重要的组成部分。
第8章 数据库安全与保护
目录
数据库安全性概述
SQL Server身份验证
数据库的访问权限
数据库备份与恢复
目录
数据库的导入与导出
本章小结
8.1数据库安全性概述
SQL Server 2012数据库的安全性是指保护数据库,以防 止不合法的使用造成数据的泄露、更改和破坏。数据库的安 全性和计算机系统的安全性,包括操作系统、网络系统的安 全性是紧密联系、相互支持的。 数据库的安全主要是通过对数据库用户的合法性和操作权 限的管理来实现的。 1.数据库的安全管理 SQL Server 2012安全性的管理包括以下几个方面:数据 库系统登录管理、数据库用户管理、数据库系统角色管理以 及数据库访问权限的管理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章SQL Server的安全性要点:SQL Server 2000两级权限管理机制登陆帐户和服务器角色数据库用户和数据库角色权限的管理第一节SQL Server 2000安全性概述作为一种数据库管理系统,SQL Server2000系统中存储了用户大量的业务数据,这些数据都是用户的商业机密。
这些商业数据必须得到安全保障。
安全性管理是数据库管理系统的一个重要组成部分。
安全性就是确保只有授权的用户才能使用数据库中的数据和执行相应的操作,安全性管理包括两个方面的内容,一是用户能否登录系统和如何登录的管理,二是用户能否使用数据库中的对象和执行相应操作的管理。
SQL Server2000提供了一套完整的安全机制。
一、认证进程和认证模式认证进程就是指当用户访问数据库系统时,系统对该用户帐号和口令的确认过程,认证的内容包括确认用户的帐号是否有效、是否能访问系统、能访问系统中的哪些数据等。
认证模式就是指系统选择何种认证进程确认用户的方式。
用户必须使用一个登录帐号,才能连接到SQL Server系统中。
SQL Server 系统通过两种认证进程来确认用户的身份,这两种认证进程是:(1)WINDOWS认证进程(2)SQL Server认证进程当SQL Server在WINDOWS环境中运行时,系统管理员必须指定系统的认证模式类型。
认证模式类型有两种:(1)WINDOWS认证模式(2)混合模式WINDOWS认证模式只允许使用WINDOWS认证进程。
这时,用户不能指SQL Server的登录帐号。
混合认证模式既允许使用WINDOWS认证进程,又允许使用SQL Server认证进程。
在混合认证模式中,当某个用户希望登录SQL Server系统时,系统是采用WINDOWS认证进程还是采用SQL Server认证进程取决于该用户连接到系统的网络协议类型。
注意:在SQL Server系统中,除了网络协议Named pipes和TCP/IP,其他的网络通信协议都是非信任连接协议。
举例说明:首先在SQL Server中建立一个登录帐户:选中服务器下的“安全性”-》“登录”,右单击选择“新建登录”,在弹出的菜单常规选项卡中输入“帐号”例如:hello,选择SQL Server身份验证,输入密码:123456,在“服务器角色”卡中选择相应的服务器角色,例如选择:security administrators 和databases creators,在“数据库访问”卡中选择允许该帐号访问的数据库名,例如选择:studentborrow数据库。
单击确定,这样登录帐号:hello就建立完成了。
此时,我们在服务器名右单击选择“编辑SQL Server注册属性”,在弹出的对话框中选择使用SQL Server身份验证,这时在登录名处输入新建立的帐号:hello,选择总是提示输入用户名和密码,输入密码:123456,单击“确定”,然后重新打开SQL Server,此时提示我们输入用户名和密码,并且只能创建数据库和只能访问studentborrow数据库。
如果我们在服务器上右单击选择属性,在“安全性”卡片上可以选择认证模式,如果选择“仅WINDOWS认证”,那么在重复刚才的操作,就不能够进入了,因为此时仅仅WINDOWS帐号才可以访问SQL Server。
二、帐号验证SQL Server的安全性机制可以划分为4个等级:(1)客户机操作系统的安全性(2)SQL Server的登录安全性(3)数据库的使用安全性(4)数据库对象的使用安全性因而使用数据库的帐户也应从四个方面进行验证1、操作系统级别的验证2、服务器级别的验证SQL Server服务器级别安全性建立在控制服务器登录帐户和密码的基础上也就是前面所说的两种认证模式:WINDOWS认证模式和混合模式。
3、数据库级别的验证在默认情况下,数据库的所有者可以访问该数据库的对象,还可以分配访问权给别的用户,以便让别的用户也拥有针对该数据库的访问权利。
4、数据库对象级别的验证默认情况下,只有数据库的所有者可以在该数据库下进行操作。
当一个非数据库所有者想访问数据库里的对象时,必须事先由数据库的所有者赋予该用户对指定对象的执行特定操作的权限。
第二节登录帐号管理一、标准的SQL帐户管理1、帐户的建立方式有三种:使用查询分析器,通过系统提供的存储过程;通过SQL Server企业管理器;使用SQL Server提供的创建登录向导存储过程:sp_addlogin建立标准登录帐户语法:sp_addlogin [@loginame=]’ligin’[,[@passwd=]’psaaword’][,[@=defab]’database’][,[@eflanguage=]’language’]2、修改和删除帐户使用系统存储过程sp_defaultdb修改登录帐户的默认数据库使用系统存储过程sp_defaultlanguage修改登录帐户的默认语言使用系统存储过程sp_password修改登录帐户的密码使用系统存储过程sp_droplogin来删除SQL Server标准登录帐户3、注意:(1)在SQL Server中删除帐户信息时,有如下限制:●已经映射到数据库用户的帐户不允许被删除●系统帐户SA不能被删除,正在使用的帐户不能被删除●拥有数据库的帐户不能被删除(2)在进行修改和删除操作时用到的所有存储过程和使用企业管理器进行的有关帐户、密码、角色、权限的操作,都只有被赋予SYSADMIN或securityadmin 固定服务器角色的帐户才可以使用。
二、与WINDOWS集成的帐户管理1、帐户的建立与标准的SQL帐户管理类似,在此仅介绍用系统存储过程的方法:使用系统存储过程sp_grantlogin来使WINDOWS的用户或工作组映射为SQL Server的登录帐户。
语法:sp_grantlogin[@loginame=]’login’2、删除Windows帐户sp_revokelogin可是从SQL Server中删除用sp_grantlogin创建的Windows帐户语法:sp_revokelogin [@loginame=]’login’3、拒绝登录帐户使用系统存储过程sp_denylogin可以设置不允许Windows的工作组或用户联接到SQL Server服务器。
语法:sp_denylogin [@loginame=]’login’第三节服务器角色管理角色是SQL Server 2000引进的用来集中管理数据库或服务器权限的概念。
SQL Server在服务器级提供了固定服务器角色,用户不能增加、修改和删除服务器角色。
一、固定服务器角色1、固定服务器角色服务器角色是一些系统定义好操作权限的用户组,其中的成员是登录帐户。
服务器角色不能增加或删除,只能对其中的成员进行修改。
服务器角色是SQL Server在安装是就创建好的用于分配服务器级管理权限的实体。
常用的固定服务器角色有:sysadmin、serveradmin、securityadmin、dbcreator、diskadmin、processadmin、setupadmin和bulkadmin。
2、浏览服务器角色使用系统存储过程sp_helpsrvrole浏览服务器角色语法:sp_helpsrvrole [[@srvrolename=]’role’]二、管理服务器角色成员一个登录帐户可以不属于任何角色,也可以同时属于多个角色。
将一个登录帐户加入一个角色,可以令使用该帐户登录的用户自动的具有角色预定义的权限。
Windows系统管理员组自动属于sysadmin角色1、使用系统存储过程更改服务器角色成员(1)将一个帐户加入一个服务器角色,可使用系统存储过程sp_addsrcrolemember 语法:sp_addsrcrolemember[@loginame=]’login’[@rolename=]’role’(2)将某个帐户从服务器角色中删除,可以使用系统存储过程sp_dropsrvrolemember系统存储过程sp_dropsrvrolemember的功能是收回分配给某登录帐户的指定固定服务器角色。
语法:sp_dropsrvrolemember [@loginame=]’login’,[@rolename=]’role’2、可以使用企业管理器更改服务器角色成员三、服务器角色的权限1、固定服务器角色的权限(1)sysadmin拥有最高的权限,可以执行服务器范围内的一切操作.(2)Securityadmin可以在服务器范围内进行有关权限的一切管理操作。
如管理登录帐户,管理数据库对象权限,阅读日志文件等。
(3)Serveradmin可以设置服务器范围的配置选项,关闭服务器。
(4)Dbcreator可以创建、更改和除去数据库(5)Setupadmin可以管理链接服务器和启动过程(6)Processadmin可以管理在SQL Server中运行的进程(7)Diskadmin可以管理磁盘文件(8)Bulkadmin可以执行bulk insert语句2、可以使用系统存储过程sp_srvrolepermission浏览固定服务器角色的权限语法:sp_srvrolepermission[[@srvrolename=]’role’]第四节数据库角色管理为了更高效的管理数据库用户的权限,SQL Server在数据库级提供了固定的数据库级角色。
用户不能修改固定数据库级角色的权限,也不能删除固定数据库级角色。
但用户可以自己创建新的数据库角色,在分配权限给新建的角色。
一、固定数据库角色固定数据库角色是在每个数据库中都定义的预定义组。
管理员可以将一个用户加入一个或多个数据库角色中。
固定数据库角色不能被添加、修改或删除。
SQL Server在数据库级设置了固定数据库角色来提供最基本的数据库权限的总和管理。
1、使用系统存储过程sp_helpdbfixedrole浏览固定数据库角色语法:sp_helpdbfixedrole [[@rolename=]’role’]例如:exec sp_helpdbfixedrole2、固定数据库角色的权限public:维持所有的默认权限db_owner:可以执行所有数据库角色的活动db_accessadmin:可以加入或删除数据库用户、组和角色db_ddladmin:可以加入、修改或删除数据库对象db_securityadmin:管理角色、角色成员,管理对象和语句权限db_backupoperator:备份数据库db_datareader:可以从所有表中读数据db_datawriter:可以在所有表中增加、修改或删除数据db_denydatareader:看不到数据库任何数据db_denydatawriter:不能改变任何表的数据3、管理固定数据库角色成员(1)使用系统存储过程sp_addrolemember将某个登录帐户加入某个固定数据库角色。