第12章安全管理_第1页
第12章安全管理_第2页
第12章安全管理_第3页
第12章安全管理_第4页
第12章安全管理_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统原理数据库系统原理与应用技术与应用技术主讲:陈漫红主讲:陈漫红 北京联合大学师范学院北京联合大学师范学院 电气信息系电气信息系第第12章章 安全管理安全管理 n12.1 安全管理概述安全管理概述 n12.2 SQL Server登录名的管理登录名的管理 n12.3 数据库用户管理数据库用户管理 n12.4 服务器角色与数据库角色服务器角色与数据库角色 n12.5 权限管理权限管理 n12.6 本章小结本章小结12.1 安全管理概述安全管理概述n安全控制:在数据库应用系统的不同层次提供对有意损害行为的安全防范。1. 安全控制模型安全控制模型 2. 数据库权限的种类及用户分类数据库权限的

2、种类及用户分类12.1 安全管理概述安全管理概述1. 安全控制模型安全控制模型 文件操作控制操作权控制身份验证用户数据库应用程序数据库管理系统操作系统加密存储与冗余数据库12.1 安全管理概述安全管理概述2. 数据库权限的种类及用户的分类n权限的种类n系统维护权n操作权n数据库对象权限:创建、修改、删除n数据操作权:增、删、改、查n用户的分类n系统管理员(sa):具有数据库中全部的权限,当用户以SA身份进行操作时,系统不对其权限进行检验。n对象拥有者:创建数据库对象的用户即dbo,数据库对象拥有者对其所拥有的对象具有一切权限。n普通用户:具有增、删、改、查数据库数据的权限。SQL Server

3、的安全控制n三个认证过程n第一个是验证用户连接到SQL Server数据库服务器的资格,即身份验证或(“连接权”)。n第二个是验证用户是否是数据库的合法用户,即验证用户的数据库访问权。n第三个是验证用户是否具有对数据库的操作许可。 12.2 SQL Server登录名的管理登录名的管理 12.2.1 设置设置SQL Server的登录认证模式的登录认证模式12.2.2 创建登录名创建登录名 12.2.3 管理登录名管理登录名 12.2.1 设置SQL Server的登录认证模式 nSQL Server 2005 有两种身份验证模有两种身份验证模:(1)Windows身份验证身份验证:是指要登录

4、到是指要登录到SQL Server系统的用户身份由系统的用户身份由Windows系统进行系统进行验证。验证。 (2)SQL Server身份验证身份验证:是使用是使用SQL Server 中的帐号和密码来登录数据库服务器,而这些中的帐号和密码来登录数据库服务器,而这些帐号和密码与帐号和密码与Windows操作系统无关。操作系统无关。sa是一个默认的是一个默认的SQL Server登录名,拥有操作登录名,拥有操作SQL Server系统的所有权限。该登录名不能系统的所有权限。该登录名不能被删除。当采用混合模式安装被删除。当采用混合模式安装Microsoft SQL Server系统之后,应该为系

5、统之后,应该为sa指定一个密码。指定一个密码。 设置服务器身份验证模式 (1)打开SQL Server管理平台并连接到目标服务器,在“对象资源管理器”窗口中,在目标服务器上单击鼠标右键,弹出快捷菜单,从中选择“属性”命令(2)出现“服务器属性”对话框,选择“选择页”中的“安全性”选项,进入安全性设置页面(3)在“服务器身份验证”选项组中选择验证模式前的单选按钮,选中需要的验证模式。 设置需要的审核方式n在“登录审核”选项组中设置需要的审核方式,审核方式取决于安全性要求,这四种审核级别的含义如下:n“无”:不使用登录审核。n“仅限失败的登录”:记录所有的失败登录。n“仅限成功的登录”:记录所有的

6、成功登录。n“失败和成功的登录”:记录所有的登录。12.2.2 创建登录名 1.创建“Windows身份验证”登录(1)打开SQL Server管理平台并连接到目标服务器,在“对象资源管理器”窗口中,单击“安全性”节点前的“”号,展开安全节点。在“登录名”上单击鼠标右键,弹出快捷菜单,从中选择“新建登录名(N)”命令 (2)出现“登录名”对话框。单击选择“Windows身份验证”,输入“登录名”,注意输入的登录名必须是已存在的Windows登录用户。单击“搜索”按钮,出现登录“选择用户和组”对话框,可以在其中查找或检查用户名。设置完成单击“确定”按钮。 12.2.2 创建登录名2.创建“SQL

7、 Server身份验证”登录n创建“SQL Server身份验证”的登录名“SQLlogin”,操作步骤如下:(1)在“对象资源管理器”窗口中,单击“安全性”节点前的“”号,展开安全节点。在“登录名”上单击鼠标右键,弹出快捷菜单,从中选择“新建登录(N)”命令。(2)弹出“登录名”对话框,单击选择“SQL Server身份验证”,输入登录名,如“SQLlogin”,输入密码和确认密码,单击“确定”按钮. 12.2.2 创建登录名3、使用T-SQL创建登录账号 CREATE LOGIN login_name WITH option_list1 | FROM sources例如:以下为创建带密码的

8、SQL Server登录账号abc。 CREATE LOGIN abc with PASSWORD=12345例如:以下为从Windows域账号创建chmhchmh123登录账号。 CREATE LOGIN chmhchmh123 FROM WINDOWS12.2.3 管理登录名管理登录名(1)在新建的“SQLlogin”登录名上单击右键,选择“重命名”命令,将登录名改为“newlogin”。(2)在新建的“SQLlogin”登录名上单击右键,选择“属性”命令,弹出“登录属性”对话框,在其中可以修改登录帐户的属性。(3)如果要删除“SQLlogin”帐户,在“SQLlogin”登录名上单击右键

9、,选择“删除”命令即可。 使用使用T-SQL语句来管理登录名语句来管理登录名1)使用使用T-SQL语句语句ALTER LOGIN修改登录账号修改登录账号ALTER LOGIN status_option | WITH set_option , 例如,将abc的登录密码改为“123”可用如下命令。ALTER LOGIN abc with password=123又例如,将abc的登录名更改为xyz,可用如下命令。 ALTER LOGIN abc with name=xyz使用使用T-SQL语句来管理登录名语句来管理登录名2)使用T-SQL语句来删除登录账号可使用DROP LOGIN命令DROP

10、LOGIN login_name例如,要删除登录账号xyz,可用如下命令。 DROP LOGIN xyz 12.3 数据库用户管理数据库用户管理 12.3.1 登录名与数据库用户 12.3.2 创建用户 12.3.3 管理用户 12.3.1 登录名与数据库用户n SQL Server登录名本身并不具备访问数据库对象的权限,所以一个登录帐户需要与数据库中的用户帐户相关联,只有这样使用该登录帐户的人才能访问数据库中的对象。n 在安装SQL Server后,默认数据库中包含两个用户账号:dbo和guest。任何一个登录帐号都可以通过guest帐号来存取相应的数据库,但是当建立一个新的数据库时,默认只

11、有 dbo帐号而没有guest帐号。 12.3.1 登录名与数据库用户ndbo是数据库中的默认用户。SQL Server系统安装之后,dbo用户就自动存在了。dbo用户拥有在数据库中操作的所有权限。默认情况下,sa登录名在各数据库中对应的用户是dbo用户。nguest用户是数据库中的一个默认的用户。就像dbo用户一样,SQL Server安装之后,guest用户就存在数据库中了。要注意,用户既不能创建guest用户,也不能删除该用户,但是可以激活该用户。12.3.2 创建用户 为数据库“school”创建用户,创建与“SQLlogin”登录名对应的数据库用户“SQLuser” (1)在“对象资

12、源管理器”窗口中,单击“数据库”展开数据库节点。单击要创建用户的目标数据库节点,如展开数据库节点school,然后选择“安全性”节点。在“用户”上单击鼠标右键,弹出快捷菜单,从中选择“新建用户(N)”命令 (2)打开“数据库用户-新建”对话框 (3)在用户名编辑框中输入用户名“SQLuser”。在登录名编辑框中输入关联登录名“SQLlogin”,或单击“”按钮,弹出“选择登录名”对话框 12.3.2 创建用户(4)单击“浏览”按钮,出现“查找对象”对话框,选中想添加的登录名“SQLlogin”,单击“确定”按钮关闭对话框。(5)返回到“选择登录名”对话框,可以看到添加的登录名 (6)单击“确定

13、”按钮返回到“数据库用户-新建”对话框,设置用户的其他属性,最后单击“数据库用户新建”对话框底部的“确定”,完成用户创建。 12.3.2 创建用户使用T-SQL语句创建用户账户 CREATE USER user_name FOR | FROM LOGIN login_name | WITHOUT LOGIN WITH DEFAULT_SCHEMA=schema_name 例如:创建名为abc1且具有密码的服务器登录名,然后在school中创建对应的数据库用户账号user1,其命令如下:CREATE LOGIN abc1 WITH password=12345USE schoolCREATE U

14、SER user1 from login abc1GO12.3.3 管理用户管理用户 创建完数据库用户以后,展开目标数据库“school”下的“安全性”节点,在“用户”列表中可以看见新添加的数据库用户,可以在需要修改的数据库上单击右键,选择相应命令进行管理。 使用使用T-SQL语句管理用户语句管理用户 (1)使用T-SQL语句的ALTER USER修改数据库的用户账号,格式为:ALTER USER user_name WITH NAME=new_user_name例如,将用户账号user1的名称更改为user123,可用如下命令: USE school Alter user1 with nam

15、e= user123使用使用T-SQL语句管理用户语句管理用户(2)使用T-SQL语句的drop user删除数据库的用户账号,其基本格式为:DROP USER user_name例如,从school数据库中删除数据库用户账号user1,可用如下命令:USE schoolDROP USER user1Go12.4 服务器角色与数据库角色服务器角色与数据库角色 12.4.1 固定服务器角色 12.4.2 数据库角色 角色n为便于对用户及权限的管理,可以将一组具有相同权限的用户组织在一起,这一组具有相同权限的用户就称为角色(Role)。nSQL Server 2005中,角色分为系统预定义的固定角

16、色和用户根据自己需要定义的用户角色: n固定的服务器角色n固定的数据库角色n用户自定义的角色 12.4.1 固定服务器角色 表12-1:固定服务器角色固定服务器角色固定服务器角色描描 述述bulkadmin块数据操作管理员,拥有执行块操作的权限,即拥有ADMINISTER BULK OPERATIONS权限,例如执行BULK INSERT操作dbcreator数据库创建者,拥有创建数据库的权限,即拥有CREATE DATABASE权限diskadmin磁盘管理员,拥有修改资源的权限,即拥有ALTER RESOURCE权限processadmin进程管理员,拥有管理服务器连接和状态的权限,即拥有

17、ALTER ANY CONNECTION、ALTER SERVER STATE权限securityadmin安全管理员,拥有执行修改登录名的权限,即拥有ALTER ANY LOGIN权限serveradmin服务器管理员,拥有修改端点、资源、服务器状态等权限,即拥有ALTER ANY ENDPOINT、ALTER RESOURCES、ALTER SERVER STATE、ALTER SETTINGS、SHUTDOWN、VIEW SERVER STATE权限setupadmin安装程序管理员,拥有修改链接服务器泉下,即拥有ALTER ANY LINKED SERVER权限sysadmin系统管理

18、员,拥有操作SQL Server系统的所有权限12.4.1 固定服务器角色例如:对于前面已经建立的登录帐户“SQLlogin”,如果要给其赋予系统管理员权限,可将该登录帐户加入“sysadmin”角色。(1)在“对象资源管理器”中,展开服务器节点,单击“安全性”可以看到固定服务器角色 (2)在“sysadmin”目标角色上单击鼠标右键,弹出快捷菜单,从中选择“属性(R)”命令,出现“服务器角色属性”对话框。(3)单击“添加”按钮,出现“选择登录名”对话框 。选择目标用户“SQLlogin”前的复选框,单击“确定”按钮。 12.4.2 数据库角色数据库角色 在SQL Server中,数据库角色可

19、分为两种:(1)固定数据库角色:由数据库成员所组成的组,可以是用户或者其他的数据库角色。(2)应用程序角色:用来控制应用程序存取数据库的,本身并不包含任何成员。12.4.2 数据库角色数据库角色固定数据库角色固定数据库角色固定数据库角色固定数据库角色描描 述述db_owner在特定的数据库中具有全部权限db_accessadmin可以添加或删除数据库用户和角色db_securityadmin可以管理全部权限、对象所有权、角色和角色成员资格db_ddladmin能够添加、删除和修改数据库对象db_backupoperator能够备份和恢复数据库db_datareader能够从数据库内任何表中读取

20、数据db_datawriter能够对数据库内任何表插入、修改和删除数据db_denydatareader不能够从表中读取数据db_denydatawriter不能够改变表中的数据public维护默认的许可12.5 权限管理权限管理 n12.5.1 权限的类型权限的类型n12.5.2 管理权限管理权限 12.5.1 权限的类型权限的类型n权限用来指定授权用户可以使用的数据库对象和这些授权用户可以对这些数据库对象执行的操作。 n在SQL Server中包括三种类型的权限:(1)对象权限表示对特定的数据库对象的操作许可,它决定了能对表、视图等数据库对象执行哪些操作。(2)语句权限表示对数据库的操作许可,也就是说,创建数据库或者创建数据库中的其他内容所需要的许

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论