SQL Server 2008数据库应用教程 第2版 教学课件 ppt 作者 邱李华 李晓黎 任华 冉兆春 第11章

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

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

1、,SQL Server 2008数据库开发教程,授课教师: 职务:,第11章 SQL Server安全管理,课程描述 对于任何数据库系统而言,保证数据的安全性都是最重要的问题之一。安全性包括什么样的用户能够登录到SQL Server,以及用户登录后所能进行的操作。维护数据库的安全是数据库管理员的重要职责。在很多小规模的数据库环境中,管理员都使用sa用户登录管理数据库,这并不是好的习惯。特别是在管理员比较多的大型数据库环境中,必须明确每个管理员的职责,为每个管理员分配不同的用户,并定义其权限。这样一方面可以使大家各司其职,不会出现一件事件所有人都管理,可又谁都不管的情况;另一方面,当出现问题时也

2、可以明确是谁的责任。,本章知识点,11.1 安全管理概述 11.2 登录 11.3 数据库用户 11.4 角色 11.5 权限管理,11.1 安全管理概述,SQL Server的安全管理模型中包括SQL Server登录、数据库用户、权限和角色4个主要方面,具体如下。 (1)SQL Server登录:要想连接到SQL Server服务器实例,必须拥有相应的登录账户和密码。SQL Server的身份认证系统验证用户是否拥有有效的登录账户和密码,从而决定是否允许该用户连接到指定的SQL Server服务器实例。 (2)数据库用户:通过身份认证后,用户可以连接到SQL Server服务器实例。但是,

3、这并不意味着该用户可以访问到指定服务器上的所有数据库。在每个SQL Server数据库中,都存在一组SQL Server用户账户。登录账户要访问指定数据库,就要将自身映射到数据库的一个用户账户上,从而获得访问数据库的权限。一个登录账户可以对应多个用户账户。 (3)权限:权限规定了用户在指定数据库中所能进行的操作。 (4)角色:类似于Windows的用户组,角色可以对用户进行分组管理。可以对角色赋予数据库访问权限,此权限将应用于角色中的每一个用户。,11.2 登录,登录指用户连接到指定SQL Server数据库实例的过程。在此期间,系统要对该用户进行身份验证。 只有拥有正确的登录账户和密码,才能

4、连接到指定的数据库实例。 11.2.1 身份验证模式 11.2.2 创建登录名 11.2.3 修改和删除登录名,11.2.1 身份验证模式,用户要访问SQL Server中的数据,首先需要登录到SQL Server数据库实例。登录时要从系统中获得授权,并通过系统的身份验证。 SQL Server的身份验证模式如图11-1所示。,1Windows 身份验证模式,当用户通过Windows用户账户进行连接时,SQL Server通过回叫Windows操作系统以获得信息,重新验证账户名和密码。 SQL Server通过使用网络用户的安全特性控制登录访问,以实现与Windows的登录安全集成。用户的网络

5、安全特性在网络登录时建立,并通过Windows域控制器进行验证。当网络用户尝试连接时,SQL Server使用基于Windows的功能确定经过验证的网络用户名。,2SQL Server身份验证,在SQL Server Management Studio中,用鼠标右击数据库服务器实例名,在弹出的快捷菜单中选择“属性”命令,打开“属性”对话框,选择“安全性”页,即可设置SQL Server的身份认证模式,如图11-2所示。,11.2.2 创建登录名,1在SQL Server Management Studio中创建登录名 在SQL Server Management Studio中,选中“安全性”

6、/“登录名”项,可以查看SQL Server数据库中当前的登录名信息,如图11-3所示。,“新建登录”对话框,右键单击“登录名”,在弹出菜单中选择“新建登录名”命令,打开“新建登录”对话框,如图11-4所示。,2使用SQL语句创建登录名,可以使用CREATE LOGIN语句创建登录名,语法如下: CREATE LOGIN login_name WITH | FROM 其中login_name是新建的登录名,为登录选项设置,为新建登录名的来源(例如Windows登录、证书或非对称密钥等)。 的语法如下: := PASSWORD = password HASHED MUST_CHANGE , ,.

7、 ,option_list2,option_list2指定更多选项设置,语法如下: := SID = sid | DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | CHECK_EXPIRATION = ON | OFF | CHECK_POLICY = ON | OFF CREDENTIAL = credential_name ,【例11-1】,创建登录名lee,采用SQL Server验证方式,密码为Abc12345,代码如下: CREATE LOGIN lee WITH PASSWORD = Abc12345 MUST_

8、CHANGE, CHECK_EXPIRATION=ON GO,CREATE LOGIN语句中子句的语法结构, := WINDOWS WITH ,. | CERTIFICATE certname | ASYMMETRIC KEY asym_key_name,指定Windows登录名的更多选项,语法如下: := DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language,【例11-2】,从Widnows域中创建登录名的代码如下: CREATE LOGIN DBServerdbuser FROM WINDOWS; GO 执行时需将DBServe

9、rdbuser替换为已经存在的Windows帐户。,3使用系统存储过程创建登录账户,(1)使用系统存储过程创建Windows身份验证模式登录账户 使用sp_grantlogin存储过程可以创建新的Windows身份验证模式登录账户,基本语法如下: sp_grantlogin 登录名称,【例11-3】,使用sp_grantlogin存储过程将用户LEEpublic映射到SQL Server登录账户。 具体语句如下: sp_grantlogin LEEpublic 执行结果为: 已向 LEEpublic 授予登录访问权。,(2)使用系统存储过程创建SQL Server身份验证模式的登录账户,使用s

10、p_addlogin存储过程可以创建新的登录账户,基本语法如下: sp_addlogin 登录名称, 登录密码, 默认数据库, 默认语言 SQL Server 登录名称和密码可以包含1128个字符,包括任何字母、符号和数字。但是,登录名不能出现如下情况。 含有反斜线()。 是保留的登录名称,例如sa或public,或者已经存在。 为NULL,或为空字符串()。,【例11-4】,使用sp_addlogin存储过程创建SQL Server登录账户lee,密码为111111,默认数据库为HrSystem。 具体语句如下: sp_addlogin lee, 111111, HrSystem 执行结果为

11、: 已创建新登录。,11.2.3 修改和删除登录名,1使用Management Studio修改账户 2使用Management Studio删除账户 3使用系统存储过程修改和删除账户,1使用Management Studio修改账户,(1)修改Windows身份验证模式账户 (2)修改SQL Server身份验证模式账户,(1)修改Windows身份验证模式账户,如果是Windows身份验证模式账户,则可以修改该账户的安全性访问方式、默认数据库和默认语言等,如图11-5所示。,(2)修改SQL Server身份验证模式账户,(如果是SQL Server身份验证模式账户,则可以修改该账户的密码

12、、默认数据库和默认语言等,如图11-6所示。,2使用Management Studio删除账户,在Management Studio中,用鼠标右键单击SQL Server账户,在弹出的快捷菜单中选择“删除”命令,在弹出的确认对话框中单击“是”按钮,可以删除该账户。,3使用系统存储过程修改和删除账户,(1)sp_denylogin存储过程 sp_denylogin存储过程用于阻止Windows用户或用户组连接到SQL Server实例,它的基本语法如下: sp_denylogin 用户或用户组名 sp_denylogin只能和Windows账户一起使用,“用户或用户组名”格式为“域名用户名”。s

13、p_denylogin无法用于通过sp_addlogin添加的SQL Server登录。 sp_denylogin和sp_grantlogin是对应的两个存储过程,它们可以互相反转对方的效果,允许和拒绝用户访问SQL Server。,【例11-5】,使用sp_denylogin存储过程拒绝用户LEEpublic访问SQL Server实例。 具体语句如下: sp_denylogin LEEpublic 执行结果为: 已拒绝对 LEEpublic 的登录访问权。,(2)sp_revokelogin存储过程,sp_revokelogin存储过程用于删除SQL Server中使用sp_denylog

14、in或sp_grantlogin创建的Windows身份认证模式登录名,它的基本语法如下: sp_revokelogin 用户或用户组名,【例11-6】,使用sp_revokelogin存储过程删除用户LEEpublic对应的SQL Server登录账户。 具体语句如下: sp_revokelogin LEEpublic 执行结果为: 已废除 LEEpublic 的登录访问权。 从登录列表中可以看到,LEEpublic已经被删除。,(3)sp_password存储过程,sp_password存储过程用于修改SQL Server登录的密码,它的基本语法如下: sp_password 旧密码, 新

15、密码, 登录名 【例11-7】使用sp_password存储过程将登录账户lee的密码修改为222222。 具体语句如下: sp_password 111111, 222222, lee 执行结果为: 密码已更改。,(4)sp_droplogin存储过程,(3)sp_droplogin存储过程用于删除SQL Server登录账户,以阻止使用该登录账户访问SQL Server,它的基本语法如下: sp_droplogin 登录名称 【例11-8】使用sp_droplogin存储过程删除登录账户lee。 具体语句如下: sp_droplogin lee 执行结果为: 登录已除去。,11.3 数据库

16、用户,11.3.1 数据库用户概述 11.3.2 新建数据库用户 11.3.3 修改和删除数据库用户,11.3.1 数据库用户概述,SQL Server中有两个特殊的数据库用户,即dbo和guest。 dbo也称数据库所有者,是具有在数据库中执行所有活动的权限的用户,它与登录账户sa相对应。 guest用户账户允许没有用户账户的登录访问数据库。当满足下列所有条件时,登录采用guest用户的标识,11.3.2 新建数据库用户,1在SQL Server Management Studio中管理用户 2使用CREATE USER语句创建用户 3使用sp_grantdbaccess存储过程创建数据库用户,1在SQL Server Management Studio中管理用户,在SQL Server M

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

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

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