第四章数据库安全性 - Home, WAMDM, Database Group …

合集下载

DB第4章 数据库的安全性

DB第4章 数据库的安全性
7 破坏安全性的行为可能是无意的,故意的,恶意的。
数据库安全性控制
-计算机系统中的安全模型
计算机系统中,安全措施是一级一级层层设 置
计算机系统的安全模型
8
数据库安全性控制
-数据库安全性控制的常用方法
用户标识和鉴定 存取控制 视图 审计 密码存储
9
数据库安全性控制的常用方法
-用户标识和鉴定 是系统提供的最外层安全保护措施,其基本方法是:
GRANT SELECT ON CS_Student TO 王平 ;
35
数据库存取控制方法
-审计 安全机制包括:用户识别和鉴定、存取控制、视图, 为达到更高的安全级别,可采用预防监测手段:审 计技术 什么是审计(Audit) 启用一个专门的审计日志(Audit Log),将用 户对数据库的所有操作记录在上面 DBA可以利用审计日志中的追踪信息找出非法 存取数据的人 审计功能的可选性
只有系统超级用户才有权创建数据库新用户。 新用户有三种权限:CONNECT、RESOURCE、 DBA
CONNECT权限:
不能创建新用户 不能创建模式 不能创建表 只能登录数据库,执行数据查询和操纵
31
数据库角色
角色是被命名的一组与数据库操作相关的权限。 角 色是权限的集合。可以为一组具有相同权限的用户 创建一个角色。 (1)创建一个角色: GREATE ROLE R1; (2)授权: GRANT SELECT,UPDATE,INSERT ON TABLE Student TO R1; (3)将这个角色授予王平、张明、赵玲 GRANT R1 TO 王平,张明,赵玲;
首先用视图机制屏蔽掉一部分保密数据 视图上面再进一步定义存取权限
34
例:王平只能检索计算机系学生的信息。 先建立计算机系学生的视图CS_StudБайду номын сангаасnt

数据库系统概论 第四章 数据库安全性

数据库系统概论 第四章  数据库安全性

数据库系统概论第四章数据库安全性在当今数字化的时代,数据已经成为了企业和组织最为重要的资产之一。

数据库作为存储和管理数据的核心设施,其安全性至关重要。

如果数据库的安全性得不到保障,可能会导致数据泄露、数据篡改、数据丢失等严重后果,给企业和组织带来巨大的损失。

因此,深入理解和掌握数据库安全性的相关知识,对于保障数据库的正常运行和数据的安全具有重要意义。

数据库安全性指的是保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。

这包括了对数据库中的数据、数据库的访问控制、用户身份验证、数据加密、备份与恢复等多个方面的管理和保护。

访问控制是数据库安全性的重要环节之一。

它决定了谁能够访问数据库中的哪些数据,以及能够进行何种操作(如读取、写入、修改、删除等)。

访问控制通常通过用户身份验证和授权来实现。

用户在访问数据库之前,需要提供有效的身份信息(如用户名和密码)进行验证。

只有通过验证的用户才能获得相应的访问权限。

授权则是为不同的用户或用户组分配不同的权限,以确保他们只能在其权限范围内操作数据。

用户身份验证的方式多种多样。

常见的有基于用户名和密码的验证、基于数字证书的验证、基于生物特征(如指纹、面部识别等)的验证等。

用户名和密码是最基本也是最常用的验证方式,但这种方式存在密码容易被猜测或破解的风险。

因此,为了提高安全性,通常会要求用户设置复杂的密码,并定期更改密码。

数字证书则是一种更安全的验证方式,它基于公钥基础设施(PKI),通过数字签名来验证用户的身份。

生物特征验证则具有更高的安全性和便捷性,因为生物特征具有唯一性和难以伪造的特点。

除了访问控制和用户身份验证,数据加密也是保障数据库安全性的重要手段。

数据加密是将明文数据转换为密文数据的过程,只有拥有正确密钥的用户才能将密文数据解密为明文数据。

这样即使数据被窃取,窃取者也无法获取到有用的信息。

数据加密可以在数据存储时进行(静态加密),也可以在数据传输时进行(动态加密)。

《数据库》作业第4章 数据库安全性

《数据库》作业第4章 数据库安全性

《数据库》作业第4章数据库安全性在当今数字化的时代,数据库中存储着大量的关键信息,包括个人身份信息、财务数据、商业机密等等。

这些数据的安全性至关重要,如果不加以妥善保护,可能会导致严重的后果,如数据泄露、数据篡改、隐私侵犯以及业务中断等。

因此,确保数据库的安全性是一项极其重要的任务。

数据库安全性的定义可以理解为保护数据库中的数据,防止未经授权的访问、修改、删除或泄露。

这涉及到多个方面的措施和技术,包括用户认证、授权、访问控制、加密、审计等。

用户认证是数据库安全性的第一道防线。

它用于确认试图访问数据库的用户的身份。

常见的认证方式包括用户名和密码组合、指纹识别、面部识别等。

用户名和密码是最常见的方式,但需要注意的是,密码应该足够复杂并且定期更换,以增加安全性。

此外,多因素认证,如结合密码和短信验证码,能进一步提高认证的可靠性。

授权则是在用户通过认证后,确定其对数据库中不同数据和操作的权限。

例如,某个用户可能被授权只能读取特定表中的数据,而另一个用户可能被允许进行数据的插入、更新和删除操作。

通过精细的授权管理,可以确保每个用户只能执行其被允许的操作,从而降低误操作和恶意操作的风险。

访问控制是实现授权的具体手段。

常见的访问控制模型包括自主访问控制(DAC)、强制访问控制(MAC)和基于角色的访问控制(RBAC)。

自主访问控制允许数据的所有者决定谁可以访问其数据,这种方式相对灵活,但可能存在权限分配不当的风险。

强制访问控制则基于数据的敏感级别和用户的安全级别来决定访问权限,具有较高的安全性,但管理相对复杂。

基于角色的访问控制将用户分配到不同的角色,每个角色具有特定的权限,这种方式简化了权限管理,并且在大型数据库系统中得到了广泛的应用。

加密是保护数据库中敏感数据的重要手段。

通过对数据进行加密,即使数据被非法获取,没有正确的密钥也无法解读其内容。

常见的加密算法包括对称加密算法(如 AES)和非对称加密算法(如 RSA)。

数据库 原理 及应用 数据库安全性

数据库 原理 及应用 数据库安全性
An Introduction to Database System
可信计算机系统评测标准(续)
■ TDI/TCSEC标准的基本内容
■ TDI与TCSEC一样,从四个方面来描述安全性级 别划分的指标

安全策略

责任

保证

文档
An Introduction to Database System
可信计算机系统评测标准(续)
■ R1 安全策略(Security Policy)
R1.1 自主存取控制 (Discretionary Access Control,简记为DAC)
R1.2 客体重用(Object Reuse) R1.3 敏感度标记(Labels)
主体的敏感度标记:许可证级别 客体的敏感度标记:密级(绝密、机密、可信、公开) R1.4 强制存取控制(Mandatory Access
■ 技术安全类 ■ 管理安全类 ■ 政策法律类
An Introduction to Database System
计算机系统的三类安全性问题(续)
■ 技术安全: 指计算机系统中采用具有一定安全性的硬件、软件来实现
对计算机系统及其所存数据的安全保护,当计算机系统受到恶意攻击 时仍能保证系统正常运行,保证系统内的数据不增加、不丢失、不泄 露 ■ 管理安全:指由于管理不善导致的计算机设备和数据介质的物理破坏、 丢失等安全问题 ■ 政策法律:政府部门建立的有关计算机犯罪、数据安全保密的法律道 德准则和政策法规、法令。如计算机犯罪与侦察等。
■ 1985年美国国防部(DoD)正式颁布《 DoD 可信计算机系统评估标准》(简称TCSEC或 DoD85)
■ TCSEC标准的目的

数据库安全性-课件

数据库安全性-课件
数据库系统概论
An Introduction to Database System
第四章 数据库安全性
中国人民大学信息学院
起钉上传 QQ:113608078 Mail:rgwei@
数据库安全性
问题的提出 数据库的一大特点是数据可以共享 数据共享必然带来数据库的安全性问题
数据库系统中的数据共享不能是无条件的共享
技术安全类 管理安全类 政策法律类
起钉上传 QQ:113608078 Mail:rgwei@
4.1 计算机安全性概论
4.1.1 计算机系统的三类安全性问题
4.1.2 安全标准简介
起钉上传 QQ:113608078 Mail:rgwei@
4.1.2 安全标准简介
数据
属性列
SELECT,INSERT,UPDATE, REFERENCES
ALL PRIVILEGES
关系数据库系统中的存取权限
起钉上传 QQ:113608078 Mail:rgwei@
4.2 数据库安全性控制
4.2.1 用户标识与鉴别 4.2.2 存取控制
4.2.3 自主存取控制方法
安全功能要求 安全保证要求
起钉上传 QQ:113608078 Mail:rgwei@
CC(续)
CC文本组成
简介和一般模型 安全功能要求 安全保证要求
起钉上传 QQ:113608078 Mail:rgwei@
CC(续)
CC评估保证级划分
评估保证 级 EAL1 EAL2 EAL3 EAL4 EAL5 EAL6 定 义 TCSEC安全级别(近似相 当) C1 C2 B1 B2 B3 功能测试(functionally tested) 结构测试(structurally tested) 系统地测试和检查(methodically tested and checked) 系统地设计、测试和复查(methodically designed, tested, and reviewed) 半形式化设计和测试(semiformally designed and tested) 半形式化验证的设计和测试(semiformally verified design and tested) EAL7 A1 形式化验证的设计和测试(formally verified design and tested) 起钉上传 QQ:113608078 Mail:rgwei@

第4章数据库安全性

第4章数据库安全性
界面方式
建立Windows验证模式的登录名 建立SQL Server验证模式的登录名
14
4.2.1 创建登录名
命令方式CREATE L源自GIN login_name /*WITH子句用于创建SQL Server登录名*/
{ WITH PASSWORD = 'password' [ HASHED ] [ MUST_CHANGE ] [ , <option_list> [ ,... ] ]
没有指定WITH GRANT OPTION子句:
获得某种权限的用户只能使用该权限,不能传播该权限
32
4.3 权限管理
GRANT语句 [例7]把对S表和C表的全部权限授予用户U1和U2
GRANT ALL PRIVILEGES ON S TO U1,U2; GRANT ALL PRIVILEGES ON C TO U1,U2;
功能:向当前数据库添加用户 [例5] 在student数据库中为登录账户sql_tao映射
一个数据库用户u1。 CREATE USER u1 FOR LOGIN sql_tao;
26
4.2 建立和管理用户账户
4.2.1 创建登录名 4.2.2 删除登录名 4.2.3 创建数据库用户 4.2.4 删除数据库用户
检查,以决定是否执行操作请求。
30
4.3 权限管理
GRANT语句
GRANT <权限>[,<权限>]… ON <对象类型><对象名>[,<对象类型><对象名>]… TO <用户>[,<用户>]… [WITH GRANT OPTION];

第四章数据库安全性 PPT资料共107页


2019/10/3
10
安全标准简介(续)
1993年,CTCPEC、FC、TCSEC和ITSEC联合 行动,解决原标准中概念和技术上的差异,称为 CC(Common Criteria)项目
2019年 CC V2.1版被ISO采用为国际标准 2019年 CC V2.1版被我国采用为国家标准
目前CC已基本取代了TCSEC,成为评估信息产 品安全性的主要标准。
数据库系统概论
An Introduction to Database System
第四章 数据库安全性
数据库安全性
问题的提出
数据库的一大特点是数据可以共享 数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享
例: 军事秘密、国家机密、新产品实验数据、 市场需求分析、市场营销策略、销售计划、 客户档案、医疗档案、银行储蓄数据
2019/10/3
23
CC
CC
提出国际公认的表述信息技术安全性的结构 把信息产品的安全要求分为
安全功能要求 安全保证要求
2019/10/3
24
CC(续)
CC文本组成
简介和一般模型
有关术语、基本概念和一般模型以及与评估有关的一些 框架
安全功能要求
列出了一系列类、子类和组件
26
第四章 数据库安全性
4.1 数据库安全性概述 4.2 数据库安全性控制 4.3 视图机制 4.4 审计(Audit) 4.5 数据加密 4.6 其他安全性 4.7 小结
2019/10/3
27
4.2 数据库安全性控制
非法使用数据库的情况
编写合法程序绕过数据库管理系统及其授权机制 直接或编写应用程序执行非授权操作 通过多次合法查询数据库从中推导出一些保密数据

第4章 关系数据库安全性

– 定义用户权限,并将用户权限登记到数据字典中 定义用户权限, – 合法权限检查 • 当用户发出数据库操作请求时(包括操作类型、操 当用户发出数据库操作请求时(包括操作类型、 作对象和操作用户等) 作对象和操作用户等)
存取控制(续)
• 常用存取控制方法
– 自主存取控制(Discretionary Access Control,简称 ) ,简称DAC) • 用户对于不同的数据库对象有不同的存取权限,不同 用户对于不同的数据库对象有不同的存取权限, 的用户对同一对象也有不同的权限, 的用户对同一对象也有不同的权限,而且用户还可将 其拥有的存取权限转授给其他用户 – 强制存取控制(Mandatory Access Control,简称 MAC) , ) • 每个数据库对象被标以一个密级,每一个用户也被授 对于任意一个对象, 予某一个级别的许可证。对于任意一个对象,只有具 有合法许可证的用户才可以存取
违规访问或者可疑行为
数据加密
• 数据加密是防止数据库中数据在存储和传输中失 密的有效手段
– 加密的基本思想是根据一定的算法将原始数据变换为
不可直接识别的格式,从而使得不知道解密算法的人
无法获知数据的内容
存取控制
• 确保只授权给有资格的用户访问数据库的权限, 确保只授权给有资格的用户访问数据库的权限, 同时令所有未被授权的人员无法接近数据 • 存取控制机制
– 所有信息泄漏事件中,源自内部人员所为的占了绝大部 所有信息泄漏事件中, 分。根据FBI和CSI对484家公司进行的网络安全专项调查 根据 和 对 家公司进行的网络安全专项调查 结果显示: 结果显示:超过85%的安全威胁来自公司内部,在损失金 额上,由于内部人员泄密导致了 万美元的损失, 额上,由于内部人员泄密导致了6056.5万美元的损失,是 万美元的损失 黑客造成损失的16倍 是病毒造成损失的 倍 黑客造成损失的 倍,是病毒造成损失的12倍 – 数据库审计产品:通过网络连接到重要业务系统(服务 数据库审计产品:通过网络连接到重要业务系统( 器、数据库、业务中间件、数据文件等)的数据流进行 数据库、业务中间件、数据文件等) 采集、分析和识别, 采集、分析和识别,实时监视用户访问业务系统的状态 ,记录各种访问行为,发现并及时制止用户的误操作、 记录各种访问行为,发现并及时制止用户的误操作、

数据库原理及应用第四章 数据库安全性


AnIntroduction to Database 计算机系统的三Sy类s安te全m性问题(续)
·计算机安全不仅涉及计算机系统本身的技术问题、 管理问题,还涉及到法学、犯罪学、心理学的问 题。其中包括了计算机安全理论与策略、计算机 安全技术、安全管理、安全评价、安全产品以及 计算机犯罪与侦察、安全监察等。
1. 计算机系统的三类安全性问题 2. 安全标准简介
AnIntroduction to Database 计算机系统S的y三ste类m安全性问题
· 计算机系统安全性 · 为计算机系统建立和采取的各种安全保护措施, 以保护计算机系统中的硬件、软件及数据,防止 其因偶然或恶意的原因使系统遭到破坏,数据遭 到更改或泄露等。
·B3级 · 安全域。 ·该级的TCB必须满足访问监控器的要求,审计 跟踪能力更强,并提供系统恢复过程。
TACnSIEnCt/rToDdIu安cS全tyios级tnem别to划D分at(ab续as)e
·A1级 · 验证设计,即提供B3级保护的同时给出系统的 形式化设计说明和验证以确信各安全保护真正 实现。
· 典型例子 • 操作系统 –只有Trusted Information Systems公司的 Trusted XENIX一种产品 • 标准的网络产品 –只有Cryptek Secure Communications公司的 LLC VSLAN一种产品 • 数据库 – 没有符合B2标准的产品
TACnSIEnCt/rToDdIu安cS全tyios级tnem别to划D分at(ab续as)e
· 典型例子 • 操作系统 –Microsoft的Windows 2000, –数字设备公司的Open VMS VAX 6.0和 6.1 • 数据库 –Oracle公司的Oracle 7 –Sybase公司的SQL Server 11.0.6

数据库 第4章 数据库安全性

数据库第4章数据库安全性在当今数字化的时代,数据库成为了各类组织和企业存储重要信息的核心所在。

然而,随着数据的价值不断提升,数据库安全性问题也日益凸显。

这就使得我们必须深入探讨数据库安全性这一关键课题,尤其是在其第 4 章所涵盖的重要内容。

首先,让我们来理解一下什么是数据库安全性。

简单来说,数据库安全性指的是保护数据库中的数据不被未授权的访问、修改、删除或泄露。

这包括了对数据本身的保护,以及对数据库系统的访问控制和管理。

在第 4 章中,一个关键的方面是用户身份认证和授权。

用户身份认证就像是进入一个房间的钥匙,只有证明你是合法的用户,才能获得进入数据库的资格。

这通常通过用户名和密码的组合来实现,但也可能包括更复杂的认证方式,如指纹识别、令牌认证等。

而授权则决定了用户在进入数据库后能够执行的操作。

比如,有些用户可能只能读取数据,而有些用户则可以修改甚至删除数据。

通过精细的授权管理,可以确保每个用户都只能在其被允许的范围内操作数据,从而降低数据被误操作或恶意篡改的风险。

数据加密也是这一章的重要内容。

想象一下,数据就像是珍贵的宝藏,加密则是给这些宝藏加上了一层坚固的锁。

即使数据被窃取,没有正确的解密密钥,窃取者也无法理解其中的内容。

加密可以在数据存储时进行,也可以在数据传输过程中进行。

对于敏感信息,如用户的个人身份信息、财务数据等,加密是必不可少的安全措施。

访问控制策略是数据库安全性的基石之一。

这包括定义谁可以访问数据库、在什么时间访问、从哪里访问等规则。

例如,可以限制特定的 IP 地址范围访问数据库,或者只允许在工作时间内进行访问。

访问控制还可以基于角色来设置,比如管理员角色、普通用户角色等,每个角色都有其特定的权限。

数据库审计也是保障安全性的重要手段。

它就像是一个监控摄像头,记录下数据库中的所有活动。

通过审计日志,可以追踪到谁在什么时候进行了什么操作。

这对于发现异常活动、调查安全事件以及满足合规性要求都非常重要。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– – – – – Table, View Sequence synonym Stored procedures/functions packages
数据库系统概论讲义,第8章 编程SQL,2014,2

Object Privileges (2)
• The set of object privileages
数据库系统概论讲义,第8章 编程SQL,2014,2
数据库安全性控制
4.2.1 用户标识与鉴别 4.2.2 存取控制 4.2.3 自主存取控制方法 4.2.4 授权与回收 4.2.5 数据库角色 4.2.6 强制存取控制方法
数据库系统概论讲义,第8章 编程SQL,2014,2
数据库安全性控制
• 计算机系统中的安全模型
数据库系统概论讲义,第8章 编程SQL,2014,2
GRANT(5)
(4) Allow all user to update the Age and GPA attributes. grant update (Age, GPA) on Students to public (5) Allow user john to create a foreign key to reference the SSN attribute. grant references (SSN) on Students to john
数据库系统概论讲义,第8章 编程SQs (1)
• When creating a new account, the DBA uses: SQL> create user userid identified by password; • Now the DBA grants a number of system privileges to the user. SQL> grant privilege1, privilege2, … to userid; • Some Oracle system privileges for a typical user:
安全性控制层次

应用 DBMS
低 OS 操作系统 安全保护 DB 密码存储
方法: 用户标识 和鉴定
存取控制
数据库系统概论讲义,第8章 编程SQL,2014,2
用户标识与鉴别
• 用户标识与鉴别(Identification & Authentication)
– 系统提供的最外层安全保护措施
• 基本方法
• 授权与回收
– SQL命令:GRANTE,REVOKE
数据库系统概论讲义,第8章 编程SQL,2014,2
自主存取控制方法(续)
– 定义存取权限 GRANT
• 即定义一个用户可以在哪些数据对象上进行哪些类 型的操作 • 在数据库系统中,定义存取权限称为授权 (Authorization) • 授权定义经过编译后存放在数据字典中
– 回收存取权限REVOKE
• 将所定义的权限撤销
数据库系统概论讲义,第8章 编程SQL,2014,2
GRANT
The syntax of the grant statement: grant {all | privilege {, privilege} } on object_name [column_name {, column_name …}] to {public | user_name {, user_name} } [with grant option] • When “with grant option” is specified, the user can grant the privileges he/she received to other users.
– System privileges are granted by the DBA.
2. Object privileges: control how objects within a schema can be accessed/manipulated.
– Object privileges are granted by schema owner.
Syntax: revoke {all | privilege {, privilege ...} } on table_name | view_name from {public | user_name {, user_name ...}} • Owner's privileges can not be revoked. Examples: Revoke all privileges on Students from user John. revoke all on Students from john
数据库系统概论讲义,第8章 编程SQL,2014,2
Two types of privileges
Two types of privileges: 1. System privileges: control what operations (create, drop, etc.) a user may perform within a database.
数据库系统概论讲义,第8章 编程SQL,2014,2
Authorization Graph(1)
The passing of authorization from one user to another can be represented by authorization graph. The root of the graph is the DBA.
– select, drop: can access/drop table, view, sequence – alter: can alter table and sequence definition – delete, insert: allow deletion/insertion of tuples – update [column_name {, column_name …} ] – references [column_name {, column_name …} ] For both update and references: allow specified columns to be updated or referenced, or have index created. – execute: allow stored procedures/functions/packages be executed.
第四章 数据库安全性
4.1 计算机安全性概论 4.2 数据库安全性控制 4.3 视图机制 4.4 审计 4.5 数据加密 4.6 统计数据库安全性
数据库系统概论讲义,第8章 编程SQL,2014,2
数据库安全性
• 什么是数据库的安全性 – 数据库的安全性是指保护数据库,防止因用户 非法使用数据库造成数据泄露、更改或破坏。 • 数据的保密 – 数据保密是指用户合法地访问到机密数据后能 否对这些数据保密。 – 通过制订法律道德准则和政策法规来保证。
– create session: allow user to connect to a database – create table: allow user to create tables – drop table: allow user to drop tables
数据库系统概论讲义,第8章 编程SQL,2014,2
U1 DBA U2 U3 U4 U5
Suppose the DBA revokes the authorization from U1, what will happen?
数据库系统概论讲义,第8章 编程SQL,2014,2
Authorization Graph(2)
A pair of devious users might attempt to defeat the rules for revocation of authorization by granting authorization to each other.
– 用户对于不同的数据对象有不同的存取权限 – 不同的用户对同一对象也有不同的权限 – 用户还可将其拥有的存取权限转授给其他用户
• 数据库对象与权限
– 数据对象:基本表,视图,索引,属性列 – 权限:CREATE, SELECT, INSERT, UPDATE, DELETE, REFERENCES, ALL
Example: SQL> grant create session, create table to meng;
数据库系统概论讲义,第8章 编程SQL,2014,2
Object Privileges (1)
• The owner of a schema automatically has all object privileges on all objects in his/her schema and these privileges cannot be revoked. Schema objects include:
System Privileges (2)
• Some Oracle system privileges for DBA uses:
– create user: allow new user accounts to be created – create any table: can create table in any user’s schema – grant any privilege: can grant system privileges to users
数据库系统概论讲义,第8章 编程SQL,2014,2
存取控制
• 存取控制机制的功能 – 定义存取权限
相关文档
最新文档