数据库安全详解(先理论后oracle举例)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1-37
用户管理
数据库管理员(DBA)
负责管理和维护数据库系统的正常运行,其主要
职责包括: (1)安装并升级Oracle服务器和应用工具。 (2)配置和管理数据库。 (3)设置权限和安全管理。
(4)监控并优化数据库性能。
(5)备份和恢复数据库。
1-38
用户管理
数据库开发人员
负责设计和开发数据库应用程序,其主要职责包括: (1) 设计应用的数据结构。 (2) 估算应用的存储需求。 (3) 给出应用数据库结构修改的说明。 (4) 开发过程中优化应用。 (5) 开发过程中构建应用的安全策略。 以上工作需要和DBA协作。
B1级
标记安全保护。对系统的数据加
以标记,并对标记的主体和客体实施强制存 取控制(MAC)以及审计等安全机制。B1级能 够较好地满足大型企业或一般政府部门对于
数据的安全需求,这一级别的产品才认为是
真正意义上的安全产品。满足此级别的产品 前一般多冠以“安全”(Security)或“可 信的”(Trusted)字样,作为区别于普通产 品的安全产品出售。
2. 存取控制
存取控制机制主要包括两部分: ① 定义用户权限,并将用户权限登记 到数据字典中。 在数据库系统中对存取权限的定义称 为授权(Authorization)。这些授权定 义经过编译后存放在数据字典中,被称作 “安全规则”或“授权规则”。
⑴ 用户分类 一般可对数据库的用户分为四类: 系统用户(或DBA) 数据对象的属主(Owner) 一般用户 公共用户(Public)
跟踪审计的记录一般包括下列内 容:请求(源文本),操作类型(例 如修改、查询等),操作终端标识与 操作者标识,操作日期和时间,操作 所涉及的对象(表、视图、记录、属 性等),数据的前映象和后映象。
跟踪审计由DBA控制,或由数据的 属主控制。
审计通常是很费时间和空间的, 所以DBMS往往都将其作为可选特征, 允许DBA根据应用对安全性的要求, 灵活地打开或关闭审计功能。审计功 能一般主要用于安全性要求较高的部 门。
B2级以上的系统标准更多地还处于理
论研究阶段,产品化以至商品化的程度都
不高,其应用也多限于一些特殊的部门,
如军队等。但美国正在大力发展安全产品,
试图将目前仅限于少数领域应用的B2级安
全级别或更高安全级别下放到商业应用中
来,并逐步成为新的商业标准。
4.2
数据库安全性控制
数据库的安全性:是指保护数据库 以防止不合法的使用,避免数据的泄密、 非法更改和破坏。 从数据库角度而言,安全性分成系 统安全性和自然环境安全性两类。
4.2.2 安全性控制的一般方法
1. 用户标识与鉴定 (Identification&Authentication)
这是DBS提供的最外层安全保护措 施。用户访问数据库之前,必须先标识 自己的名字或身份,由系统核实,通过 鉴定后才提供机器使用权。
一般,用户标识包括: 用户名(用户标识号) 口令 用户标识和鉴定可以重复多次 (Oracle允许三次登录)。 用户登录成功才是数据库的合法用 户,才能与数据库建立连接。
4.2.7 数据加密
把数据用密码形式存储在磁盘上。
为了更好地保证数据库的安全性, 用密码存储口令、数据,对远程用户 的信息用密码传输防止中途非法截获 等。
数据库中的数据以密码形式存放和传 输,使用时用户用自己掌握的密钥通过解 密程序把它解码为明文数据。这样,可以 保证只有掌握了密钥的用户才能访问数据, 而且即使数据被非法地从数据库中窃取, 或者在数据的传输过程中被截取,窃取者 也无法知道密码数据的含义。军事、情报、 银行等部门的重要敏感的数据库,可以采 用数据密码方法存储和传输数据,以确保 数据库的安全性。
4.3
统计数据库的安全性
统计数据库(Statistical Database)是一种以统计应用为主的数 据库,例如国家的人口统计数据库、经 济统计数据库等。它包含大量的记录, 但其目的却只是向用户提供统计、汇总 信息,而不是提供单个记录的内容。
Oracle的安全体系结构
数据的备份与恢复
为保证数据的完整性和一致性,防止因故障而导致的数据 破坏和灾难而采取的防范措施。
例4.1 允许一个用户查询学生记录,但只 允许他查询男生情况。 例4.2 允许一个用户查询学生记录,但不 允许他了解学生的籍贯。 例4.3 允许一个用户查询学生的平均成绩, 但不允许了解具体的各课程成绩。
4.2.6 审计
功能:把用户对数据库的所有操 作自动记录下来放入审计日志(Audit Log)中。DBA可以利用审计跟踪的信 息,重现导致数据库现有状况的一系 列事件,找出非法存取数据库数据的 人、时间和内容等。
普通用户
普通用户指的是执行与数据库相关的日常操作的工作人员。
1-39
通过创建、修改、删除和监视用户来控制用户对于ORACLE数据 库的存取。
New Users
Database Administrator
Username/Password Access Privilege Quotas
ORACLE
控制用户对数据库的存取: 1.创建合法的用户名和口令。 2.授权用户可以连接到数据库上。 3.限定每个用户使用磁盘空间的大小。
审计功能是DBMS达到C2级以上安 全措施必不可少的一项指标。
审计有两方面的作用:
① 可以用来记录所有数据库用户 登录及退出数据库的时间,作为记帐 收费或统计管理;
② 可以用来监视对数据库的一些 特定的访问,及任何对敏感数据的存 取情况。
需要说明的是:审计只记录对数 据库的访问活动,并不记录具体的更 新、插入或删除掉的信息内容,这与 日志文件是有区别的。
用户身份、身份验证和防止数据泄露及篡改
数据库内部管理:用户标识/口令、角色与权限等; 资源管理:通过系统概要文件限制连接会话等; 网络数据通信管理:采用口令文件、数据加密等高级安全 技术;
1-36
用户管理
用户类别
在数据库系统中,根据工作性质和特点,用户可分成 三类:数据库管理员(DBA)、数据库开发人员和普通用户。 不同类型的用户分别赋予不同的权限,从而保证数据 库系统的安全。
数据加密的方法基本上有三种:信息编码、 信息置换和信息替换。常用的数据密码方法有: 美国国家数据加密标准DES(Data Encryption Standard),公开密钥系统等。 公开密钥系统(Public-Key System) 采用密码数据库,在存入数据时要加密, 在查询时要解密,增加了系统的开销,降低了 数据库的效率。因此,数据密码法只适合于那 些对数据保密要求特别高的数据库。
1-40
Oracle用户类型
创建一个新的数据库 启动和关闭数据库
超级用户
修改数据库运行模式 完成数据库的备份与恢复 修改数据库的结构
SYS
创建用户、权限管理等
数据库管理员
具有DBA角色的用户,可以执 行数据库内部的任意操作
数据库安全性
DBMS提供统一的数据管理和控制 功能,其中很重要的就是数据保护, 包括有数据的安全性和数据的完整性, 达到保证数据的安全可靠和正确有效 的目的。
4.1
计算机安全性概论
数据库的安全性和计算机系统的 安全性,包括操作系统、网络系统的 安全性是紧密联系、相互支持的。
4.1.1 计算机系统的三类安全性 问题
B2级 结构化保护。建立形式化的安全 策略模型并对系统内的所有主体和客体实施 DAC和MAC。 从互联网上的最新资料看,经过认证的、 B2级以上的安全系统非常稀少。例如,符合 B2标准的操作系统只有Trusted Information Systems公司的Trusted XENIX一种产品,符 合B2标准的网络产品只有Cryptek Secure Communications公司的LLC VSLAN一种产品, 而数据库方面则没有符合B2标准的产品。
B3级
安全域。该级的TCB必须满
足访问监控器的要求,审计跟踪能力
更强,并提供系统恢复过程。
A1级
验证设计,即提供B3级保
护的同时给出系统的形式化设计说明
和验证以确信各安全保护真正实现。
表4.2
不同安全级别对安全指标的支持情况
³Ô±±ÔÔÔ±ÔÔÔÔÔÔÔ°ÔÔÔ°ÔÔÔ Ô ê ê ÷è ê ó Ôè Ô è ÔÔÔÔÔ±ÔÔÔÔÔÔ±ÔÔÔÔÔÔÔÔÔÔ ÷ Ô Ô ÔÔÔÔÔ±ÔÔÔ ê ê ² Ô来自百度文库ÔÔÔÔÔÔ²ÔÔÔÔ ê è Ô è ÔÔÔÔÔÔÔÔÔ ÔÔÔÔÔÔ²ÔÔÔÔÔÔ Ôí Ô ÔÔÔ Ô± Ô ÔÔ²Ô á Ô Ô ÔÔ Ô Ô± ê Ô Ô ÔÔ í Ô é ÔÔ §á ÔÔ Ô ¤ Ô Ô C1 C2 B1 B2 B3 A1
跟踪审计(Audit Trail)是一种 监视措施。数据库在运行中,DBMS跟踪 用户对一些敏感性数据的存取活动,跟 踪的结果记录在跟踪审计记录文件中 (有许多DBMS的跟踪审计记录文件与系 统的运行日志合在一起)。一旦发现有 窃取数据的企图,有的DBMS会发出警报 信息,多数DBMS虽无警报功能,也可在 事后根据记录进行分析,从中发现危及 安全的行为,找出原因,追究责任,采 取防范措施。
C2级 实际是安全产品的最低档次,提 供受控的存取保护,即将C1级的DAC进一步 细化,以个人身份注册负责,并实施审计和 资源隔离。很多商业产品已得到该级别的认 证。达到C2级的产品在其名称中往往不突出 “安全”(Security)这一特色,如操作系 统中Microsoft的Windows NT 3.5,数字设 备公司的Open VMS VAX 6.0和6.1。数据库 产品有Oracle公司的Oracle 7,Sybase公司 的 SQL Server 11.0.6 等。
例如,操作系统方面,典型的有数 字设备公司的SEVMS VAX Version 6.0, 惠普公司的HP-UX BLS release 9.0.9+ 。 数据库方面则有Oracle公司的Trusted Oracle 7,Sybase公司的Secure SQL Server version 11.0.6,Informix公司 的Incorporated INFORMIX-OnLine / Secure 5.0等。
技术安全类
计算机系统 的安全性
管理安全类 政策法律类
4.1.2 可信计算机系统评测标准
以下着重介绍TDI/TCSEC标准的 基本内容。 TDI与TCSEC一样,从以下4个方 面来描述安全性级别划分的指标:安 全策略、责任、保证和文档。每个方 面又细分为若干项。这些指标的具体 内容如下:
根据计算机系统对上述各项指标
一个角色(Role)一般是指 一个机构内的一个称谓或一个任 务的集合。为了方便,可把用户 归属不同的角色,对不同的角色 有不同的授权。
⑵ 存取权限 用户使用数据库的方式称为权限。 权限分为如下两类: 访问数据权限 修改数据库模式权限
4.2.5 视图机制
为不同的用户定义不同的视图, 可以限制各个用户的访问范围。 通过视图机制把要保密的数据对 无权存取的用户隐藏起来,从而自动 地对数据提供一定程度的安全保护。
4.2.1 数据库的安全模型
在计算机系统中,安全措施是一 级一级层层设置的。计算机安全控制 模型如图4.1所示,DBMS安全模型如 图4.2所示。
用户
用户标识 和鉴定
DBMS
存取控制
OS
操作系统 安全保护
DB
密码存储
图4.1 计算机系统的安全模型
数据库安全性控制
登录
用户
权限
对象
角色 图4.2 DBMS安全模型
的支持情况,TCSEC(TDI)将系统划
分为4组(division),共7个等级,
依次是D;C(C1,C2);B(B1,B2,
B3);A(A1),按系统可靠或可信程
度逐渐增高,如表4.1所示。
表4.1
D级 D级是最低级别。保留D级的目的是 为了将一切不符合更高标准的系统,统统归于 D组。如DOS就是操作系统中安全标准为D的典 型例子。它具有操作系统的基本功能,如文件 系统和进程调度等,但在安全性方面几乎没有 专门的机制来保障。 C1级 只提供了非常初级的自主安全保护。 能够实现对用户和数据的分离,进行自主存取 控制(DAC),保护或限制用户权限的传播。 现有的商业系统往往稍作改进即可满足要求。
相关文档
最新文档