第8章 数据库安全管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意:以上所讲述的在对象资源管理器中设置对象权限和语句权限 的方法并不唯一,同样的权限设置,通过其他操作方法一样可以达 到。
22 数据库技术与应用
本章小结
两种身份验证模式:Windows身份验证模式和混合模式
登录帐户是用户与SQL Server间建立的连接途径。
用户和登录是两个不同的概念。登录是对服务器而言。而
16
数据库技术与应用
8.2.3 角色管理
固定角色 固定服务器角色 独立于各个数据库,具有固定的权限。 固定数据库角色 指数据库的管理、访问权限已被SQL Server固定的那些角 色。 用户定义数据库角色 当一组用户需要设置的权限不同于固定数据库角色所具 有的权限时,为了满足要求而定义的新的数据库角色。 应用程序角色 应用程序角色是一个数据库主体,它使应用程序能够用 其自身的、类似用户的特权来运行。
注意:创建了Windows用户账号乊后,还需要使用对象资源管理器将 该账号加入到SQL Server 2008中。
13 数据库技术与应用
8.2.2 数据库用户管理
在SQL Server 2008中,数据库用户账户用来控制用 户是否具有操纵SQL Server 2008实例中的各个数据 库的权限。
用户和登录是两个不同的概念。 登录是对服务器而言,只表明它通过了NT认证或SQL Server 2008认证,但不能表明其可以对数据库迚行操作。 用户是对数据库而言,属于数据库级。数据库用户就是指 对该数据库具有访问权的用户。它用来指出哪些人可以访 问数据库。
3
数据库技术与应用
8.1
SQL Server 2008的安全机制
身份验证 身份验证模式的设置
4
数据库技术与应用
8.1.1 身份验证
数据库的安全性(security)是指保护数据库避免不合法的 使用,以免数据的泄漏、更改或破坏。数据库的安全性用 于防止对数据库的恶意破坏和非法存取。 SQL Server 的身份验证模式是指系统确认用户的方式。 SQL Server 2008能在两种身份验证模式(Authentication Modes)下运行:Windows身份验证模式和混合模式。
8.2.4 权限管理
数据库的权限是指用户对数据库中对象的使用及操 作的权利。
被授予的权限来决定用户能够对哪些数据库对象执行哪些 操作。因此,对于每个用户,必须向其授予明确的权限, 以便他们能够以不同的方式访问数据库对象,这就是权限 管理。
权限的类型(共3种)
对象权限 语句权限 隐含权限
19
数据库技术与应用
11
数据库技术与应用
8.2.1 登录管理
1.创建Windows身份验证模式的登录名
操作步骤:
注意:创建了Windows用户账号乊后,还需要使用对象资源管理器将该账号加 入到SQL Server 2008中。 12 数据库技术与应用
8.2.1 登录管理
2.建立SQL Server 2008验证模式的登录名
数据库技术与应用
6
8.1.1 身份验证
混合模式
在混合模式下用户既可以使用 Windows身份验证,也可以 使用SQL Server 2008身份验证。
通过混合模式身份验证迚行连接的用户每次连接时必须提供其凭据( 登录名和密码)。当使用混合模式身份验证时,必须为所有SQL Server 2008账户设置强密码。
注意:一个登录名在本数据库中只能 创建一个数据库用户。若在该数据库 中已有对应用户名,则该登录账号不 会出现在“登录名”下拉列表框中。
15
数据库技术与应用
8.2.3 角色管理
角色
是数据库管理系统为方便权限管理而设置的管理单位。通 过角色可将用户分为不同的类型,相同类用户(相同角色 的成员)迚行统一管理,赋予相同的操作权限。 一个角色类似于Windows账户管理中的一个用户组,可包 含多个用户。在SQL Server 2008中,数据库用户是数据库 级别上的主体。每个数据库用户都是 public 角色的成员。 角色的类型(共3种): 固定角色 用户定义数据库角色 应用程序角色
7
数据库技术与应用
8.1.2 身份验证模式的设置
在安装SQL Server 2008 的过程中,会有选择身份验证模 式的步骤。安装完成后,也可以通过SQL Server 2008 的 SSMS进行更改。操作步骤如下:
(1)打开SSMS窗口,选择一种身份验证模式建立与服务器的连接。 (2)在“对象资源管理器”窗口中,鼠标右键单击当前服务器名称,选择“属性”命令,打开“服务 器属性”对话框,如图8.3所示。
隐含权限
是指系统自行预定义而不需要授权就有的权限,包括固定 服务器角色、固定数据库角色和数据库对象所有者所拥有 的权限。
21 数据库技术与应用
8.2.4 权限管理
权限的管理包含
对象权限的管理 在SQL Server 2008中,所有对象权限都可以授予。可以为 特定的对象、特定类型的所有对象和所有属于特定架构的 对象管理器。 语句权限的管理 用户语句权限可以使用对象资源管理器授予。例如为角色 ROLE1授予CREATE TABLE权限,而不授予SELECT权限,然 后执行相应的语句,查看执行结果,从而理解语句权限的 设置。
在混合模式下,如果不使用 Windows用户连接SQL Server 2008,则需要在SQL Server 2008 下创建登录用户,才能够通过 SQL Server 2008身份验证连接 SQL Server 2008实例。 若要增加新的SQL Server 2008用 户或SQL Server 2008安装时没有 设置SQL Server 2008验证模式的 登录名,可按以下操作步骤在图 形界面中新建:
17 数据库技术与应用
8.2.3 角色管理
角色管理
利用角色,SQL Server 2008管理者可以将某些用户设置为 某一角色,这样只对角色迚行权限设置便可以实现对所有 用户权限的设置,大大减少了管理员的工作量。
角色管理包含
固定服务器角色管理 固定数据库角色管理 用户定义数据库角色管理
18
数据库技术与应用
8
数据库技术与应用
8.1.2 身份验证模式的设置
(3)在左侧的选项卡列表框中,选择“安全性”选项卡,展开安全性选项内容,如图8.4所示。在此选 项卡中即可设置身份验证模式。 (4)通过在“服务器身份验证”选项区域下,选择相应的单选按钮,可以确定SQL Server 2008的服务 器身份验证模式。无论使用哪种模式,都可以通过审核来跟踪访问SQL Server 2008的用户,默认时仅审 核失败的登录。 (5)单击“确定”按钮完成设置,此时,在弹出图8.5所示对话框,要求重新启动SQL Server 2008 的服 务器才能实现混合模式登录。
5
数据库技术与应用
8.1.1 身份验证
Windows身份验证模式
在Windows身份验证模式下,SQL Server 2008依靠Windows 身份验证来验证用户的身份。只要用户能够通过Windows 用户账号验证,即可连接到SQL Server 2008。
注意以下两个方面: 必须将Windows账户加入到SQL Server 2008中,才能采用 Windows账户登录SQL Server 2008。 如果使用Windows账户登录到另一个网络的SQL Server 2008,则 必须在Windows中设置彼此的托管权限。 Windows身份验证模式是SQL Server 2008的默认身份验证模式。这 种模式下,SQL Server 2008不要求提供密码,也不执行身份验证, 用户身份由Windows迚行确认。
用户是对数据库而言,属于数据库级。
权限是指用户对数据库中对象的使用及操作的权利。3种 权限类型:对象权限、语句权限和隐含权限。 角色是数据库管理系统为方便权限管理而设置的管理单位 。角色中的所有成员继承角色所拥有的权限。
23
数据库技术与应用
本章思考
(1)SQL Server 2008提供了哪些安全管理机制?安全 性管理是建立在什么机制上的? (2)SQL Server 2008有几种身份验证方式?它们的区 别是什么?哪种身份验证方式更安全? (3)数据库的权限是指什么权限?权限管理的主要 任务是什么?角色中的所有成员 能否继承该角色 所拥有的权限? (4)SQL Server 2008中有几种角色类型?它们的主要 区别是什么? (5)SQL Server 2008安全管理的内容主要包括哪些?
9
数据库技术与应用
8.2
SQL Serve安全管理
登录管理 数据库用户管理 角色管理 权限管理
10
数据库技术与应用
8.2.1 登录管理
在SQL Server 2008中,不管使用哪种验证方式,用 户在对数据库迚行操作乊前,必须使用有效的登录 名连接到相应的数据库。
创建登录名的方法(2种)
从Windows用户或组中创建登录账户 在SQL Server 2008中创建新的SQL Server 2008登录名
中南大学信息科学与工程学院
数据库技术与应用
数据库技术与应用教材编写组
第八章 数据库安全的ቤተ መጻሕፍቲ ባይዱ理
本章内容 数据库安全的概念 角色的概念 数据库的安全机制 数据库安全管理的内容
重点难点
SQL Server 2008身份验证模式的基本操作
2
数据库技术与应用
问题提出
什么是数据库的安全? 数据库的安全由什么来保障?
8.2.4 权限管理
对象权限
决定用户对数据库对象所执行的操作,它控制用户在表和 视图上执行SELECT、INSERT、UPDATE、DELETE语句以及 执行存储过程的能力。
20
数据库技术与应用
8.2.4 权限管理
语句权限
主要指用户是否具有权限来执行某一语句。这些语句通常 是一些管理性操作,如创建数据库、表、存储过程等。
创建登录账户后,如果在数据库中没有授予该用户访问数据库的权 限,则该用户仍然不能访问数据库,所以对于每个要求访问数据库 的登录(用户),必须将其用户账户添加到数据库中,并授予其相 应的活动权限(使其成为数据库用户)。
14 数据库技术与应用
8.2.2 数据库用户管理
使用对象资源管理器创建数据库用户的操作步骤:。
24 数据库技术与应用
本章结束
25
数据库技术与应用
22 数据库技术与应用
本章小结
两种身份验证模式:Windows身份验证模式和混合模式
登录帐户是用户与SQL Server间建立的连接途径。
用户和登录是两个不同的概念。登录是对服务器而言。而
16
数据库技术与应用
8.2.3 角色管理
固定角色 固定服务器角色 独立于各个数据库,具有固定的权限。 固定数据库角色 指数据库的管理、访问权限已被SQL Server固定的那些角 色。 用户定义数据库角色 当一组用户需要设置的权限不同于固定数据库角色所具 有的权限时,为了满足要求而定义的新的数据库角色。 应用程序角色 应用程序角色是一个数据库主体,它使应用程序能够用 其自身的、类似用户的特权来运行。
注意:创建了Windows用户账号乊后,还需要使用对象资源管理器将 该账号加入到SQL Server 2008中。
13 数据库技术与应用
8.2.2 数据库用户管理
在SQL Server 2008中,数据库用户账户用来控制用 户是否具有操纵SQL Server 2008实例中的各个数据 库的权限。
用户和登录是两个不同的概念。 登录是对服务器而言,只表明它通过了NT认证或SQL Server 2008认证,但不能表明其可以对数据库迚行操作。 用户是对数据库而言,属于数据库级。数据库用户就是指 对该数据库具有访问权的用户。它用来指出哪些人可以访 问数据库。
3
数据库技术与应用
8.1
SQL Server 2008的安全机制
身份验证 身份验证模式的设置
4
数据库技术与应用
8.1.1 身份验证
数据库的安全性(security)是指保护数据库避免不合法的 使用,以免数据的泄漏、更改或破坏。数据库的安全性用 于防止对数据库的恶意破坏和非法存取。 SQL Server 的身份验证模式是指系统确认用户的方式。 SQL Server 2008能在两种身份验证模式(Authentication Modes)下运行:Windows身份验证模式和混合模式。
8.2.4 权限管理
数据库的权限是指用户对数据库中对象的使用及操 作的权利。
被授予的权限来决定用户能够对哪些数据库对象执行哪些 操作。因此,对于每个用户,必须向其授予明确的权限, 以便他们能够以不同的方式访问数据库对象,这就是权限 管理。
权限的类型(共3种)
对象权限 语句权限 隐含权限
19
数据库技术与应用
11
数据库技术与应用
8.2.1 登录管理
1.创建Windows身份验证模式的登录名
操作步骤:
注意:创建了Windows用户账号乊后,还需要使用对象资源管理器将该账号加 入到SQL Server 2008中。 12 数据库技术与应用
8.2.1 登录管理
2.建立SQL Server 2008验证模式的登录名
数据库技术与应用
6
8.1.1 身份验证
混合模式
在混合模式下用户既可以使用 Windows身份验证,也可以 使用SQL Server 2008身份验证。
通过混合模式身份验证迚行连接的用户每次连接时必须提供其凭据( 登录名和密码)。当使用混合模式身份验证时,必须为所有SQL Server 2008账户设置强密码。
注意:一个登录名在本数据库中只能 创建一个数据库用户。若在该数据库 中已有对应用户名,则该登录账号不 会出现在“登录名”下拉列表框中。
15
数据库技术与应用
8.2.3 角色管理
角色
是数据库管理系统为方便权限管理而设置的管理单位。通 过角色可将用户分为不同的类型,相同类用户(相同角色 的成员)迚行统一管理,赋予相同的操作权限。 一个角色类似于Windows账户管理中的一个用户组,可包 含多个用户。在SQL Server 2008中,数据库用户是数据库 级别上的主体。每个数据库用户都是 public 角色的成员。 角色的类型(共3种): 固定角色 用户定义数据库角色 应用程序角色
7
数据库技术与应用
8.1.2 身份验证模式的设置
在安装SQL Server 2008 的过程中,会有选择身份验证模 式的步骤。安装完成后,也可以通过SQL Server 2008 的 SSMS进行更改。操作步骤如下:
(1)打开SSMS窗口,选择一种身份验证模式建立与服务器的连接。 (2)在“对象资源管理器”窗口中,鼠标右键单击当前服务器名称,选择“属性”命令,打开“服务 器属性”对话框,如图8.3所示。
隐含权限
是指系统自行预定义而不需要授权就有的权限,包括固定 服务器角色、固定数据库角色和数据库对象所有者所拥有 的权限。
21 数据库技术与应用
8.2.4 权限管理
权限的管理包含
对象权限的管理 在SQL Server 2008中,所有对象权限都可以授予。可以为 特定的对象、特定类型的所有对象和所有属于特定架构的 对象管理器。 语句权限的管理 用户语句权限可以使用对象资源管理器授予。例如为角色 ROLE1授予CREATE TABLE权限,而不授予SELECT权限,然 后执行相应的语句,查看执行结果,从而理解语句权限的 设置。
在混合模式下,如果不使用 Windows用户连接SQL Server 2008,则需要在SQL Server 2008 下创建登录用户,才能够通过 SQL Server 2008身份验证连接 SQL Server 2008实例。 若要增加新的SQL Server 2008用 户或SQL Server 2008安装时没有 设置SQL Server 2008验证模式的 登录名,可按以下操作步骤在图 形界面中新建:
17 数据库技术与应用
8.2.3 角色管理
角色管理
利用角色,SQL Server 2008管理者可以将某些用户设置为 某一角色,这样只对角色迚行权限设置便可以实现对所有 用户权限的设置,大大减少了管理员的工作量。
角色管理包含
固定服务器角色管理 固定数据库角色管理 用户定义数据库角色管理
18
数据库技术与应用
8
数据库技术与应用
8.1.2 身份验证模式的设置
(3)在左侧的选项卡列表框中,选择“安全性”选项卡,展开安全性选项内容,如图8.4所示。在此选 项卡中即可设置身份验证模式。 (4)通过在“服务器身份验证”选项区域下,选择相应的单选按钮,可以确定SQL Server 2008的服务 器身份验证模式。无论使用哪种模式,都可以通过审核来跟踪访问SQL Server 2008的用户,默认时仅审 核失败的登录。 (5)单击“确定”按钮完成设置,此时,在弹出图8.5所示对话框,要求重新启动SQL Server 2008 的服 务器才能实现混合模式登录。
5
数据库技术与应用
8.1.1 身份验证
Windows身份验证模式
在Windows身份验证模式下,SQL Server 2008依靠Windows 身份验证来验证用户的身份。只要用户能够通过Windows 用户账号验证,即可连接到SQL Server 2008。
注意以下两个方面: 必须将Windows账户加入到SQL Server 2008中,才能采用 Windows账户登录SQL Server 2008。 如果使用Windows账户登录到另一个网络的SQL Server 2008,则 必须在Windows中设置彼此的托管权限。 Windows身份验证模式是SQL Server 2008的默认身份验证模式。这 种模式下,SQL Server 2008不要求提供密码,也不执行身份验证, 用户身份由Windows迚行确认。
用户是对数据库而言,属于数据库级。
权限是指用户对数据库中对象的使用及操作的权利。3种 权限类型:对象权限、语句权限和隐含权限。 角色是数据库管理系统为方便权限管理而设置的管理单位 。角色中的所有成员继承角色所拥有的权限。
23
数据库技术与应用
本章思考
(1)SQL Server 2008提供了哪些安全管理机制?安全 性管理是建立在什么机制上的? (2)SQL Server 2008有几种身份验证方式?它们的区 别是什么?哪种身份验证方式更安全? (3)数据库的权限是指什么权限?权限管理的主要 任务是什么?角色中的所有成员 能否继承该角色 所拥有的权限? (4)SQL Server 2008中有几种角色类型?它们的主要 区别是什么? (5)SQL Server 2008安全管理的内容主要包括哪些?
9
数据库技术与应用
8.2
SQL Serve安全管理
登录管理 数据库用户管理 角色管理 权限管理
10
数据库技术与应用
8.2.1 登录管理
在SQL Server 2008中,不管使用哪种验证方式,用 户在对数据库迚行操作乊前,必须使用有效的登录 名连接到相应的数据库。
创建登录名的方法(2种)
从Windows用户或组中创建登录账户 在SQL Server 2008中创建新的SQL Server 2008登录名
中南大学信息科学与工程学院
数据库技术与应用
数据库技术与应用教材编写组
第八章 数据库安全的ቤተ መጻሕፍቲ ባይዱ理
本章内容 数据库安全的概念 角色的概念 数据库的安全机制 数据库安全管理的内容
重点难点
SQL Server 2008身份验证模式的基本操作
2
数据库技术与应用
问题提出
什么是数据库的安全? 数据库的安全由什么来保障?
8.2.4 权限管理
对象权限
决定用户对数据库对象所执行的操作,它控制用户在表和 视图上执行SELECT、INSERT、UPDATE、DELETE语句以及 执行存储过程的能力。
20
数据库技术与应用
8.2.4 权限管理
语句权限
主要指用户是否具有权限来执行某一语句。这些语句通常 是一些管理性操作,如创建数据库、表、存储过程等。
创建登录账户后,如果在数据库中没有授予该用户访问数据库的权 限,则该用户仍然不能访问数据库,所以对于每个要求访问数据库 的登录(用户),必须将其用户账户添加到数据库中,并授予其相 应的活动权限(使其成为数据库用户)。
14 数据库技术与应用
8.2.2 数据库用户管理
使用对象资源管理器创建数据库用户的操作步骤:。
24 数据库技术与应用
本章结束
25
数据库技术与应用