zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

【计算机三级数据库技术】第9章 数据库的安全管理--附思维导图

数据库技术安全计算机 管理 -- 思维 导图
2023-09-14 09:12:40 时间

在这里插入图片描述

1 安全控制

1.1 基本概念

	安全性:保护数据以防止不合法用户故意造成的破坏
	完整性:保护数据以防止合法用户无意中造成的破坏

1.2 数据库安全控制的目标

	保护数据免受意外或故意的丢失、破坏或者滥用

1.3 数据库安全的威胁需要考虑的情况

	可用性的损失
	机密性数据的丢失
	私密性数据的丢失
	偷窃和欺诈
	意外的损害

1.4 安全控制模型

	操作权限控制
	文件操作控制

1.5 授权和认证

	授权:将合法访问数据库或数据库对象的权限授予用户的过程
	认证:是一种鉴定用户身份的机制
	DBMS的访问控制
		自主存取控制:用户对不同的数据对象具有具有不同的存取权限
		强制存取控制:每一个数据对象被标以一定的密级,每一个用户被授予一个许可证级别

2 存取控制

2.1 自主存取控制

	权限种类
		对DBMS的维护权限
		对数据库中的对象和数据进行操作的权限
			对数据库对象的操作权限
			对于数据库的操作权限
	用户分类
		系统管理员
		数据库对象拥有者
		普通用户

2.2 强制存取控制

	基本概念
		能够通过授权机制来有效控制对敏感数据的存取
	DBMS将全部实体划分为主体和客体
		主体:是系统中的活动实体,既包括DBMS所管理的实际用户每页包括代表用户的各个进程
		客体:是系统中的被动实体,是受主体操纵的没包括文件、基本表、索引、视图等
			子主题 1
	敏感度级别
		绝密Top Secret 
		秘密Secret
		可信Confidential
		公开Public
	通用安全性分级模型
		A类:提供验证保护(最高)
		B类:提供强制保护,B2>B1
		C类:提供自主保护,C1最小,C2>C1
		D类:提供最小保护

3 审计跟踪

基本概念
	是一种特殊的文件或数据库,系统在上面自动记录用户对常规数据的所有操作
审计跟踪记录包含的信息
	操作请求
	操作终端
	操作人
	操作日期和时间
	元组、属性和影响
	新值
	旧值

4 SQL Server 的安全控制

4.1 身份验证模型

	WIndows身份验证模式
	混合身份验证模式
		允许Windows授权用户和SQL授权用户登录
		SQL Server的身份验证的登录信息都保存在SQL Server实例上而Windows身份验证的登录信息是由windows和SQLServer实例共同保存的

4.2 登录账户

	分类
		由SQL Server自身负责身份验证的登录账户
		登录到SQL Server的Windows网络用户,可以是组账户或用户账户
	实例:创建SQL Server身份验证的登录账户登录名为Sql_user,密码是1234
		Create LOGIN Sql_user WITH Password = '1234'
	创建和修改账户
		创建账户Create LOGIN login_name WITH Password =‘’
		修改密码:ALter LOGIN user_name WITH password =''
		启用已经禁用的登录账户:Alter  LOGIN login_name WITH Password =''
		修改账户名:Alter LOGIN user_name WITH  Name =new_user_name
		删除用户账户:Drop LOGIN user_name

4.3 数据库用户

	分类
		系统管理员
		数据库对象拥有者
		普通用户
	创建用户
		Create USER user_name
	Guest 用户(匿名用户)
		启用guest用户:GRANT CONNECT TO guest
		禁用guest用户:ReVoke CONNECT TO guest
	删除数据库用户:DROP user_name

4.4 权限管理

	对象级别
		Select
		Insert
		UPdate
		Delete
		References
		Execute
		实例1:使用GRANT OPTION选项,授予用户user_name对Employer视图中EmployeeID列具有Reference权限:
		GRANT Reference (EmployeeID) ON Employee
		TO user_name WITH GRANT OPTION
			
		实例2:授予用户user_name 对test.Employee存储过程具有Execute权限
		GRANT Execute ON OBJECT:: test.Employee TO user_name
	语句级别
		Create DataBase
		Create Procedure
		Create Table
		Create View
		Create Function
		Backup Database:备份数据库
		Backup LOG:备份日志
		实例1:授予用户user1和user2都具有创建表和视图的权限
		GRANT Create Table,Create View TO user1,user2
		拒绝权限:Deny...
		收回权限:Revoke ...
	隐含级别

4.5角色

	分类
		固定服务器角色
			bulkdamin:具有执行Bulk INsert语句的权限
			dbcreator:具有创建、修改、删除和还原数据库的权限
			diskadmin:管理磁盘文件的权限
			securityadmin:管理登录账户、读取错误日志、执行Create Database
			setupadmin:添加和删除链接服务器的权限
			sysadmin:系统管理员角色,任何操作的权限
			Serveradmin:设置服务器级别的配置选项的权限
			processadmin:进程管理的权限
			添加角色的存储过程:sp_addsrvrolemember
		固定数据库角色
			db_accessadmin:添加或删除数据库用户的权限
			db_backupoperator:备份数据库、日志的权限
			db_datareader:查询数据库中所有用户的权限
			db_datawriter:插入、删除和更改数据库中所有用户数据的权限
			db_ddladmin:执行数据定义语言DDL的权限
			db_denydatareader:不允许查询
			db_owner:在数据库中年进行全部操作的权限
			db_decurityadmin:管理数据库角色、角色成员的权限
			添加角色:sp_addrolemember
			删除角色:sp_droprolemember
	自定义
		用户定义的角色属于数据库一级的角色
		创建角色:create ROLE role_name [AUTHORIZATION owner_name]owner_name是该角色拥有者

5 Oricle的安全控制

5.1 分类

	数据库级别:数据库级别的安全性通过用户身份认证和授予用户相应系统权限来保证
	表级
	行级
	级

5.2 两级安全管理员

	全局数据安全管理员:负责管理、协调,维护全局数据的一致性和安全性
	场地数据安全管理员:负责维护本结点数据库的安全性、包括用户管理、系统特权与角色的管理

5.3 用户与资源管理

Oricle数据库中的用户按其操作权限的大小可分为DBA用户和普通用户
	DBA用户:实在数据库系统安装时由DBMS自动创建生成的,它们是sys用户,用于全部的系统权限
	普通用户:是有DBA用户或相应特权的 用户创建,并授予系统特权的用户

5.4 权限管理

	系统特权:DBA可以根据具体情况授予用户相应的特权
	对象特权:用户维护表级、行级与列级数据的安全性

5.5 角色

	Connect:具有这种角色的用户不能在数据中建立任何对象,但是可以查询数据字典以及访问权限的数据对象
	Resource:可以在数据库中建立关系表、视图、序列、索引、聚集、存储过程、存储函数、触发器、数据库链路
	DBA :所有系统权限

5.6 审计功能