




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
7.2 数据库的安全控制,7.2.1 安全控制的一般形式 7.2.2 SQL Server 2000的安全控制,数据库的安全控制,数据库安全性是指保护数据库,防止未经授权的访问,以免数据的泄露、更改或破坏。 数据库的完整性控制和安全性控制是数据库保护的两个方面。 完整性是防止合法用户使用数据库时输入不合语义的数据。 安全性则是防止用户非法使用数据。,7.2.1 安全控制的一般形式,与数据库有关的安全技术,身份标识和鉴别 存取控制 视图 审计,用户的身份标识和鉴别是最外层的安全保护措施。 数据库系统为每个用户提供互不相同的身份标识符供用户注册。任何数据库用户要访问数据库时,都要经过系统核实,通过核实才能进入系统。这个核实工作就称为用户鉴别。 鉴别的方法多种多样,一般有: 利用口令鉴别 利用只有用户具有的物品鉴别 利用用户的个人特征鉴别,存取控制,在数据库系统中用户只能访问其有权访问的数据。 预先对每个用户定义存取权限。对于通过鉴别的合法用户,系统根据存取权限对用户的各种操作请求进行合法性检查,确保用户只能存取其有权存取的数据。 存取权限有两个要素,即数据对象和操作类型。定义一个用户的存取权限就是要定义该用户可以在哪些数据对象上进行哪类操作。在DBMS中,定义存取权限称为授权。 在关系数据库中,数据对象可以是列、元组和基本表,也可以是视图、存储过程等数据对象。 常见的权限有下列几种:读权限、插入权限、修改权限、删除权限。,视图,视图是给用户提供个性化数据库模式的一种手段。 系统可以为不同的用户定义不同的视图,这样也可以达到访问控制的目的,但安全保护功能不太精细。 一般通过对视图授权,将视图和授权机制配合使用来限制用户的访问权限,保证数据库的安全。,审计,当数据非常敏感时,经常采用审计的方法,跟踪记录有关这些数据的访问活动。 审计中用一个特殊的文件来自动记录用户对数据库的操作。 分析审查这些审计记录,可以找出导致数据库出现安全问题的一系列事件,从而找到非法存取数据库的人。 审计是需要在时间和空间上付出代价的,可作为可选的设置,由DBA根据应用对安全的要求,灵活地打开或关闭审计功能,以达到安全和效率的折衷。,7.2.2 SQL Server 2000的安全控制,SQL Server的验证模式,为了实现安全性,SQL Server对用户的访问进行两个阶段的检验: 验证阶段:用户在SQL Server上获得对任何数据库的访问权限之前,必须登录到SQL Server上,并且被认为是合法的。SQL Server或Windows NT/2000对用户进行验证。 许可确认阶段:用户验证通过后,登录到SQL Server上,系统检查用户是否有访问服务器上数据的权限。 注意: Windows NT/2000及SQL Server所建立的用户身份标识均可登录到SQL Server。,SQL Server的验证模式,NT验证模式 用户只要成功登录到Windows NT/2000即能进入SQL Server。用户不必提供用户名和口令让SQL Server验证。 混合验证模式 该模式允许以SQL Server验证模式或NT验证模式来进行验证,使用哪种模式取决于在最初的通信时使用的网络库。 SQL Server验证模式处理登录的过程为:用户输入登录名和密码后,SQL Server在系统注册表中监测输入的登录名和密码。如果输入的登录名存在,而且密码也正确,就可以登录到SQL Server上。,NT验证模式对SQL Server的影响,Sql server的配置信息都保存在master数据库的sysconfigures表内,但是在使用该数据库之前,就应该决定采用哪种验证模式。 在windows注册表内,保存了sql server验证模式的相关信息以及启动sql server的必须信息。 HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServer中的LoginMode的值决定了采用哪种验证模式。若为0,则采用混合验证模式;若不为0,则采用NT验证模式。,设置验证模式,注意:修改验证模式后,必须首先停止SQL Server服务,然后重新启动SQL Server才能使新的设置生效。,账号和角色,账号有两种: 登录服务器的登录账号:只是让用户登录到SQL Server中,登录名本身不能让用户访问服务器中的数据库。 使用数据库的用户账号:用户名在特定的数据库内创建,并关联一个登录名。用户定义的信息存放在服务器上的每个数据库的sysusers表中,用户没有密码相关联。通过授权给用户指定用户可以访问的数据库对象的权限。 采用角色的方法管理存取权限。角色是一种SQL Server安全账户,它是管理权限时可以视为单个单元的其他安全账户的集合。是一个强大的工具,可以将用户集中到一个单元中,然后对该单元应用权限。对一个角色授予、拒绝或废除的权限也适用于该角色的任何成员。,服务器的登录账号,SQL Server安装后,系统默认创建两个登录帐户:sa和BULLTIN/administrator。前者是系统管理员的简称,拥有SQL Server系统和所有数据库中的全部权限;后者是专门为Windows管理员提供的,也拥有SQL Server系统和所有数据库中的全部权限。 还可以建立一些用户自己的登录帐户。建立登录帐户可以使用企业管理器实现,也可以使用存储过程实现。,使用企业管理器建立登录帐户,可设置登录账号所属的服务器角色,服务器角色,负责管理和维护SQL Server的组,一般只会指定需要管理服务器的登录者属于服务器角色。 用户不能添加、删除或更改固定的服务器角色。,注意:默认登录账号: sa和BULLTIN/administrator属于sysadmin服务器角色。,使用数据库的用户账号,登录账号存储在master中的sysxlongins中,用户账号存储在各个数据库的sysusers中。 在安装SQL Server后,默认数据库中包含两个用户账号:dbo和guest。任何一个登录账号都可以通过guest账号来存取相应的数据库。对于自己创建的数据库来说,默认只有dbo账号而没有guest账号。 当一个用户创建时,必须关联一个登录名;一个登录账号可以关联多个用户账号。 每个登录账号在一个数据库中只能有一个用户账号,但是每个登录账号可以再不同的数据库中各有一个用户账号。如果在新建登录账号的过程中,指定对某个数据库具有存取权限,则在该数据库中将自动创建一个与该登录账号同名的用户账号。,指定登录账号可以访问某数据库,则在该数据库中自动创建一个与登录同名的用户账号。,注意:登录账号具有对某个数据库的访问权限,并不表示该登录账号对该数据库具有存取的权限。如果要对数据库中的对象进行增、删、改操作,还需设置用户账号的权限。 sa和BULLTIN/administrator均可在映射为dbo用户。,数据库角色,数据库角色是对某个数据库具有相同访问权限的用户账户和组的集合。数据库角色应用于单个数据库。 在SQL Server中,数据库角色可分为: 标准角色:由数据库成员所组成的组,此成员可以是用户或者其他的数据库角色。 应用程序角色:用来控制应用程序存取数据库的,本身并不包含任何成员。,10个固定的标准角色,public角色是一个特殊的数据库角色。首先,数据库中的每个用户都自动是public数据库角色的成员,用户不能从public角色中添加和删除成员。其次,用户可以对这个角色进行授权(其他固定角色的权限是固定的)。如果想让数据库中的全体用户都具有某个特定权限,则可以将该权限授予public。每个数据库用户都自动具有public角色的权限。,在企业管理器中建立一个新的数据库用户,在企业管理器中建立一个新的数据库用户,使用企业管理器实现将数据库用户添加到固定的数据库角色中,自定义数据库标准角色,应用程序角色,当要求对数据库的某些操作不允许用户用任何工具进行操作,而只能用特定的应用程序进行处理时就可以建立应用程序角色。 应用程序角色不包含成员。用户之所以与应用程序角色关联,是由于用户能够运行激活该角色的应用程序,而不是因为他是角色成员。 默认情况下,应用程序角色是非活动的,需要用密码激活。 在激活应用程序角色以后,当前用户原来的所有权限会自动消失,而获得了该应用程序角色的权限。,应用程序角色的创建,权限,权限用来控制用户如何访问数据库对象。一个用户可以直接分配到权限,也可作为一个角色成员来间接得到权限。一个用户可同时属于具有不同权限的多个角色。 权限分为:对象权限、语句权限、暗示性权限。 一个用户或角色的权限可以有三种存在的形式: 授予(grante):赋予用户某权限 拒绝(deny):禁止用户的某权限 废除(revoke):撤销以前授予或拒绝的权限。,对象权限,对象权限:是指用户访问和操纵数据库中的表、视图、存储过程等对象的权限。 有五个不同的权限:select、insert、update、delete、execute(只用于存储过程),语句权限,语句权限:是指用户创建数据库,或者在数据库中创建或修改对象、执行数据库或事务日志备份的权限。 语句权限有: Backup database Backup log Create database Default Create function Create procedure Create rule Create table Create view,暗示性权限,暗示性权限是指系统预定义角色的成员或数据库对象所有者所拥有的权限。例如:拥有表的用户可查看、删除、添加数据,更改表定义,或控制允许其他用户对表进行操作的权限。,授权-GRANT,授予语句权限: GRANT ALL|语句权限名, TO 数据库用户名|用户角色名, 授予对象权限: GRANT ALL PRIVILEGES|对象权限名, ON 表名|视图名|存储过程名 TO 数据库用户名|用户角色名, WITH GRANT OPTION,收回权限REVOKE,收回语句权限: REVOKE语句权限名, FROM 数据库用户名|用户角色名, 收回对象权限: REVOKE对象权限名, ON 表名|视图名|存储过程名 FROM 数据库用户名|用户角色名,,拒绝权限DENY,拒绝语句权限: DENY语句权限名, TO 数据库用户名|用户角色名, 拒绝对象权限: DENY对象权限名, on 表名|视图名|存储过程名 to 数据库用户名|用户角色名,,例子,为用户u1,u2和u3授予Loan表的查询权限和amount属性上的修改权限。 GRANT SELECT,UPDATE (amount) ON Loan TO u1, u2, u3 授予用户u1创建视图的权限。 GRANT CREATE VIEW TO u1,例子,为出纳员角色teller授予Account表的查询和修改权限。 GRANT SELECT, UPDATE ON Account TO teller 授予u1在关系Branch上的SELECT权限,并允许u1将这一权限转授他人。 GRANT SELECT ON Branch to u1 WITH GRANT OPTION 用户u1得到这一权限后,可以将其转授给用户u2: GRANT SELECT ON Branch t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025地产项目合作开发与绿色建筑技术应用合同
- 2025年度汽车租赁合同细则-含新能源汽车充电支持
- 2025版实习保密协议书及数据保密条款
- 2025年度新能源电池产品全国代理商合作协议
- 2025年酒店餐厅桌椅升级改造采购合同示范
- 2025年智慧城市照明系统电工施工劳务分包合同
- 海南省乐东黎族自治县2025年上半年事业单位公开遴选试题含答案分析
- 2025版石材地质勘探与矿山开采合作协议
- 2025年度多金融机构联合贷款合同
- 2025年高端别墅及私人住宅保洁服务承包合同
- 2025义务教育劳动教育标准课程考试题库(含答案)
- 土地增值税清算培训课件
- 2025年稳定币在大宗商品跨境贸易中的应用研究报告
- 医院财务人员专业能力提升培训
- PDCA循环在医院应急管理中的应用
- 2026创新设计高考总复习生物(人教版)-限时强化练答案解析
- 2025年人资部长面试题及答案
- 《语文八下第三单元复习课》课件
- 2025年山西省公务员考试行测试卷历年真题及答案详解(名校卷)
- 2025年消除艾滋病、梅毒、乙肝母婴传播培训考试试题(含答案)
- 患者期望与实际效果-洞察及研究
评论
0/150
提交评论