2022年Oracle数据库安全综述.docx
《2022年Oracle数据库安全综述.docx》由会员分享,可在线阅读,更多相关《2022年Oracle数据库安全综述.docx(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Oracl e 数据库安全综述邓明翥 2007061035摘要信息时代,数据安全性与日俱增;对于企业数据库来说;安全性与系统性能同样重要一旦数据丢失或者非法用户侵入,对于任何一个应用系统来说都是致命的问题提高 Oracle 数据库安全性就要做好安全治理工作文章从Oracle 入手从安全机制和安全策略两个角度分析其安全,并给出一些安全治理操作的具体方法,最终通过对比给出其安全策略的优点;1 数据库系统简介1.1 背景介绍随着网络技术的飞速进展;网络安全问题日渐突出;数据库技术自20 世纪 60岁月产生至今,也已得到了快速的进展和广泛应用,数据库中由于数据大量集中存放,且为众多用户直接共享,安全性
2、问题尤为突出;数据库是依据数据结构来组织、储备和治理数据的仓库,它产生于距今五十年前;经过几十年的进展,数据库技术在理论上得到不断完善的同时,也广泛地投入到财务、训练、电子政务、金融等领域中得到大规模的应用;目 前,市场上不仅有能满意个人用户需要的桌面小型数据库治理系统,也有能供应大规模数据治理功能、应用在网络环境的大中型数据库治理系统;1.2 数据库系统产品简介随着大规模数据组织和治理日益引起人们的关注,数据库系统显现出越来越大的市场价值,很多公司都推出了各具特色的数据库治理系统;下面对在市场上占据主流、具有肯定代表意义的两款数据库系统做简要介绍;1.2.1 SQL Server 简介SQL
3、 Server是由 Microsoft 公司开发和推广的关系数据库治理系统;它最初是由Microsoft 、Sybase、Ashton-Tate 三家公司共同开发的,并于1988 年推出了第一个 OS/2 版本;由于 Microsoft 公司强大的开发才能和市场影响力,自1988 年起,不断有新版本SQL Server 推出并快速占据中小型数据库市场;依据来自BZ Research2007年数据库整合和统计报告的数据, SQL Server的市场占有率为74.7%,高居第一;其中, SQL Server2000 的用户群最为巨大, SQL Server2021 是最新版本;本文所提及的 SQL
4、 Server,如未特殊指出,都指的是 SQL Server2000;SQL Server 具有典型的 C/S 结构;使用图形化用户界面,使系统治理和数据库治理更加直观、简介;同时,仍供应了丰富的编程接口工具,为用户进行程序设计供应了更大的挑选余地;由于 SQL Server 与 Windows NT 完整集成, 利用了 NT 的很多功能,使得配置爱护比较简洁;在 Windows 安全机制的基础上,实现了自身的安全治理,有着较良好的安全性;1.2.2 Oracle Database 简介Oracle Database,又名 Oracle RDBMS ,或简称 Oracle,是甲骨文公司的一款大
5、型关系数据库治理系统;Oracle 是大型数据库系统的典型代表;由于其采纳了特殊的资源治理和索引技术,得以在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上就可以支持成百上千个用户;Oracle 供应了基于角色( ROLE )分工的安全治理;在数据库治理功能、完整性检查、安全性、一样性等方面都有良好的表现;同时,供应了与第三代高级语言的借口软件PRO*系列,能在 C、C+等语言中嵌入 SQL 语句以及过程化( PL/SQL)语句,对数据库中的数据进行操纵,加上它具有很多优秀的开发工具如POWER BUILD 、SQL *FORMS , 易于移植,因此在很多大型商务系统中得到使用
6、;2 数据库系统安全概述数据库系统安全是指为数据库系统建立的安全爱护措施,以爱护数据库系统软件和其中的数据不因偶然和恶意的缘由而遭到破坏、更换和泄漏;本章将针对数据库系统的安全评估标准、数据库系统的安全需求数据库系统的安全机制绽开阐述;2.1 安全威逼当前对数据库的主要安全威逼有物理威逼和规律威逼:物理威逼主要是像各种外力,如: 911 恐惧大事,火灾等造成的数据库服务器故障或数据库中储备介质的损坏造成的数据丢失;规律威逼主要是指对信息的未授权存取, 如:恶意用户侵入某银行数据库系统窃取信用卡数据信息;2.2 数据库安全技术目前对数据库安全物理威逼的主要解决方案包括数据备份复原、数据导入导出、
7、数据库的灾难复原,运算机的集群和磁盘阵列等技术,在此本文不进 行争论;本文以 Oracle 数据库为例阐述对规律威逼的主要解决方法,包括身份认证、存取掌握、网络加密、数据加密、审计等技术;2.3 数据库系统的安全评估标准20 世纪 80 岁月,美国国防部依据军用运算机系统的安全需要,制订了可信运算机系统安全评估标准(Trusted Secure System Evaluation Criteria , 简称TCSEC ) 以 及 该 标 准 的 可 信 数 据 库 系 统 的 解 释 ( Trusted Database Interpretation,简称 TDI ),形成了最早的信息安全及数
8、据库安全评估体系;TCSEC/TD1 将系统安全性分为 4 组 7 个等级,分别是 D(最小爱护)、 C1(自主安全爱护)、 C2(受控存取爱护)、 B1(标记安全爱护)、 B2 (结构化爱护)、 B3(安全域)、 A1(验证设计),按系统牢靠或可信程度依次增高;90 岁月后期,信息技术安全评判通用准就(Common Criteria ,简称CC)被 ISO 接受为国际标准,确立了现代信息安全标准的框架;这些标准指导了安全数据库系统的争论和开发安全数据库及其应用系统争论;我国从 80 岁月开头进行数据库技术的争论和开发,从90 岁月初开头进行安全数据库理论的争论和实际系统的研制;2001 年,
9、军队制订了军用数据库安全评估标准 ;2002 年,公安部发布了公安部行业标准GA/T 389-2002:运算机信息系统安全等级爱护 /数据库治理系统技术要求;依据2004 年底的统计,极大国外数据库治理系统在国内市场的占有率达到95%,国产数据库的总市场容量大约为3.5%,其它开源产品大约占1.5%;国外的数据库产品不供应源程序代码,也很少有可供公开调用的内核接口,这些都加大了自主安全爱护的技术难度;加之发达国家限制C2 级以上安全级别的信息技术与产品对我国的出口,争论开发数据库安全技术具有重要的现实意义;2.4 数据库系统的安全需求与其他运算机系统的安全需求相类似,数据库系统的安全需求可以归
10、纳为完整性、保密性和可用性三个方面;数据库的完整性主要包括物理完整性和规律完整性;物理完整性主要包括物理完整性和规律完整性;物理完整性是指保证数据库的数据不受物理故障, 如硬件故障、掉电的影响,并有可能在灾难毁坏时重建和复原数据库;规律完整性是指对数据库规律结构的爱护,包括数据的语义完整性和操作完整性;前者主要指数据存取在规律上满意完整性约束,后者主要指在并发事务中保证数据的规律一样性;数据库的保密性指不答应未经授权的用户存取数据;数据库的可用性就是指不应拒绝授权用户对数据库的正常操作,同时保证系统的运行效率并供应用户友好的人机交互;一般而言,数据库的保密性和可用性是一对冲突;对这一冲突的分析
11、与解决构成了数据库系统的安全模型和一系列安全机制的主要目标;2.5 数据库系统的安全模型数据库系统的安全模型是用于精确描述数据库系统的安全需求和安全策略的有效方式;从 20 世纪 70 岁月开头,一系列数据库安全模型和原型得到争论;80 岁月末开头,争论的重点集中于如何在数据库系统中实现多级安全,即如何将传统的关系数据库理论与多级安全模型结合,建立多级安全数据库系统;到目前为止,先后提出的基于多级关系模型的数据路多级安全模型主要有BLP 模型、Biba 模型、 SeaView模型和 JS模型等;依据存取掌握策略、授权治理模式的不同,可以将安全模型分为三类,即自主拜访掌握模型( DAC )、强制
12、拜访掌握模型( MAC )和基于角色的拜访掌握( RBAC);DAC 模型是基于用户身份的拜访和掌握;在DAC 模型中,对资源对象的“拥有”是用户最核心的权限属性,每个用户都要被安排肯定的权限;DAC 模型可对用户供应敏捷的拜访掌握,但安全性较低,很简洁遭受类似特洛伊木马的攻击;MAC 模型通过无法回避的存取限制来防止各种直接或间接地攻击;在强制拜访掌握之下,系统给主体和客体安排了不同的安全属性,系统通过对主题和客体的安全属性进行匹配比较打算是否答应拜访连续进行;RBAC 模型供应明白决具有大量用户、数据库客体和拜访权限系统中的授权治理问题;在 RBAC 中,将权限赐予不同的角色;用户在不同的
13、会话中,激活不同的角色,从而可以获得不同的权限;RBAC 在不同的配置下可显示出不同的掌握功能,既可以构造出 MAC 系统,也可以构造出DAC 系统,因此比较敏捷,易于配置治理;关于上述三种模型的具体机制,在此不具体阐述,请参阅相关文献;3 Oracle 的安全策略3.1 系统安全性策略系统安全策略的定义 1 为:系统安全策略是数据库系统为达到安全目标和相应的安全级别所定义的安全技术、方法、机制的总和;DBMS 将系统安全策略体现在其软件之中,最终由 DBA 赐予实现,主要表达在安全治理; Oracle9i 的系统安全策略主要功能如下:(1) )系统与数据的安全性策略数据库用户治理( DBU
14、;数据库主要是由 DBU 拜访的; DBA 可授权 DBU 应用 Create、Alter 、Drop 语句对数据库对象的操作权限,用户身份验证;数据库用户可以通过操作系统、网络服务、 数据库或者安全套接字层SSL 进行身份确认;(2) )操作系统( OS) 安全性由于 Oracle 数据库和应用程序是运行在网络操作系统(NOS)之上,然后进行安全认证的;所以前两者的安全性需要与操作系统安全一同考虑;DBA 必需具有对 NOS 的文件进行 Create和 Delete 的权限而数据库用户却不具有;假如操作系统为数据库用户安排角色,就 DBA 必需有修改操作系统账户安全区域的操作系统权限;3.1
15、.1 用户验证Oracle 采纳数据库验证、外部验证和企业验证三种用户验证方式;3.1.1.1 数据库验证当创建用户和指定口令时,便使用数据库验证,同时具有了口令治理才能;Oracle 通过在一个概要文件中设置参数并把该文件安排给一个用户的方式来实现的;一个概要文件可以限制会话的数量、每个会话使用的CPU 时间、调用次数、读的次数、闲暇时间以及连接时间;概要文件可以防止破坏者利用全部的资源以拒绝服务的攻击方式破坏系统;3.1.1.2 外部验证外部验证是指在Oracle 之外的验证,即网络操作系统(NOS)和网络验证服务;使用外部验证后在 Oracle 就无需再验证;如选此项,就在init.or
16、a 文件设置相关参数通知 Oracle;使用 NOS 进行验证的优点是,用户更快更便利地连接数据库;对用户验证进行集中掌握;用户信息只有一份副本并储存在NOS 中, Oracle 中无需储存,当然两者用户应是相同的,同时审计信息只储存在NOS 中;网络验证服务属于高级安全技术;主要应用网络安全服务,例如Kerberos 或 PKI 等;3.1.1.3 企业验证企业验证应用于网络环境下的分布式数据库;分布式环境存在多个数据库服务器,它们组成资源的总和定义为全局资源;可以使用全局资源(任何一个数据库服务器)的用户定义为全局用户;企业验证是全局用户使用全局资源的验证,即 Oracle 安全服务( O
17、SS);由 Oracle 安全服务器完成;用安全信息和全局资源储备在网络( LAN/Intranet/Internet )的目录中,储备该目录的服务器称为目录服务器;通常使用轻量目录协议(LDAP )拜访该服务器,使用全局口令登录到 Oracle 分布式数据库的用户称为全局用户;可将全局用户的权限定义为不同的角色即全局角色;全局角色的全体组成企业角色;Oracle 安全服务器 OSS 实现全局用户的登录过程:1) 全局用户登录到 Oracle 分布式数据库系统中;2) OSS动态地将某个全局角色安排给该用户;3) 该全局角色所具有的权限即可拜访该权限的数据库服务器;换言之,系统中的多个数据库服
18、务器具有不同的权限,它们与全局角色存在对应(映射)关系;最简洁的是一对一映射,最复杂的是多对多映射;3.1.2 用户许可用户登录到一个数据库服务器到退出期间称为会话;Oracle 可通过设置来限制会话数量;会话数量的设置称为并发许可(协议);许可是并发使用的,由此许可指定的是并发用户的最大数量,即同时连接到数据库(服务器)的用户会话数量;通过命名用户的许可,可以限制可拜访一个数据库的命名用户数量;系统运行期间可以跟踪实际会话数量,也能转变并发会话的最大数量;当达到上限时, 只有 DBA能够连接到数据库;而对于一般用户,Oracle 会给他发送一条消息,显示到达最大数量的限制,同时将该消息写入到
19、警告文件 中;除此之外,仍可以设置并发会话的警告限制数量;在到达该值时,一般用户仍可以连续建立新的会话直到达到最大限制值;然后,Oracle 给每个连接的警告文件写一条消息,并且给一般用户发送一条快要达到最大限制的消息;通过命名用户许可,限制指定的数据库服务器上使用Oracle 的命名用户数量;使用这个许可就是在启动实例以前,设置在数据库可以创建的用户数量;当实例运行时,也可以转变这个最大值或完全停用这个限制;3.2 数据安全性策略主要包括在对象级掌握数据库拜访和使用的机制;主要有打算哪个用户拜访特定的模式对象,在对象上答应每个用户的特定类型操作,也可以定义审计每个模式对象的操作;为数据库建立
20、安全等级,例如,假如答应其他用户建立任何模式对象,或将对象的存取权限授予系统中的其他用户,这样的安全性是很差的;另外,当期望只有 DBA 有权限建立对象, 并向角色和用户授予对象的存取权限时,必需严格掌握数据库的安全;数据的重要性打算了数据和数据库的安全性;假如数据的重要性差,那么数据的安全性略差一些;反之,就应当有严格的安全性策略;用户来爱护对数据对象拜访的有效掌握;数据安全的实现方法主要有:用户账号、对象授 权、角色、细粒度存取掌握和相关应用程序上下文掌握;细粒度存取掌握最简单的情形是在 SQL 语句中加了一个 WHERE 条件, 用它来限制用户对表和视图里元组数据的存取;应用程序上下文是
21、一个安全数据缓冲,用来储备存取掌握打算的信息;3.3 用户安全性策略在 Oracle 数据库中, 将用户分为一般用户、最终用户、治理员(DBA )、应用程序员和应用程序治理员;由于一般用户和治理员具有相对的普遍性,在次只针对一般用户和治理员的安全性策略进行介绍;3.3.1 一般用户的安全性策略口令安全性;假如是通过数据库进行用户身份验证,就应当使用口令加密方式与数据库进行连接;当执行分布式查询时,会发生在两个Oracle 服务器之间建立连接;当试图连接到一个服务器时, Oracle 在将信息发送到服务器时对口令进行加密;假如连接失败且审计可用时,这个失败作为审计日志记录下来; Oracle 就
22、会用加密的信息重新连接;假如连接胜利,就将前面连接失败的审计记录信息掩盖;以防止恶意用户加密的口令强行重新连接;DBA 应当依据全部各类用户实行相关的权限治理,即应充分利用/角色/这个机制的便利性对权限进行有效治理;3.3.2 DBA 的安全性策略当系统规模较小时,只需一个DBA ,就系统安全治理员 SSA 也是 DBA ;当系统规模很大时,系统拥有多个DBA ,这时两者是分开的;安全治理员将相关治理权限分成几个组, 然后将不同的角色授予相应的DBA ;当创建数据库后,立刻更换有治理权限的sys 和 system 用户的口令,防止非法用户拜访数据库;当作为sys 和 system 用户连入数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 Oracle 数据库 安全 综述
限制150内