安全生产_数据库安全管理课程

上传人:F****n 文档编号:91289761 上传时间:2019-06-27 格式:PPT 页数:92 大小:2.01MB
返回 下载 相关 举报
安全生产_数据库安全管理课程_第1页
第1页 / 共92页
安全生产_数据库安全管理课程_第2页
第2页 / 共92页
安全生产_数据库安全管理课程_第3页
第3页 / 共92页
安全生产_数据库安全管理课程_第4页
第4页 / 共92页
安全生产_数据库安全管理课程_第5页
第5页 / 共92页
点击查看更多>>
资源描述

《安全生产_数据库安全管理课程》由会员分享,可在线阅读,更多相关《安全生产_数据库安全管理课程(92页珍藏版)》请在金锄头文库上搜索。

1、第14章 安全管理,14.1 安全控制概述 14.2 登录帐户管理 14.3 数据库用户管理 14.4 数据库用户权限管理 14.5 角色,14.1 安全控制概述,安全性问题的提出 数据库安全性概念 计算机系统安全性层次 数据库安全控制模型 SQL Server安全控制过程 SQL Server用户分类,问题的提出,数据库的一大特点是数据可以共享 数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享 例:军事秘密、国家机密、新产品实验数据、 市场需求分析、市场营销策略、销售计划、 客户档案、医疗档案、银行储蓄数据,数据库安全性概念,数据库的安全性是指保护数据库,防止因用

2、户非法使用数据库造成数据泄露、更改或破坏。 数据库系统中的数据共享必须是在DBMS统一的严格的控制之下,只允许有合法使用权限的用户访问允许他存取的数据。,计算机系统安全性层次,物理层:计算机系统在物理硬件上的安全性保护。 操作系统层:操作系统本身提供的安全性保护措施。 网络层:网络安全控制机制。 数据库系统层:数据库系统应该有完善的访问控制机制,检查数据库用户的合法性以及数据库操作权限。 数据层:直接对数据加密。,数据库安全控制模型,数据库安全控制,数据库系统层安全性保护措施,身份认证:系统内部记录着所有合法用户的标识,每次用户要求进入系统时,由系统将用户提供的身份标识与系统内部记录的合法用户

3、标识进行核对,通过鉴定后才提供系统使用权。 操作权限控制:对于通过鉴定获得系统使用权的用户(即合法用户),系统根据他的存取权限定义对他的各种操作请求进行控制确保他只执行合法操作。,SQL Server安全控制过程,SQL Server用户的安全验证过程,一个用户如果要访问SQL Server数据库中的数据,他必须要经过三个认证过程: 第一个认证过程是身份验证,这使用登录账号来标识用户,身份验证只验证用户连接到SQL Server数据库服务器的资格,即验证该用户是否具有连接到数据库服务器的“连接权”。 第二个认证过程是当用户访问数据库时,他必须具有对具体数据库的访问权,即验证用户是否是数据库的合

4、法用户。 第三个认证过程是当用户操作数据库中的数据或对象时,他必须具有所要进行的数据库数据操作的操作权,即验证用户是否具有操作许可。,三个安全认证过程图示,SQL Server用户分类,根据用户登录层次分类 根据用户操作权限分类,根据用户登录层次分类,分为SQL Server登录用户和数据库用户 只有先成为合法的SQL Server登录用户,才有可能成为合法的数据库用户,登录用户(login user),数据库用户(database user),从用户操作权限角度分类,数据库中的用户按其操作权限的大小可分为如下三类: 数据库系统管理员:数据库系统管理员(在SQL Server中为sa)在数据库

5、中具有全部的权限,当用户以系统管理员身份进行操作时,系统不对其权限进行检验。 数据库对象拥有者:创建数据库对象的用户即为数据库对象拥有者。数据库对象拥有者对其所拥有的对象具有一切权限。 数据库访问用户:数据库访问用户只具有对数据库数据的增、删、改、查权。,14.2 登录帐户管理,SQL Server有三个默认的用户登录帐号 sa:拥有全部系统权限和数据库权限 administratorsbuiltin:SQL Server提供给Windows 的系统管理员帐户 Guest:默认的普通用户帐户 系统管理员的工作 建立新的登录用户 修改登录密码 删除登录用户,SQL Server的帐户验证模式,帐

6、户验证是用来确认登录SQL Server的用户登录帐号和密码的正确性,由此来验证其是否具有连接SQL Server的权限。 SQL Server 提供了两种确认用户的验证模式: Windows身份验证模式 仅允许授权的Windows用户访问SQL Server 混合身份验证模式 仅允许授权的Windows用户和非Windows用户访问SQL Server,连接SQL Server服务器的过程,设置登录验证模式方法,在安装SQL Server时设置验证模式 在企业管理器中设置验证模式,在安装SQL Server时设置验证模式,在企业管理器中设置验证模式,验证模式选择,建立新的登录帐户,通过企业管

7、理器新建登录用户 利用系统存储过程sp_addlogin新建登录用户,新的登录用户user1,修改登录密码,输入新密码,确认新密码,用T-SQL语句建立登录帐户,CREATE LOGIN login_name WITH | FROM := WINDOWS WITH ,. := PASSWORD = password , ,. := SID = sid | DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language := DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language,20

8、19年6月27日6时5分,30,示例,例1创建SQL Server身份验证的登录帐户。登录名为:SQL_User2,密码为:a1b2c3XY。 CREATE LOGIN SQL_User2 WITH PASSWORD = a1b2c3XY,2019年6月27日6时5分,31,示例,例2创建Windows身份验证的登录帐户。从Windows域帐户创建 HYJWin_User2 登录帐户。 CREATE LOGIN HYJWin_User2 FROM WINDOWS,2019年6月27日6时5分,32,示例,例3创建SQL Server身份验证的登录帐户。登录名为:SQL_User3,密码为:AD

9、4h9fcdhx32MOP。要求该登录帐户首次连接服务器时必须更改密码。 CREATE LOGIN SQL_User3 WITH PASSWORD = AD4h9fcdhx32MOP MUST_CHANGE,2019年6月27日6时5分,33,删除登录用户,删除登录帐户的T-SQL语句,DROP LOGIN login_name 不能删除正在使用的登录帐户,也不能删除拥有任何数据库对象、服务器级别对象的登录帐户。 例4删除SQL_User2登录帐户。 DROP LOGIN SQL_User2,2019年6月27日6时5分,35,14.3 数据库用户管理,数据库用户管理概述 数据库管理员的工作

10、创建数据库的用户 删除数据库的用户(略),数据库用户管理概述,用户具有了登录账号之后,他只能连接到SQL Server服务器上,但不具有访问任何数据库的能力,只有成为了数据库的合法用户后,才能访问此数据库。 数据库的用户只能来自于服务器上已有的登录账号,让登录账号成为数据库的用户就称为“映射”。 一个登录账号可以映射为多个数据库中的用户。 管理数据库用户的过程实际上就是建立登录账号与数据库用户之间的映射关系的过程。 默认情况下,新建立的数据库只有一个用户,就是:dbo,它是数据库的拥有者。,授权登录用户为数据库用户,方法一:在企业管理器 “安全性”中创建数据库用户 方法二:在数据库“用户”对象

11、中创建数据库用户 方法三:利用系统存储过程sp_grantdbaccess 创建数据库用户,在“安全性”中创建数据库用户,查看新建的数据库用户,在数据库“用户” 中创建数据库用户,查看新建的数据库用户,用T-SQL语句建立数据库用户,CREATE USER user_name FOR | FROM LOGIN login_name user_name:指定在此数据库中用于识别该用户的名称。 LOGIN login_name:指定要映射为数据库用户的SQL Server登录名。 如果省略FOR LOGIN,则新的数据库用户将被映射到同名的SQL Server登录名。,2019年6月27日6时5分

12、,45,示例,例5.让SQL_User2登录帐户成为students数据库中的用户,并且用户名同登录名。 USE students; GO CREATE USER SQL_User2,2019年6月27日6时5分,46,示例,例6.本示例首先创建名为SQL_JWC且具有密码的SQL Server身份验证的服务器登录名,然后在students数据库中创建与此登录帐户对应的数据库用户JWC。 CREATE LOGIN SQL_JWC WITH PASSWORD = jKJl3$nN09jsK84; GO USE students; GO CREATE USER JWC FOR LOGIN SQL_

13、JWC;,2019年6月27日6时5分,47,14.3.3 删除数据库用户,DROP USER user_name 例7删除SQL_User2用户。 DROP USER SQL_User2,2019年6月27日6时5分,48,14.4 数据库用户权限管理,权限管理概述 权限种类 权限管理的内容 使用企业管理器管理权限 使用Transact-SQL管理权限,权限管理概述,当用户成为数据库中的合法用户之后,他除了具有一些系统表的查询权之外,并不对数据库中的对象具有任何操作权,因此,下一步就需要为数据库中的用户授予数据库的操作权。 实际上将登录账号映射为数据库用户的目的也是为了方便对用户授予数据库对

14、象的操作权。,权限种类,在SQL Server 2000 中,权限分为对象权限、语句权限和隐含的权限三种。 对象权限:对象权限是指用户对数据库中的表、视图等对象的操作权,例如是否允许查询、增加、删除和修改数据等。 语句权限:这种权限专指是否允许执行下列语句:CREATE TABLE、CREATE VIEW等与创建数据库对象有关的操作。 隐含权限:隐含权限是指由SQL Server预定义的服务器角色、数据库角色、数据库拥有者和数据库对象拥有者所具有的权限,隐含权限相当于内置权限,不需要再明确地授予这些权限。例如,数据库拥有者自动地拥有对数据库进行一切操作的权限。,对象权限,ALTER:具有更改特

15、定数据库对象属性的权限。 DELETE、INSERT、UPDATE和SELECT:具有对表和视图数据进行删除、插入、更改和查询的权限,其中UPDATE和SELECT可以对表或视图的单个列进行授权。 EXECUTE:具有执行存储过程的权限。 REFERENCES:具有通过外键引用其他表的权限。,2019年6月27日6时5分,52,语句权限,CRAETE TABLE:创建表的权限。 CREATE VIEW:创建视图的权限。 CREATE PROCEDURE:创建存储过程的权限。 CREATE FUNCTION:创建函数的权限。,2019年6月27日6时5分,53,14.4.2 权限管理,权限的管理

16、包含如下三个内容: 授予权限:允许用户或角色具有某种操作权。 收回权限:不允许用户或角色具有某种操作权,或者收回曾经授予的权限。 禁止权限(拒绝访问):拒绝某用户或角色具有某种操作权,既使用户或角色由于继承而获得这种操作权,也不允许执行相应的操作。 管理权限可以使用企业管理器实现,也可以使用Transact-SQL语句实现。,使用企业管理器管理权限,使用企业管理器管理对象权限 使用企业管理器管理语句权限,使用企业管理器管理对象权限,仓库管理数据库中的user1用户,权限标记说明,授予权限:若要授予用户对某个对象(表、视图、存储过程)的操作权(表和视图为:SELECT、INSERT、UPDATE、DELETE,存储过程为:EXEC),可单击相应的方框,使其中出现标记。 禁止权限:若要拒绝此用户对某个对象的操作权,可单击相应的方框,使其中出现标记。 收回权限:若要收回此用户对某个对象的操作权,可单击相应的方框,使其方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号