《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt

上传人(卖家):momomo 文档编号:5818745 上传时间:2023-05-11 格式:PPT 页数:25 大小:408.50KB
下载 相关 举报
《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt_第1页
第1页 / 共25页
《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt_第2页
第2页 / 共25页
《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt_第3页
第3页 / 共25页
《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt_第4页
第4页 / 共25页
《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、第十一章第十一章SQL SERVER安全管理安全管理安全管理概述安全管理概述登录帐户登录帐户数据库用户数据库用户角色角色权限管理权限管理SQL Server的安全管理模型中包括的安全管理模型中包括SQL Server登录、登录、数据库用户、权限和角色数据库用户、权限和角色4个主要方面个主要方面。nSQL Server登录登录:要想连接到:要想连接到SQL Server服务器实例,服务器实例,必须拥有相应的登录账户和密码必须拥有相应的登录账户和密码。SQL Server的身份认的身份认证系统验证用户是否拥有有效的登录账户和密码,从而证系统验证用户是否拥有有效的登录账户和密码,从而决定是否允许该用

2、户连接到指定的决定是否允许该用户连接到指定的SQL Server服务器实服务器实例。例。SQL Server的安全管理模型中包括的安全管理模型中包括SQL Server登录、登录、数据库用户、权限和角色数据库用户、权限和角色4个主要方面个主要方面。n数据库用户数据库用户:通过身份认证后,用户可以连接到:通过身份认证后,用户可以连接到SQL Server服务器实例。但是,这并不意味着该用户可以访服务器实例。但是,这并不意味着该用户可以访问到指定服务器上的所有数据库。问到指定服务器上的所有数据库。在每个在每个SQL Server数数据库中,都存在一组据库中,都存在一组SQL Server用户账户。

3、登录账户要用户账户。登录账户要访问指定数据库,就要将自身映射到数据库的一个用户访问指定数据库,就要将自身映射到数据库的一个用户账户上,从而获得访问数据库的权限账户上,从而获得访问数据库的权限。SQL Server的安全管理模型中包括的安全管理模型中包括SQL Server登录、登录、数据库用户、权限和角色数据库用户、权限和角色4个主要方面个主要方面。n权限:权限:权限规定了用户在指定数据库中所能进行的操作。权限规定了用户在指定数据库中所能进行的操作。n角色:角色:类似于类似于Windows的用户组,角色可以对用户进行的用户组,角色可以对用户进行分组管理。可以对角色赋予数据库访问权限,此权限将分

4、组管理。可以对角色赋予数据库访问权限,此权限将应用于角色中的每一个用户。应用于角色中的每一个用户。使用使用sp_addlogin存储过程可以创建新的登录账户。存储过程可以创建新的登录账户。语法:语法:sp_addlogin 登录名称登录名称,登录密码登录密码,数据库名数据库名 示例:使用示例:使用sp_addlogin创建创建SQL Server登录账户登录账户Wang,密码为密码为123456,默认数据库为,默认数据库为SchoolInfo。解决方案:解决方案:sp_addlogin Wang,111111,SchoolInfo 使用使用sp_password存储过程可以修改登录账户的密码。

5、存储过程可以修改登录账户的密码。语法:语法:sp_password 旧密码旧密码,新密码新密码,登录账户名登录账户名 示例:使用示例:使用sp_password修改修改SQL Server登录账户登录账户Wang,密码为密码为123456。解决方案:解决方案:sp_password 111111,123456,Wang 使用使用sp_droplogin存储过程可以删除登录账户。存储过程可以删除登录账户。语法:语法:sp_droplogin 登录账户名登录账户名 示例:使用示例:使用sp_droplogin删除删除SQL Server登录账户登录账户Wang。解决方案:解决方案:sp_dropl

6、ogin Wang 通过通过SQL Server的身份验证并不代表用户就能够访问的身份验证并不代表用户就能够访问SQL Server中的数据,要访问某个具体的数据库,还必须使登录账中的数据,要访问某个具体的数据库,还必须使登录账户成为某数据库的用户。户成为某数据库的用户。使用使用sp_grantdbaccess存储过程创建数据库用户。存储过程创建数据库用户。语法:语法:sp_grantdbaccess 登录名登录名 示例:使用示例:使用sp_grantdbaccess为为SchoolInfo数据库数据库创建数据库用户创建数据库用户Wang。解决方案:解决方案:sp_grantdbaccess

7、Wang 使用使用sp_grantdbaccess存储过程创建数据库用户。存储过程创建数据库用户。语法:语法:sp_revokedbaccess数据库用户名数据库用户名 示例:使用示例:使用sp_revokedbaccess为为SchoolInfo数据库数据库删除数据库用户删除数据库用户Wang。解决方案:解决方案:sp_revokedbaccess Wang 利用角色,利用角色,SQL Server管理者可以将某些用户设置为某管理者可以将某些用户设置为某一角色,一角色,对一个角色授予、拒绝或废除的权限也适用于该角色对一个角色授予、拒绝或废除的权限也适用于该角色的的任何成员任何成员,这样只需对

8、角色进行权限设置便可以实现对所有这样只需对角色进行权限设置便可以实现对所有用户权限的设置用户权限的设置,大大减少了管理员的工作量。,大大减少了管理员的工作量。sp_addrole存储过程的功能是创建存储过程的功能是创建SQL Server角色,角色,语法:语法:sp_addrole 数据库角色名数据库角色名示例:使用示例:使用sp_addrole创建数据库角色创建数据库角色NewRole。解决方案:解决方案:sp_addrole NewRole sp_droprole存储过程的功能是创建存储过程的功能是创建SQL Server角色,角色,语法:语法:sp_droprole 数据库角色名数据库角

9、色名示例:使用示例:使用sp_droprole创建数据库角色创建数据库角色NewRole。解决方案:解决方案:sp_droprole NewRole sp_addrolemember存储过程的功能是向角色中添加用户,存储过程的功能是向角色中添加用户,语法如下:语法如下:sp_addrolemember 数据库角色名数据库角色名,数据库用户名数据库用户名示例:使用示例:使用sp_addrolemember为为数据库角色数据库角色NewRole添添加成员加成员Wang。解决方案:解决方案:sp_addrolemember NewRole,Wang sp_droprolemember存储过程的功能是

10、向角色中添加用户,存储过程的功能是向角色中添加用户,语法如下:语法如下:sp_droprolemember 数据库角色名数据库角色名,数据库用户名数据库用户名示例:使用示例:使用sp_addrolemember为为数据库角色数据库角色NewRole删删除成员除成员Wang。解决方案:解决方案:sp_droprolemember NewRole,Wang 权限决定了用户在数据库中可以进行的操作。可以对数据权限决定了用户在数据库中可以进行的操作。可以对数据库用户或角色设置权限。库用户或角色设置权限。权限的种类:权限的种类:(1)对象权限对象权限 (2)语句权限语句权限SELECTINSERTUPD

11、ATEDELETE 语句权限表示一个用户对数据库的操作权限,如能否执行创语句权限表示一个用户对数据库的操作权限,如能否执行创建和删除对象的语句,能否执行备份和恢复数据库的语句等。建和删除对象的语句,能否执行备份和恢复数据库的语句等。语句权限如下:语句权限如下:BACKUP DATABASE。BACKUP LOG。CREATE DATABASE。CREATE PROCEDURE。CREATE TABLE。CREATE VIEW。DROP DATABASE。设置权限包括:设置权限包括:n授予权限:授予用户、组或角色的语句权限和对象权限,使授予权限:授予用户、组或角色的语句权限和对象权限,使数据库用

12、户在当前数据库中具有执行活动或处理数据的权限。数据库用户在当前数据库中具有执行活动或处理数据的权限。n拒绝权限:包括删除以前授予用户、组或角色的权限,停用拒绝权限:包括删除以前授予用户、组或角色的权限,停用从其他角色继承的权限,确保用户、组或角色将来不继承更从其他角色继承的权限,确保用户、组或角色将来不继承更高级别的组或角色的权限。高级别的组或角色的权限。n废除权限:废除以前授予或拒绝的权限。废除类似于拒绝,废除权限:废除以前授予或拒绝的权限。废除类似于拒绝,因为二者都是在同一级别上删除已授予的权限。但是,废除因为二者都是在同一级别上删除已授予的权限。但是,废除权限是删除已授予的权限,并不妨碍

13、用户、组或角色从更高权限是删除已授予的权限,并不妨碍用户、组或角色从更高级别继承已授予的权限。级别继承已授予的权限。基本语法如下:基本语法如下:GRANT ALL|权限权限 ,.n ON 表表|视图视图|存储过程存储过程 TO 安全账户安全账户|角色角色 ,.n WITH GRANT OPTION 示例示例1:使用使用GRANT语句为语句为Wang授予查询表授予查询表SC的权限。的权限。解决方案:解决方案:GRANT SELECT ON SC TO Wang示例示例2:使用使用GRANT语句为语句为NewRole角色授予更新表角色授予更新表SC的权的权限。限。解决方案:解决方案:GRANT S

14、ELECT,UPDATE ON SC TO NewRole注注:当授予当授予UPDATE或或DELETE权限时,需要与权限时,需要与SELECT配合,配合,否则权限无效,而否则权限无效,而INSERT不受不受SELECT影响。影响。示例示例3:使用使用GRANT语句为语句为Wang授予更新表授予更新表SC的的Score字段字段权限。权限。解决方案:解决方案:GRANT SELECT,UPDATE(Score)ON SC TO Wang示例示例4:使用使用GRANT语句为语句为NewRole角色授予查询、更新表角色授予查询、更新表SC的权限的权限,并允许该角色将此权限再授予其他用户或角色。并允许

15、该角色将此权限再授予其他用户或角色。解决方案:解决方案:GRANT SELECT,UPDATE ON SC TO NewRole WITH GRANT OPTION基本语法如下:基本语法如下:REVOKE ALL|权限权限 ,.n ON 表表|视图视图|存储过程存储过程FROM 安全账户安全账户,.n示例示例:使用使用REVOKE语句废除语句废除NewRole角色授予查询、更新角色授予查询、更新表表SC的权限。的权限。解决方案:解决方案:REVOKE SELECT,UPDATE ON SC FROM NewRole基本语法如下:基本语法如下:REVOKE ALL|权限权限 ,.n ON 表表|

16、视图视图|存储过程存储过程FROM 安全账户安全账户,.n示例示例:使用使用REVOKE语句废除语句废除NewRole角色授予查询、更新角色授予查询、更新表表SC的权限的权限,如果其授予此权限给其他用户或角色,也将废如果其授予此权限给其他用户或角色,也将废除其他用户或角色拥有的此权限。除其他用户或角色拥有的此权限。解决方案:解决方案:REVOKE SELECT,UPDATE ON SC FROM NewRole CASCADE注:假设注:假设A和和B同时授予同时授予C对表的对表的SELECT权限,此时权限,此时A废除了废除了C的的SELECT权限,但权限,但B并没有废除,因此,并没有废除,因此

17、,C仍然对表有仍然对表有SELECT权限。权限。基本语法如下:基本语法如下:DENY ALL|权限权限 ,.n ON 表表|视图视图|存储过程存储过程FROM 安全账户安全账户,.n示例示例:使用使用DENY语句废除语句废除NewRole角色授予查询、更新表角色授予查询、更新表SC的权限。如果其授予此权限给其他用户或角色,也将拒的权限。如果其授予此权限给其他用户或角色,也将拒绝其他用户或角色拥有的此权限。绝其他用户或角色拥有的此权限。解决方案:解决方案:DENY SELECT,UPDATE ON SC TO NewRole CASCADE注:只有注:只有sa才有权限使用才有权限使用DENY语句。语句。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《sql server数据库应用与实践教程》课件第11章-SQL SERVER安全管理.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|