SQL Server 2000数据库应用教程 教学课件 ppt 作者 邱李华 李晓黎 SQL Server第10章

上传人:E**** 文档编号:89397054 上传时间:2019-05-24 格式:PPT 页数:90 大小:458KB
返回 下载 相关 举报
SQL Server 2000数据库应用教程 教学课件 ppt 作者  邱李华 李晓黎 SQL Server第10章_第1页
第1页 / 共90页
SQL Server 2000数据库应用教程 教学课件 ppt 作者  邱李华 李晓黎 SQL Server第10章_第2页
第2页 / 共90页
SQL Server 2000数据库应用教程 教学课件 ppt 作者  邱李华 李晓黎 SQL Server第10章_第3页
第3页 / 共90页
SQL Server 2000数据库应用教程 教学课件 ppt 作者  邱李华 李晓黎 SQL Server第10章_第4页
第4页 / 共90页
SQL Server 2000数据库应用教程 教学课件 ppt 作者  邱李华 李晓黎 SQL Server第10章_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《SQL Server 2000数据库应用教程 教学课件 ppt 作者 邱李华 李晓黎 SQL Server第10章》由会员分享,可在线阅读,更多相关《SQL Server 2000数据库应用教程 教学课件 ppt 作者 邱李华 李晓黎 SQL Server第10章(90页珍藏版)》请在金锄头文库上搜索。

1、1,第10章 SQL Server安全管理,安全管理概述,10.1,登录,10.2,数据库用户,10.3,角色,10.4,权限管理,10.5,2,对于网络环境下的多用户数据库而言,安全问题是至关重要的。必须对不同的用户赋予不同的访问权限,才能保证数据库中的数据不被泄露或破坏。本章将介绍SQL Server 2000实现安全管理的方法。,3,本章要点,安全管理概述 登录 数据库用户 角色 权限管理,4,10.1 安全管理概述,SQL Server 2000的安全管理模型中包括SQL Server登录、数据库用户、权限和角色4个主要方面,具体如下。,SQL Server登录:要想连接到SQL Se

2、rver服务器实例,必须拥有相应的登录账户和密码。SQL Server的身份认证系统验证用户是否拥有有效的登录账户和密码,从而决定是否允许该用户连接到指定的SQL Server服务器实例。,5,10.1 安全管理概述,数据库用户:通过身份认证后,用户可以连接到SQL Server服务器实例。但是,这并不意味着该用户可以访问到指定服务器上的所有数据库。在每个SQL Server数据库中,都存在一组SQL Server用户账户。登录账户要访问指定数据库,就要将自身映射到数据库的一个用户账户上,从而获得访问数据库的权限。一个登录账户可以对应多个用户账户。,6,10.1 安全管理概述,权限:权限规定了

3、用户在指定数据库中所能进行的操作。 角色:类似于Windows的用户组,角色可以对用户进行分组管理。可以对角色赋予数据库访问权限,此权限将应用于角色中的每一个用户。,7,10.2 登录,登录指用户连接到指定SQL Server数据库实例的过程。在此期间,系统要对该用户进行身份验证。 只有拥有正确的登录账户和密码,才能连接到指定的数据库实例。,8,10.2.1 身份验证模式,登录到SQL Server实例必须经过两个过程。首先要从系统中获得此权限,即得到授权;然后就是要通过系统的身份验证。SQL Server提供以下两种身份验证模式。,Windows 身份验证模式 混合模式(Windows身份验

4、证和SQL Server身份验证),9,1Windows身份验证模式,SQL Server数据库系统通常运行在Windows NT服务器平台上,而NT作为网络操作系统,本身就具备管理登录、验证用户合法性的能力,Windows身份验证模式正是利用了这一用户安全性和账户管理的机制,允许SQL Server也可以使用Windows的用户名和密码。在这种模式下,用户只需要通过Windows的身份验证,就可以连接到SQL Server,而SQL Server本身也就不需要管理一套登录数据。 当用户通过Windows NT 4.0、Windows 2000或Windows 2003用户账户进行连接时,SQ

5、L Server通过回叫Windows系统以获得信息,重新验证账户名和密码。,10,2混合模式,SQL Server可以设置其自己的SQL Server登录账户。用户登录时,SQL Server将对用户的账户进行验证。如果SQL Server未设置该登录账户,或该账户的用户名、密码不正确,则身份验证将失败,而且用户将收到错误信息。 混合模式允许用户使用Windows NT安全性或SQL Server安全性连接到SQL Server,这就意味着用户可以使用他的Windows账户,或使用他的SQL Server账户登录到SQL Server系统。,11,身份验证模式的选择,对于Windows NT

6、的用户,既可以使用Windows身份验证模式,也可以使用SQL Server的身份验证模式。而对于Windows 9.x的用户只能使用SQL Server的身份验证模式。 应用程序开发人员和数据库用户也许更喜欢“SQL Server身份验证”模式,因为他们可以通过对登录账户和密码的管理实现权限控制。,12,SQL Server 2000的身份验证过程,13,设置SQL Server的身份认证模式,14,10.2.2 新建登录账户,SQL Server有以下两个默认的登录账户: sa:即系统管理员(system administrator)账户,该账户在SQL Server系统和所有数据库中拥有

7、所有的权限。 BUILTINAdministrators:该账户为Windows NT系统管理员账户,具有与sa有相同的权限。 可以使用以下两种方式新建登录帐户: 在企业管理器中创建登录账户 使用命令创建登录账户,15,1在企业管理器中创建登录账户,展开指定服务器实例下的“安全性”文件夹,用鼠标右击“登录”项,在弹出菜单中选择“新建登录”命令,打开饼设置“新建登录”对话框:,16,2使用命令创建登录账户,使用系统存储过程创建Windows身份验证模式登录账户; 使用系统存储过程创建SQL Server身份验证模式的登录账户,17,使用系统存储过程创建Windows身份验证模式登录账户,使用sp

8、_grantlogin存储过程可以创建新的Windows身份验证模式登录账户,语法如下: sp_grantlogin 登录名称 登录名称指要添加的Windows用户或组的名称。Windows组和用户必须用Windows域名限定,格式为“域名用户名”,例如“LondonJoeb”。 只有sysadmin或securityadmin固定服务器角色的成员可以执行sp_grantlogin。,18,例10-1,使用sp_grantlogin存储过程将用户LEEpublic映射到SQL Server登录账户。 sp_grantlogin LEEpublic 执行结果为: 已向 LEEpublic 授予登

9、录访问权。,19,使用sp_addlogin存储过程可以创建新的登录账户,语法如下: sp_addlogin 登录名称, 登录密码 , 默认数据库, 默认语言 SQL Server 登录名称和密码不能含有反斜线();不能是保留的登录名称,例如sa或public,或者已经存在的登录名称;不能为NULL;不能为空字符串()。,使用系统存储过程创建SQL Server身份验证模式的登录账户,20,使用sp_addlogin存储过程创建SQL Server登录账户lee,密码为111111,默认数据库为“学生管理”。 sp_addlogin lee, 111111, 学生管理 执行结果为: 已创建新登

10、录。,例10-2,21,使用企业管理器修改账户 使用企业管理器删除账户 使用存储过程修改和删除账户,10.2.3 修改和删除登录账户,22,展开指定服务器实例下的“安全性”文件夹,用鼠标单击“登录”项,可以在右侧窗格中查看到已经存在的SQL Server登录账户。用鼠标右键单击登录账户名,在弹出的快捷菜单中选择“属性”命令,打开“登录属性”对话框,在该对话框中可以对账户信息进行修改。,1使用企业管理器修改账户,23,修改Windows身份验证模式账户,1使用企业管理器修改账户,24,修改SQL Server身份验证模式账户,1使用企业管理器修改账户,25,在企业管理器中,用鼠标右键单击SQL

11、Server账户,在弹出的快捷菜单中选择“删除”命令,在弹出的确认对话框中单击“是”按钮,可以删除该账户。,2使用企业管理器删除账户,26,sp_denylogin存储过程 sp_revokelogin存储过程 sp_password存储过程 sp_droplogin存储过程,3使用系统存储过程修改和删除账户,27,用于阻止Windows用户或用户组连接到SQL Server实例,基本语法: sp_denylogin 用户或用户组名 sp_denylogin只能和Windows账户一起使用,“用户或用户组名”格式为“域名用户名”。sp_denylogin无法用于通过sp_addlogin添加的

12、SQL Server登录。 sp_denylogin和sp_grantlogin是对应的两个存储过程,它们可以互相反转对方的效果,允许和拒绝用户访问SQL Server。,sp_denylogin存储过程,28,使用sp_denylogin存储过程拒绝用户LEEpublic访问SQL Server实例。 sp_denylogin LEEpublic 执行结果为: 已拒绝对 LEEpublic 的登录访问权。,例10-3,29,用于删除SQL Server中使用sp_denylogin或sp_grantlogin创建的Windows身份认证模式登录账户,基本语法如下: sp_revokelogi

13、n 用户或用户组名 【例10-4】使用sp_revokelogin存储过程删除用户LEEpublic对应的SQL Server登录账户。 sp_revokelogin LEEpublic 执行结果为: 已废除 LEEpublic 的登录访问权。 从登录列表中可以看到,LEEpublic已经被删除。,sp_revokelogin存储过程,30,用于修改SQL Server登录的密码,基本语法如下: sp_password 旧密码, 新密码, 登录账户名 【例10-5】使用sp_password存储过程将登录账户lee的密码修改为222222。 sp_password 111111, 222222

14、, lee 执行结果为: 密码已更改。,sp_password存储过程,31,用于删除SQL Server登录账户,以阻止使用该登录账户访问SQL Server,基本语法如下: sp_droplogin 登录名称 【例10-6】使用sp_droplogin存储过程删除登录账户lee。 sp_droplogin lee 执行结果为: 登录已除去。,sp_droplogin存储过程,32,本节介绍: 数据库用户概述 新建数据库用户 修改和删除数据库用户,10.3 数据库用户,拥有登录账户的用户才能通过SQL Server身份验证,从而获得对SQL Server实例的访问权限。但通过SQL Serv

15、er的身份验证并不代表用户就能够访问SQL Server中的数据,要访问某个具体的数据库,还必须使登录账户成为某数据库的用户。,33,两个特殊的数据库用户: Dbo:数据库所有者,是具有在数据库中执行所有活动的权限的用户,它与登录账户sa相对应。 Guest:允许没有用户账户的登录访问数据库。当满足下列所有条件时,登录采用guest用户的标识。 登录有访问SQL Server实例的权限,但没有通过自己的用户账户访问数据库的权限。 数据库中含有guest用户账户。,10.3.1 数据库用户概述,34,可以将权限应用到guest用户,就如同它是任何其他用户账户一样。可以在除master和tempd

16、b外(在这两个数据库中guest用户必须始终存在)的所有数据库中添加或删除guest用户。默认情况下,新建的数据库中没有guest用户账户。 创建数据库对象的用户称为数据库对象所有者。创建数据库对象的权限必须由数据库所有者或系统管理员授予。但是,在授予数据库对象这些权限后,数据库对象所有者就可以创建对象并授予其他用户使用该对象的权限。数据库对象所有者没有特殊的登录 ID 或密码。对象创建者被隐性授予数据库的所有权限,但其他用户必须被显式授予权限后才能访问该对象。,用户授权,35,使用企业管理器创建数据库用户 sp_grantdbaccess存储过程创建数据库用户,10.3.2 新建数据库用户,36,展开指定的数据库,选择“用户”项,可以查看该数据库中用户的信息,如下图。默认情况下,用户创建的数据库中只有一个用户,即dbo。,(1)使用企业管理器创建数据库用户,37,用鼠标右击“用户”项,从快捷菜单中选择“新建数据库

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

当前位置:首页 > 高等教育 > 大学课件

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