当前位置:文档之家› Oracle 数据库安全综述

Oracle 数据库安全综述

Oracle 数据库安全综述
Oracle 数据库安全综述

Oracl e 数据库安全综述

邓明翥 2007061035

摘要信息时代,数据安全性和日俱增。对于企业数据库来说。安全性和系统性能同样重要.一旦数据丢失或者非法用户侵入,对于任何一个使用系统来说都是致命的问题.提高Oracle数据库安全性就要做好安全管理工作.文章从Oracle 入手从安全机制和安全策略两个角度分析其安全,并给出一些安全管理操作的具体方法,最后通过对比给出其安全策略的优点。

1数据库系统简介

1.1背景介绍

随着网络技术的飞速发展。网络安全问题日渐突出。数据库技术自20世纪60年代产生至今,也已得到了快速的发展和广泛使用,数据库中由于数据大量集中存放,且为众多用户直接共享,安全性问题尤为突出。

数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。经过几十年的发展,数据库技术在理论上得到不断完善的同时,也广泛地投入到财务、教育、电子政务、金融等领域中得到大规模的使用。目前,市场上不仅有能满足个人用户需要的桌面小型数据库管理系统,也有能提供大规模数据管理功能、使用在网络环境的大中型数据库管理系统。

1.2数据库系统产品简介

随着大规模数据组织和管理日益引起人们的关注,数据库系统显现出越来越大的市场价值,许多公司都推出了各具特色的数据库管理系统。下面对在市场上占据主流、具有一定代表意义的两款数据库系统做简要介绍。

1.2.1SQL Server简介

SQL Server是由Microsoft公司开发和推广的关系数据库管理系统。它最初是由Microsoft、Sybase、Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。由于Microsoft公司强大的开发能力和市场影响力,自1988年起,不断有新版本SQL Server推出并迅速占领中小型数据库市场。根据来自BZ Research2007年数据库整合和统计报告的数据,SQL Server的市场占有率为74.7%,高居第一。其中,SQL Server2000的用户群最为庞大,SQL Server2008是最新版本。本文所提及的SQL Server,如未特别指出,都指的是SQL Server2000。

SQL Server具有典型的C/S结构。使用图形化用户界面,使系统管理和数据库管理更加直观、简介。同时,还提供了丰富的编程接口工具,为用户进行程序

设计提供了更大的选择余地。由于SQL Server和Windows NT完整集成,利用了NT的许多功能,使得配置维护比较简单;在Windows安全机制的基础上,实现了自身的安全管理,有着较良好的安全性。

1.2.2Oracle Database简介

Oracle Database,又名Oracle RDBMS,或简称Oracle,是甲骨文公司的一款大型关系数据库管理系统。

Oracle是大型数据库系统的典型代表。由于其采用了独特的资源管理和索引技术,得以在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上就可以支持成百上千个用户。Oracle提供了基于角色(ROLE)分工的安全管理。在数据库管理功能、完整性检查、安全性、一致性等方面都有良好的表现。同时,提供了和第三代高级语言的借口软件PRO*系列,能在C、C++等语言中嵌入SQL语句以及过程化(PL/SQL)语句,对数据库中的数据进行操纵,加上它具有许多优秀的开发工具如POWER BUILD、SQL *FORMS,易于移植,因此在许多大型商务系统中得到使用。

2数据库系统安全概述

数据库系统安全是指为数据库系统建立的安全保护措施,以保护数据库系统软件和其中的数据不因偶然和恶意的原因而遭到破坏、更改和泄漏。本章将针对数据库系统的安全评估标准、数据库系统的安全需求数据库系统的安全机制展开阐述。

2.1安全威胁

当前对数据库的主要安全威胁有物理威胁和逻辑威胁:①物理威胁主要是像各种外力,如:911恐怖事件,火灾等造成的数据库服务器故障或数据库中存储介质的损坏造成的数据丢失。②逻辑威胁主要是指对信息的未授权存取,如:恶意用户侵入某银行数据库系统窃取信用卡数据信息。

2.2数据库安全技术

目前对数据库安全物理威胁的主要解决方案包括数据备份/恢复、数据导入/导出、数据库的灾难恢复,计算机的集群和磁盘阵列等技术,在此本文不进行讨论。本文以Oracle数据库为例阐述对逻辑威胁的主要解决方法,包括身份认证、存取控制、网络加密、数据加密、审计等技术。

2.3数据库系统的安全评估标准

20世纪80年代,美国国防部根据军用计算机系统的安全需要,制订了《可信计算机系统安全评估标准》(Trusted Secure System Evaluation Criteria,简称TCSEC)以及该标准的可信数据库系统的解释(Trusted Database Interpretation,简称TDI),形成了最早的信息安全及数据库安全评估体系。TCSEC/TD1将系统安全性分为4组7个等级,分别是D(最小保护)、C1(自主安全保护)、C2(受控存取保护)、B1(标记安全保护)、B2(结构化保护)、B3(安全域)、A1(验证设计),按系统可靠或可信程度依次增高。

90年代后期,《信息技术安全评价通用准则》(Common Criteria,简称CC)被ISO接受为国际标准,确立了现代信息安全标准的框架。这些标准指导了安全数据库系统的研究和开发安全数据库及其使用系统研究。

我国从80年代开始进行数据库技术的研究和开发,从90年代初开始进行安全数据库理论的研究和实际系统的研制。2001年,军队制订了《军用数据库安全评估标准》;2002年,公安部发布了公安部行业标准——GA/T 389-2002:《计算机信息系统安全等级保护/数据库管理系统技术要求》。根据2004年底的统计,极大国外数据库管理系统在国内市场的占有率达到95%,国产数据库的总市场容量大约为3.5%,其它开源产品大约占1.5%。国外的数据库产品不提供源程序代码,也很少有可供公开调用的内核接口,这些都加大了自主安全保护的技术难度。加之发达国家限制C2级以上安全级别的信息技术和产品对我国的出口,研究开发数据库安全技术具有重要的现实意义。

2.4数据库系统的安全需求

和其他计算机系统的安全需求相类似,数据库系统的安全需求可以归纳为完整性、保密性和可用性三个方面。

数据库的完整性主要包括物理完整性和逻辑完整性。物理完整性主要包括物理完整性和逻辑完整性。物理完整性是指保证数据库的数据不受物理故障,如硬件故障、掉电的影响,并有可能在灾难毁坏时重建和恢复数据库。逻辑完整性是指对数据库逻辑结构的保护,包括数据的语义完整性和操作完整性。前者主要指数据存取在逻辑上满足完整性约束,后者主要指在并发事务中保证数据的逻辑一致性。数据库的保密性指不允许未经授权的用户存取数据;数据库的可用性则是指不应拒绝授权用户对数据库的正常操作,同时保证系统的运行效率并提供用户友好的人机交互。

一般而言,数据库的保密性和可用性是一对矛盾。对这一矛盾的分析和解决构成了数据库系统的安全模型和一系列安全机制的主要目标。

2.5数据库系统的安全模型

数据库系统的安全模型是用于精确描述数据库系统的安全需求和安全策略的有效方式。从20世纪70年代开始,一系列数据库安全模型和原型得到研究。80年代末开始,研究的重点集中于如何在数据库系统中实现多级安全,即如何

将传统的关系数据库理论和多级安全模型结合,建立多级安全数据库系统。到目前为止,先后提出的基于多级关系模型的数据路多级安全模型主要有BLP模型、Biba模型、SeaView模型和JS模型等。

依据存取控制策略、授权管理模式的不同,可以将安全模型分为三类,即自主访问控制模型(DAC)、强制访问控制模型(MAC)和基于角色的访问控制(RBAC)。

DAC模型是基于用户身份的访问和控制。在DAC模型中,对资源对象的“拥有”是用户最核心的权限属性,每个用户都要被分配一定的权限。DAC模型可对用户提供灵活的访问控制,但安全性较低,很容易遭受类似特洛伊木马的攻击。

MAC模型通过无法回避的存取限制来防止各种直接或间接地攻击。在强制访问控制之下,系统给主体和客体分配了不同的安全属性,系统通过对主题和客体的安全属性进行匹配比较决定是否允许访问继续进行。

RBAC模型提供了解决具有大量用户、数据库客体和访问权限系统中的授权管理问题。在RBAC中,将权限赋予不同的角色;用户在不同的会话中,激活不同的角色,从而可以获得不同的权限。RBAC在不同的配置下可显示出不同的控制功能,既可以构造出MAC系统,也可以构造出DAC系统,因此比较灵活,易于配置管理。

关于上述三种模型的具体机制,在此不详细阐述,请参阅相关文献。

3Oracle的安全策略

3.1系统安全性策略

系统安全策略的定义[1]为:系统安全策略是数据库系统为达到安全目标和相应的安全级别所定义的安全技术、方法、机制的总和。DBMS将系统安全策略体现在其软件之中,最后由DBA 给予实现,主要体现在安全管理。Oracle9i的系统安全策略主要功能如下:

(1)系统和数据的安全性策略

数据库用户管理(DBU)。数据库主要是由DBU访问的。DBA可授权DBU使用Create、Alter、Drop语句对数据库对象的操作权限,用户身份验证。数据库用户可以通过操作系统、网络服务、数据库或者安全套接字层SSL进行身份确认。

(2)操作系统(OS)安全性

由于Oracle数据库和使用程序是运行在网络操作系统(NOS)之上,然后进行安全认证的。所以前两者的安全性需要和操作系统安全一同考虑。DBA 必须具有对NOS 的文件进行Create和Delete的权限而数据库用户却不具有。如果操作系统为数据库用户分配角色,则DBA必须有修改操作系统账户安全区域的操作系统权限。

Oracle 采用数据库验证、外部验证和企业验证三种用户验证方式。

3.1.1.1数据库验证

当创建用户和指定口令时,便使用数据库验证,同时具有了口令管理能力。Oracle 通过在一个概要文件中设置参数并把该文件分配给一个用户的方式来实现的。一个概要文件可以限制会话的数量、每个会话使用的CPU时间、调用次数、读的次数、空闲时间以及连接时间。概要文件可以防止破坏者利用所有的资源以拒绝服务的攻击方式破坏系统。

3.1.1.2外部验证

外部验证是指在Oracle之外的验证,即网络操作系统(NOS)和网络验证服务。使用外部验证后在Oracle就无需再验证。若选此项,则在init.ora文件设置相关参数通知Oracle。使用NOS 进行验证的优点是,用户更快更方便地连接数据库;对用户验证进行集中控制;用户信息只有一份副本并保存在NOS中,Oracle中无需保存,当然两者用户应是相同的,同时审计信息只保存在NOS中。网络验证服务属于高级安全技术。主要使用网络安全服务,例如Kerberos或PKI 等。

3.1.1.3企业验证

企业验证使用于网络环境下的分布式数据库。分布式环境存在多个数据库服务器,它们组成资源的总和定义为全局资源。可以使用全局资源(任何一个数据库服务器)的用户定义为全局用户。企业验证是全局用户使用全局资源的验证,即Oracle 安全服务(OSS)。由Oracle 安全服务器完成。用安全信息和全局资源存储在网络(LAN/Intranet/Internet)的目录中,存储该目录的服务器称为目录服务器。通常使用轻量目录协议(LDAP)访问该服务器,使用全局口令登录到Oracle 分布式数据库的用户称为全局用户。可将全局用户的权限定义为不同的角色即全局角色。全局角色的全体组成企业角色。

Oracle 安全服务器OSS 实现全局用户的登录过程:

1)全局用户登录到Oracle分布式数据库系统中;

2)OSS动态地将某个全局角色分配给该用户;

3)该全局角色所具有的权限即可访问该权限的数据库服务器。

换言之,系统中的多个数据库服务器具有不同的权限,它们和全局角色存在对应(映射)关系。最简单的是一对一映射,最复杂的是多对多映射。

用户登录到一个数据库服务器到退出期间称为会话。Oracle可通过设置来限制会话数量。会话数量的设置称为并发许可(协议)。许可是并发使用的,由此许可指定的是并发用户的最大数量,即同时连接到数据库(服务器)的用户会话数量。通过命名用户的许可,可以限制可访问一个数据库的命名用户数量。

系统运行期间可以跟踪实际会话数量,也能改变并发会话的最大数量。当达到上限时,只有DBA能够连接到数据库。而对于一般用户,Oracle会给他发送一条消息,显示到达最大数量的限制,同时将该消息写入到警告文件中。除此之外,还可以设置并发会话的警告限制数量。在到达该值时,一般用户还可以继续建立新的会话直到达到最大限制值。然后,Oracle给每个连接的警告文件写一条消息,并且给一般用户发送一条快要达到最大限制的消息。

通过命名用户许可,限制指定的数据库服务器上使用Oracle的命名用户数量。使用这个许可就是在启动实例以前,设置在数据库可以创建的用户数量。当实例运行时,也可以改变这个最大值或完全停用这个限制。

3.2数据安全性策略

主要包括在对象级控制数据库访问和使用的机制。主要有决定哪个用户访问特定的模式对象,在对象上允许每个用户的特定类型操作,也可以定义审计每个模式对象的操作。为数据库建立安全等级,例如,如果允许其他用户建立任何模式对象,或将对象的存取权限授予系统中的其他用户,这样的安全性是很差的。另外,当希望只有DBA 有权限建立对象,并向角色和用户授予对象的存取权限时,必须严格控制数据库的安全。

数据的重要性决定了数据和数据库的安全性。如果数据的重要性差,那么数据的安全性略差一些。反之,就应该有严格的安全性策略。用户来维护对数据对象访问的有效控制。数据安全的实现方法主要有:用户账号、对象授权、角色、细粒度存取控制和相关使用程序上下文控制。细粒度存取控制最简单的情况是在SQL语句中加了一个WHERE条件,用它来限制用户对表和视图里元组数据的存取。使用程序上下文是一个安全数据缓冲,用来存储存取控制决定的信息。

3.3用户安全性策略

在Oracle数据库中,将用户分为一般用户、最终用户、管理员(DBA)、使用程序员和使用程序管理员。

由于一般用户和管理员具有相对的普遍性,在次只针对一般用户和管理员的安全性策略进行介绍。

3.3.1一般用户的安全性策略

口令安全性。如果是通过数据库进行用户身份验证,就应该使用口令加密方

式和数据库进行连接。当执行分布式查询时,会发生在两个Oracle服务器之间建立连接。

当试图连接到一个服务器时,Oracle在将信息发送到服务器时对口令进行加密。如果连接失败且审计可用时,这个失败作为审计日志记录下来。Oracle 就会用加密的信息重新连接。如果连接成功,就将前面连接失败的审计记录信息覆盖。以防止恶意用户加密的口令强行重新连接。

DBA应该根据所有各类用户实行相关的权限管理,即应充分利用/角色/这个机制的方便性对权限进行有效管理。

3.3.2DBA的安全性策略

当系统规模较小时,只需一个DBA,则系统安全管理员SSA也是DBA。当系统规模很大时,系统拥有多个DBA,这时两者是分开的。安全管理员将相关管理权限分成几个组,然后将不同的角色授予相应的DBA。

当创建数据库后,立即更改有管理权限的sys和system 用户的口令,防止非法用户访问数据库。当作为sys和system用户连入数据库后,用户有强大的权限用各种方式对数据库进行改动。

只有DBA能用管理权限连入数据库,并保证只有DBA 能作SYSDBA角色的成员,因为SYSDBA可以没有任何限制地操作和恢复数据库及数据库对象。4Oracle提供的安全机制

数据库的安全性可以分为两类,即数据库系统安全性和数据库数据安全性[2].4.1系统安全性层面

系统安全性是指在系统级控制数据库的存取和使用的机制。包括:①用户名/口令的组合是否有效;②用户是否具有连接数据库的授权;③用户可以执行哪些操作;④用户可用的磁盘空间的数量:⑤用户的资源限制;⑥数据库审计是否有效。

4.1.1数据备份

Oracle提供了比较完备的数据备份技术。具体请参见Oracle9i使用手册。

4.1.2身份认证

在网络环境下多用户系统中,身份认证是安全机制中重要环节。身份认证包括标识和验证,标识是指用户向系统出示自己的身份证明,常用的方法是输入用户名和口令;验证则是系统验证用户的身份证明。Oracle允许不同类型的验证,

以Oracle数据库为基础的验证允许拥有用户账户ID和密码,密码以加密的格式存储在数据字典中。Oracle也支持基于主机操作系统的用户账号转为Oracle账户的验证。此外,Oracle高级安全选件还提供更加安全的验证方法[3],如:NTS、KERBEROSS、RADIUS等验证方式。

4.1.3存取控制

数据库的存取控制机制是定义和控制用户对数据库数据的存取访问权限,以确保只授权给有资格的用户访问数据库的权限并防止和杜绝对数据库中数据的非授权访问。数据库管理系统需要对精细的数据粒度加以控制,数据库中的粒度有记录、表格、属性、字段和值等。Oracle可利用权限、角色、概要文件、细粒度访问等技术提供存取控制支持。

4.1.3.1权限

默认情况下新的Oracle用户不具备任何权限。新用户在登录数据库以及运行数据库操作前必须被授予权限。Oracle数据库包含系统权限和对象权限。系统权限允许用户建立和使用对象,但不授权访问真正的数据库对象。系统权限允许用户运行如:ALTER TABLE,CREATE TABLE等权限。对象权限被用来允许访问特殊的数据库对象,如表或视图。Oracle允许对象的拥有者将他们拥有的针对这些对象的权限授予其他用户或角色。

4.1.3.2角色

角色是用来简化用户权限分派的管理任务,用户可以被指派多个角色。将权限组织到角色中后再利用角色对一个或多个用户授权使授权管理变得更加容易。Oracle拥有一些特定权限的默认角色。如:Connect角色允许用户登录和建立自己的表、索引等;Resource角色允许用户建立触发器和存储过程等对象。数据库管理员DBA角色被授予所有管理数据库和用户的系统权限。用户为方便管理可以建立自定义的角色。

4.1.3.3概要文件

Oracle利用概要文件来允许管理员针对一些系统资源,密码的利用。这些概要文件可以被定义、命名、然后指派给特定的用户或用户组。概要文件可以用来设置用户在特定的系统资源上的限制,如CPU时间、同时建立的有效会话数、特定用户建立会话的最大时间等。此外,概要文件也可以用来强制定义密码规则,如密码有效期、密码格式、在若干次登录失败尝试后锁定账户,也可以利用自定义密码格式规则函数来限制密码的设置规则。

4.1.3.4细粒度访问

Oracle提供了细粒度访问控制机制Oracle Label Security[5],可实施对单个表或整个模式上的行级访问控制。要利用Oracle Label Security,需要创建一个或多个安全策略,其中每一个安全策略都包含一组标签。标签用来标明哪些用户能够访问什么类型数据。在创建了一个策略之后,将该策略使用于需要保护的表,并将这些标签授予用户。当Oracle数据库在分析SQL语句时会检测表是否受到某个安全策略的保护,根据用户的访问权限数据库向该SQL。语句的WHERE子句中添加安全性谓词。所有这些都发生在Oracle数据库引擎的内部。所以不管该SQL。语句的来源如何,用户都不可能绕过该安全性机制,从而达到行级安全的访问控制。

4.1.4审计

任何的数据库系统都不可能是绝对安全的,可以利用Oracle数据库系统的审计功能,监视和记录所选择用户的活动情况,数据库的审计记录存放在SYS方案的AUD$表中。开启审计功能后会影响一些数据库的性能,在初始状态Oracle 对审计功能是关闭的。要开启审计功能,可在初始化参数中将参数“AUDIT—TRAII。”值设置为“DB或TRUE”。Oracle支持三种类型的审计:语句审计、权限审计和方案对象审计。语句审计是针对DDL、DML语句的审计,如“AUDIT TABI。E”的语句审计对所有的CREATE和DROP TABLE语句都进行审计;权限审计是对系统权限的审计,如只针对“CREATETABLE”的权限审计,则只审计CREATE TABLE语句;方案对象审计是针对特定的DMI。语句和特定方案对象的GRANT、REVOKE语句的审计。

从Oracle9i后支持细粒度审计,可以用于监视基于内容的数据访问。此外,也可利用数据库提供的触发器功能进行编程自定义审计方案,如可以用触发器编写登录,注销以及其他数据库事件的Oracle审计信息。

4.2数据安全性层面

在多用户数据库系统中,数据安全性包括:①防止非授权用户对数据进行存取操作:②防止非授权用户对模式对象的存取操作;⑨控制系统资源的使用;④控制磁盘的使用;⑤审计用户的操作.

4.2.1数据加密

一般而言数据库系统提供的基本安全技术能够满足大多数的使用,但对于一些重要部门或敏感领域的使用,仅靠上述这些措施是难以完全保证数据的安全性,某些用户尤其是一些内部用户仍可能非法获取用户名、口令字,或利用其他方法越权使用数据库,因此有必要对数据库中存储的重要数据进行加密处理。数据库密码系统要求将明文数据加密成密文数据,数据库中存储密文数据,查询时

将密文数据取出解密得到明文信息。Oracle9i提供了特殊DBMS-OBFUSCATION —TOOL KIT 包,在Oraclel10g中又增加了DBMSCRYPT0包用于数据加密/解密,支持DES、AES等多种加密/解密算法。

各详细算法在此不作介绍。

5Oracle的安全管理操作

5.1创建概要文件

创建一个概要文件user_limited, 把它提供给用户normal_user"使用.如果连续3次和normal_user的连接失败,该账户将自动由oracle锁定,再使用normal_user 账户的正确口令,系统会提示出错信息.1天后此账户自动解锁,可继续使用.创建命令代码如下:

SQL>CREATE PROFILE user_ limited LIMIT

FAILED_LOGIN_ATTEMPTS 3

PASSWORD_LOCK_TIME l;

SQL>ALTER USER normal_user PROFILE

user_limited;

5.2修改概要文件

如果将上述概要文件的允许失败连接次数改为5.账户锁定时间改为10.修改代码如下:

SQL>ALTER PROFILE user_limited LIMIT

FAILED_LOGIN_ATTEMPTS 5

PASSWORD_LOCK_TLME 10;

5.3启用审计

审计是监视和记录所选用户的数据活动。审计通常用于调查可疑活动和监视和收集特定数据库活动的数据。如果数据被非授权用户删除。管理员可对该数据库的所有连接进行审计,以及对数据库的所有删除进行审计.管理员还可以对某种类型的SQL语句、执行相应动作的系统权限、全部用户或指定用户的活动进行审计。达到监视数据库对象的数据处理操作的目的.管理员可以启用和禁用审计信息记录。当在数据库中启用审计时,在语句执行阶段生成审计记录.如审计normal_user用户的所有更新操作代码为:

SQL>AUDITUPDATE TABLE BY normal_user,

6Oracle和SQL server 比较

6.1开放性

SQL Server 只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面使用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时。

Oracle 能在所有主流平台上运行(包括Windows)。完全支持所有的工业标准。采用完全开放策略,可以使客户选择最适合的解决方案,对开发商全力支持。

6.2可伸缩性和并行性

SQL server并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷,伸缩性有限。

Oracle 平行服务器通过使一组结点共享同一簇中的工作来扩展window NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果windows NT不能满足需要, 用户可以把数据库移到UNIX中。

6.3安全性

SQL server没有获得任何安全证书。

Oracle Server 获得最高认证级别的ISO标准认证。

6.4性能

SQL Server 多用户时性能不佳。

Oracle 性能最高,保持windows NT下的TPC-D和TPC-C的世界记录。

6.5客户端支持及使用模式

SQL Server C/S结构,只支持windows客户,可以用ADO,DAO,OLEDB ,ODBC连接。Oracle 多层次网络计算,支持多种工业标准,可以用ODBC, JDBC,OCI等网络客户连接。

6.6操作简便

SQL Server 操作简单,但只有图形界面。

Oracle 较复杂, 同时提供GUI和命令行,在Windows NT和Unix下操作相同。

6.7使用风险

SQL server 完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容早期产品。使用需要冒一定风险。

Oracle 长时间的开发经验,完全向下兼容。得到广泛的使用。完全没有风险。

7Oracle特色详述

7.1Oracl e9i特色详述

2001年6月,Oracle又推出了新一代Internet电子商务基础架构Oracle9i。

Oracle9i 的关键聚焦领域包括:

●提供世界领先的零数据丢失保护环境

●通过对更多联机操作的支持来减少脱机维护的要求

●提供对已损坏数据库的快速而准确的修复

●使最终用户能够识别并更正其自身的错误

7.1.1世界领先的数据保护环境

Oracle9i 包括许多改进数据保护的新特性。除了对现有Standby产品进行了重点增强外,还包括了一个提供监视、自动化和控制的框架。

和管理备用数据库有关的许多任务也是自动化的,包括初始化实例、错误跳转和轻松的主从之间的来回切换。管理员也可以有选择性地指定每个备用站点滞后于生产环境的日志使用延迟(目的是在线免除人为错误或损坏错误),并选择一个零数据丢失模式,在此模式下重做日志被同步发送到备用站点。

在Oracle9i 中还增强了LogMiner,以便提供全面的基于SQL 的Log Analysis(日志分析)。目前LogMiner 支持索引编排的集簇表、链式行、直接加载、标量对象类型、LOB、LONG 数据类型和DDL。LogMiner也显示主键并支持根据更改内容查询日志(例如,显示对雇员“Smith”的所有更改)。一个新的图形用户界面以及其他数据库特性也使此产品易学、易用。

7.1.2联机数据演变

Oracle9i 包含一个新的联机重新组织和重新定义体系结构,此体系结构提供了更为强大的重新组织功能。目前管理员可以对表定义执行各种联机操作,包括按堆组织的表的联机重新组织。在本质上,Oracle9i 目前允许联机“CREATE TABLE AS SELECT ”操作。在此新体系结构中,表的内容被复制到一个新表中。在复制内容的同时,数据库跟踪对原始表的更新。在复制完成后,更新将被使用于新表。一旦使用了更新,就可以在新表上创建索引。在创建索引后,将使用任何其他更新,而且结果表将替代原始表。在更新字典数据的同时,仅在操作开始和结束时以独占模式锁定表。使用这一新的体系结构,可以联机更改表的任何物理属

性。可以将表移动到一个新位置,可以将表分区,也可以将表从一种组织(例如堆积)转换为另一种组织(例如索引编排的)。

此外,许多逻辑属性都可以更改。例如可以更改列的名称、类型和大小并可以对列进行添加、删除或合并。主要的限制是不能修改表的主键。

目前Oracle9i 也支持索引编排表上次级索引的联机创建、重建等。目前可以联机创建索引并同时对其进行分析。次级索引支持块提示的有效使用。

管理员也能够快速地停止数据库以便执行要求非活动事务处理的操作。此外,在Oracle9i 中可以动态调整缓冲区高速缓存和共享池的大小。最后,Oracle9i 也可以在对象处于联机状态并被用户访问的同时验证对象的结构(分析验证)。

7.2Oracl e10g新增特色

7.2.1Oracle 10g Release 1 (10.1.0)

●Simplified Oracle10g installation

●Enhanced Enterprise Manager

●Introducing DataPump - The load/unload utility

●Automatic Database Diagnostic Monitor

●Automatic Shared Memory Management

●Automatic Optimizer Statistics Gathering

●Automatic Undo Tuning

●Automatic Workload Repository

●Automatic Storage Management

●Automatic Maintenance Tasks

●SQL Tuning Advisor

●SQL Access Advisor

●Undo Advisor

●Redo Logfile Size Advisor

●Bigfile Tablespaces

●New Flashback Features

●The SYSAUX Tablespace

●Direct Upgrade to 10g

●UNIX Style Regular Expressions in SQL

●HTML DB

●New (bunch of) Wait Events

●New Initialization Parameters

●Rename Tablespace

●Flush buffer cache

●Temporary Tablespace Groups

●Default Permanent Tablespace

●Segment Shrink

●Skip Unusable Indexes

●Drop Database

●Server Alerts

●Transport tablespace across platforms

7.2.2Oracle 10g Release 2 (10.2.0)

●SQL Access Advisor

●Segment Advisor

●Database Managed Undo Retention Time Period

●Database Managed Multiblock Read Count

●Size-Based Tablespace Freespace Alerts

●Enterprise Manager Direct SGA Attach

●Dropping Empty Datafiles

●V$SQLSTATS Performance View

8结束语

本文介绍Oracle数据库系统的安全机制,重点分析oracle 9i的安全策略,希望有助于广大Oracle用户对Oracle有更好的了解。

9参考文献

[1] 张君枫.如何保证oracle数据库的安全性.辽宁对外经贸学院.

[2]. 赵松涛.Oracle 9i数据库系统管理实录.北京-电子工业出版社.2007年

[3] 孔凡航.Oracle9i中文版基础教程.清华大学出版社.2007年

[4] 陈纪飚数据库使用系统的探讨及安全性2006年

[5] 滕永昌.高杨Oracle数据库系统管理2002年

修改建议

希望进一步规范格式,加强资料的收集和整理,丰富和扩充本文,按照批注修改,并进一步理顺章节之间,段落之间的逻辑关系。

Oracle 数据库安全综述

Oracl e 数据库安全综述 邓明翥 2007061035 摘要信息时代,数据安全性和日俱增。对于企业数据库来说。安全性和系统性能同样重要.一旦数据丢失或者非法用户侵入,对于任何一个使用系统来说都是致命的问题.提高Oracle数据库安全性就要做好安全管理工作.文章从Oracle 入手从安全机制和安全策略两个角度分析其安全,并给出一些安全管理操作的具体方法,最后通过对比给出其安全策略的优点。 1数据库系统简介 1.1背景介绍 随着网络技术的飞速发展。网络安全问题日渐突出。数据库技术自20世纪60年代产生至今,也已得到了快速的发展和广泛使用,数据库中由于数据大量集中存放,且为众多用户直接共享,安全性问题尤为突出。 数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。经过几十年的发展,数据库技术在理论上得到不断完善的同时,也广泛地投入到财务、教育、电子政务、金融等领域中得到大规模的使用。目前,市场上不仅有能满足个人用户需要的桌面小型数据库管理系统,也有能提供大规模数据管理功能、使用在网络环境的大中型数据库管理系统。 1.2数据库系统产品简介 随着大规模数据组织和管理日益引起人们的关注,数据库系统显现出越来越大的市场价值,许多公司都推出了各具特色的数据库管理系统。下面对在市场上占据主流、具有一定代表意义的两款数据库系统做简要介绍。 1.2.1SQL Server简介 SQL Server是由Microsoft公司开发和推广的关系数据库管理系统。它最初是由Microsoft、Sybase、Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。由于Microsoft公司强大的开发能力和市场影响力,自1988年起,不断有新版本SQL Server推出并迅速占领中小型数据库市场。根据来自BZ Research2007年数据库整合和统计报告的数据,SQL Server的市场占有率为74.7%,高居第一。其中,SQL Server2000的用户群最为庞大,SQL Server2008是最新版本。本文所提及的SQL Server,如未特别指出,都指的是SQL Server2000。 SQL Server具有典型的C/S结构。使用图形化用户界面,使系统管理和数据库管理更加直观、简介。同时,还提供了丰富的编程接口工具,为用户进行程序

数据库安全性习题解答和解析学习资料

数据库安全性习题解 答和解析

第九章数据库安全性习题解答和解析 1.1.什么是数据库的安全性? 答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。 2.2.数据库安全性和计算机系统的安全性有什么关系? 答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。 系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。 3.试述可信计算机系统评测标准的情况,试述TDI/TCSEC标准的基本内容。 答:各个国家在计算机安全技术方面都建立了一套可信标准。目前各国引用或制定的一系列安全标准中,最重要的是美国国防部(DoD)正式颁布的《DoD 可信计算机系统评估标准》(Trusted Computer System Evaluation Criteria,简称 TCSEC,又称桔皮书)。(详细介绍参见《概论》9.1.2)。 TDI/TCSEC标准是将TCSEC扩展到数据库管理系统,即《可信计算机系统评估标准关于可信数据库系统的解释》(Trusted Database Interpretation 简称TDI, 又称紫皮书)。在TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。 TDI与TCSEC一样,从安全策略、责任、保证和文档四个方面来描述安全性级别划分的指标。每个方面又细分为若干项。这些指标的具体内容,参见《概论》9.1.2。 4.试述TCSEC(TDI)将系统安全级别划分为4组7个等级的基本内容。 答:根据计算机系统对安全性各项指标的支持情况,TCSEC(TDI)将系统划分为四组(division)7个等级,依次是D、C(C1,C2)、B(B1,B2,B3)、A(A1),按系统可靠或可信程度逐渐增高。

数据库仓库综述

数据库仓库综述 摘要:自从计算机出现后,计算机对数据的管理经历了程序管理、文件管理和数据库管理三个阶段。数据库是数据管理的高级阶段,是数据管理最有效的手段,是现代计算机信息系统和计算机应用系统的基础和核心。本文介绍了数据库的定义、发展历史及各代数据库所采用的数据模型、各代数据库的优缺点。结合当今应用需求和新技术对数据库发展趋势、应用前景作了展望。关键词:数据模型;关系数据库;面向对象数据库 1 引言 数据库技术是20世纪60年代初开始发展起来的一门数据管理自动化的综合性新技术,它是应数据管理任务的需要而产生的,是数据管理最有效的手段。数据库就是为了一定的目的,在计算机系统中与特定的结构组织、存储和应用相关联的数据集合。在数据库出现之前,计算机管理数据经过了程序管理和文件管理两个阶段。数据库是数据管理的高级阶段,它与传统的数据管理相比有许多明显的差别,其中主要的有两点:一是使数据独立于应用程序而集中管理,实现了数据共享,减少了数据冗余,提高了数据的效益;二是在数据间建立了联系,从而能反映出现实世界中信息的联系。 数据库的应用领域相当广泛,从一般事务处理到各种专门化数据的存

储与管理。它的出现极大地促进了计算机应用的发展,数据库技术已经成为先进信息技术的重要组成部分,是现代计算机信息系统和计算机应用系统的基础和核心[1]。目前基于数据库技术的计算机应用已成为计算机应用的主流。 2 数据库发展的历史 数据模型是数据库系统的核心和基础。数据模型是数据库系统中关于数据和联系的逻辑组织的形式表示,通常由数据结构、数据操作和完整性约束三部分组成。数据结构是所研究的对象类型的集合,在数据库系统中通常按照数据结构的类型来命名数据模型。传统的数据模型有层次模型、网状模型和关系模型,现在随着面向对象技术的发展,数据库模型也有基于面向对象的数据模型。数据操作是指对数据库中各种对象的实例允许执行的操作的集合。数据库主要有检索和更新两大类操作。数据的约束条件是完整性规则的集合。保证数据的完整性是对数据库的一个很重要的要求。所谓完整性就是数据的正确性、有效性和相容性。每一个具体的数据库都是由一个相应的数据模型来定义的。按照数据模型的进展,数据库技术可以相应地分为三个发展阶段:第一代的网状、层次数据库系统;第二代的关系数据库系统;第三代的以面向对象模型为主要特征的数据库系统。目前关系数据库系统已经逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统。211 第一代数据库系统———层次和网状数据库系统第一代数据库系统的数据模型为层次模型和网状模型。层次模型是将数据组织成有向有序的树结构。层次模型由处于不同层次的各个结点组成。

oracle数据库安全管理制度

竭诚为您提供优质文档/双击可除oracle数据库安全管理制度 篇一:规章制度之数据备份及应急恢复制度 医院信息系统运行与应用管理规章制度汇编 数据备份工作制度及应急恢复工作规定 数据备份工作制度 1、数据备份是备份his系统所有的数据,包括病人费用信息和医疗信息,关系到整个系统的正常运转,影响到全院的医疗工作的正常秩序,责任重大,数据管理员要有高度的事业心、责任感和一丝不苟万无一失的严谨工作作风。 2、严格按照《数据备份方案》要求,逐条认真操作,每天做逻辑备份,每周六作全部备份,每月做一次冷备份. 3、每两周对数据要进行一次恢复试验,以确保备份数据的安全可靠。 4、为了整理数据库,每月对oRacle数据库进行一次expoRt和inpoRt。 5、根据数据增长量,应定期对过期数据进行处理。 6、每天对服务器进行仔细检查,主要查看文件是否有损坏,cpu和内存占用资源情况,客户端登录和访问数据库

是否正常等。 7、如系统发现异常情况,要马上处理,处理不了要立即汇报,并提出建议。 8、严格遵守保密制度和网络管理规范,绝对保密数据管理员口令,当有其他人对服务器进行操作时,要亲自在场并作好详细记录,有第二者知道口令时要及时更改口令。 9、每次对服务器进行操作时,认真作好登录统计,不得马虎。 10、要熟练掌握nt、oRacle数据库知识,不断提高业务水平。 11、数据备份磁带要异地存放,安全保管。 12、如不按规定执行出现重大事故,追究责任者的一切责任并严肃处理。 应急恢复工作规定 1、当计算机网络中心服务器确认出现故障时,由系统管理员,按《数据备份恢复方案》进行系统恢复。 2、系统管理员由信息科主任指定专人负责恢复。当人员变动时应有交接手续。 3、当网络线路不通时,网络系统维护人员应立即到场进行维护,当光纤损坏时应立即使用备用光纤进行恢复,交换机出现故障时,应使用备用交换机,即刻通知前台工作站工作人员使用。

当前数据库安全现状及其安全审计

当前数据库安全现状及其安全审计 大学数据库原理教科书中,数据库是这样被解释的:数据库是计算机应用系统中的一种专门管理数据库资源的系统。数据具有多种形式,如文字/数码/符号/图形/图象以及声音。 数据库安全现状 数据库系统立足于数据本身的管理,将所有的数据保存于数据库中,进行科学地组织,借助于数据库管理系统,并以此为中介,与各种应用程序或应用系统接口,使之能方便地使用并管理数据库中的数据,如数据查询/添加/删除/修改等。 数据库无所不在。海量的数据信息因为数据库的产生而变得更加容易管理和使用。政府、金融、运营商、公安、能源、税务、工商、社保、交通、卫生、教育、电子商务及企业等行业,纷纷建立起各自的数据库应用系统,以便随时对数据库中海量的数据进行管理和使用,国家/社会的发展带入信息时代。同时,随着互联网的发展,数据库作为网络的重要应用,在网站建设和网络营销中发挥着重要的作用,包括信息收集/信息查询及搜索/产品或业务管理/新闻发布/BBS论坛等等。 然而,信息技术是一把双刃剑,为社会的进步和发展带来遍历的同时,也带来了许多的安全隐患。对数据库而言,其存在的安全隐患存在更加难以估计的风险值,数据库安全事件曾出不穷: 某系统开发工程师通过互联网入侵移动中心数据库,盗取冲值卡 某医院数据库系统遭到非法入侵,导致上万名患者私隐信息被盗取 某网游公司内部数据库管理人员通过违规修改数据库数据盗窃网游点卡 黑客利用SQL注入攻击,入侵某防病毒软件数据库中心,窃取大量机密信息,导致该防病毒软件公司严重损失 某证券交易所内部数据库造黑客股民入侵,盗窃证券交易内部报告 …… 数据库安全面临内部恶意操作以及外部恶意入侵两大夹击。如何有效保护数据库信息成为当前信息安全界最为关注的课题。 数据库安全分析 三大安全风险

Oracle数据库安全加固文档

1 端口设置 1.1 避免使用默认的监听端口 配置项 名称 避免使用默认的监听端口 检查方法 1检查$ORACLE_HOME/network/admin/listener.ora中是否有port=1521一项。 操作步骤 1 备份$ORACLE_HOME/network/admin/目录下的tnsnames.ora, listener.ora 文件 2 备份$ORACLE_HOME/dbs目录下的spfileSid.ora和initSid.ora 3执行$ lsnrctl stop 关闭Listener 4用vi修改listener.ora中的端口号1521为其他端口 5用SQL>startup immediate 关闭数据库 6 修改initSid.ora添加一项LOCAL_LISTENER=listener1 7 在tnsnames.ora中添加一项 listener1 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1522)) ) ) 8 SQL>create spfile from pfile 9 $ lsnrctl start 10 SQL>startup 启动数据库 回退操作 关闭Listener和数据库,恢复备份的文件到原来的目录,重启Listener和数据库。 风险 1.修改默认端口会影响到目前使用该数据库的应用,需要这些应用同步修改为新的端口 2.需要关闭重启数据库以及关闭重启Listener来完成端口的修改 2 用户与权限 2.1 设置LISTENER的启动关闭密码 配置项 名称 设置LISTENER的启动关闭密码 检查方法 检查$ORACLE_HOME/network/admin/listener.ora文件中是否有PASSWORDS_LISTENER一项,若有说明密码已设定。 操作步骤1 备份$ORACLE_HOME/network/admin/listener.ora文件2设置步骤 $ lsnrctl

oracle数据库大作业

o r a c l e数据库大作业-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

2013-2014学年第二学期《大型数据库技术》考查报告课题名称:图书管理系统系统 班级: 11软工java2班 学号: 1115115020 姓名:戴春奇 成绩: 2014年5月

1.课题概述 1.1 课题简介 随着社会的发展,人们对知识的需求也不断的增长。在这种形式下,人们就要不断的学习,不断的给自己充电,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学的管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展。图书馆作为一种信息资源的集散地,用户借阅资料繁多,包含很多的信息数据的管理。现今,有很多的图书馆都是初步开始使用,有些甚至尚未使用计算机进行信息管理。数据信息处理工作量大,容易出错;用于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出。因此一个好的图书馆管理系统是非常重要的。 1.2 功能描述 1.登录模块 用户登录:用户在登陆页面登陆,登陆成功进入系统。 管理员登陆:用于管理员的登陆,在后台登陆页面登陆,登陆成功进入系统。图书管理员与系统管理员后台功能不一样。查询用户表,对应用户名、密码正确则进入系统,对应用户名密码不正确则显示相应信息。 2.图书管理模块 对图书进行添加、查询、修改、删除、添加。

将输入的图书信息添加到数据库图书表中,以方便进行各种查询及更新操作,根据输入的图书名称或作者,查询数据库图书表中的相应记录并显示相应图书信息,更新数据库图书表中对应记录并显示更新后的图书信息,删除数据库图书表中对应记录。 3.副本信息模块 对图书的副本信息进行添加、修改、删除。将输入的图书副本信息添加到副本表中,并分配一个独立的中南码根据输入的中南码或国际标准图书编码,查询图书副本表,显示副本信息更新副本表的数据库、删除副本表中所对应的图书信息、修改副本表中错误的信息并更新数据库。 4.用户管理模块 对用户进行添加、删除、修改。将输入的用户信息添加到用户表中,并分配一个独立的用户号根据输入的用户名的姓名或生日,查询用户表,显示用户信息更新用户表的数据库、删除用户表中所对应的、修改用户中错误的信息并更新数据库。 2、数据库设计及实现 2.1 数据库表清单 1、图书信息-----Books表

数据库新技术的发展综述

数据库新技术的发展综述

数据库技术的现状 及发展趋势 院系:数学科学学院 学号:20121014401 姓名:徐高扬 班级:统计122

数据库技术的现状与发展趋势 关键词:数据库;面向对象数据库;演绎面向对象数据库;数据仓库; 数据挖掘;发展;主流数据库新技术 1、引言 自从计算机问世以后,就有了处理数据、管理数据的需求,由此,计算机技术新的研究分支数据库技术应运而生。随着计算机应用领域的不断拓展和多媒体技术的发展,数据库已是计算机科学技术中发展最快、应用最广泛的重要分支之一。从20世纪60年代末开始,数据库系统已从第一代层次数据库、网状数据库,第二代的关系数据库系统,发展到第三代以面向对象模型为主要特征的数据库系统。关系数据库理论和技术在70~80年代得到长足的发展和广泛而有效地应用,80年代,关系数据库成为应用的主流,几乎所有新推出的数据库管理系统(DataBaseManagementSystem,DBMS)产品都是关系型的,他在计算机数据管理的发展史上是一个重要的里程碑,这种数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、

易于编制应用程序等优点,目前较大的信息系统都是建立在关系数据库系统理论设计之上的。但是,这些数据库系统包括层次数据库、网状数据库和关系数据库,不论其模型和技术上有何差别,却主要是面向和支持商业和事务处理应用领域 的数据管理。然而,随着用户应用需求的提高、硬件技术的发展和InternetIntranet提供的丰 富多彩的多媒体交流方式,促进了数据库技术与网络通信技术、人工智能技术、面向对象程序设计技术、并行计算技术等相互渗透,互相结合, 成为当前数据库技术发展的主要特征,形成了数据库新技术。目前,数据库技术已相当成熟,被广泛应用于各行各业中,成为现代信息技术的重要组成部分,是现代计算机信息系统和计算机应用系统的基础和核心。 2、数据库技术的现状及发展趋势 1980年以前,数据库技术的发展,主要体现在数据库的模型设计上。进入90年代后,计算机领域中其它新兴技术的发展对数据库技术产生 了重大影响。数据库技术与网络通信技术、人工智能技术、多媒体技术等相互渗透,相互结合,使数据库技术的新内容层出不穷。数据库的许多

oracle安全机制

Oracle安全机制 安全性是评价一个数据库产品的重要指标,直接决定了数据库的优劣。Oracle数据库采用一系列的安全控制机制,以保证数据库的安全性。Oracle数据库在3个层次上采取安全控制机制。(1)系统安全性:在系统级别上控制数据库的存取和使用机制,包括有效的用户和口令、判断用户是否被授予权限可以连接数据库、用户创建数据库对象时可以使用的表空间大小、用户的资源限制、是否启动数据库的审计功能、用户可以进行哪些操作系统等。(2)数据安全性:在数据库模式对象级别上控制数据库的存取和使用机制,包括用户可以存取的模式对象以及在该对象上可以进行的操作等。用户要对某个模式对象进行操作,必须具有该对象相应的对象权限。(3)网络安全性:oracle数据库是网络数据库,因此网络数据库传输的安全性至关重要,主要包括登陆助手、目录管理、标签安全性等。Oracle通过分发Wallet、数字证书、SSL安全套接字和数据秘钥等办法来确保网络数据传输的安全性。 一、系统安全方面采取的安全机制包括用户管理、资源限制和口令管理、权 限管理、角色管理、审计、利用OEM进行安全管理。 1、用户管理 用户是数据库的使用者和管理者,Orcle数据库通过设置用户及其安全属性来控制用户对数据库的访问和操作。用户管理是Oracle数据库安全管理的核心和基础。Oracle数据库中的用户分为两类,一类是创建数据库时系统与定义的用户,而预定义的用户根据作用不同又可以分为三类:1、管理员用户,2、示例方案用户,3、内置用户;另一类是根据应用需要由DBA创建的用户。 可以通过查询数据字典视图dba_users,查看当前数据库中所有用户信息。 如下图所示显示open的用户是已经开启的用户,显示expired & locked的用户是已经过期或是锁定的用户

Oracle数据库安全解决方案及技术综述

Oracle数据库安全解决方案及技术综述学院:电子与信息工程学院 专业: xxxxxxxx 学号:xxxxxx 学生姓名: xxxxx 指导教师:xxxxxx 日期: xxxxxxx Oracle数据库安全解决方案及技术综述 1.背景介绍 ?随着网络技术的飞速发展。网络安全问题日渐突出。数据库技术自20世纪60年代产生至今,也已得到了快速的发展和广泛应用,数据库中由于数据大量集中存放,且为众多用户直接共享,安全性问题尤为突出。 ?数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。经过几十年的发展,数据库技术在理论上得到不断完善的同时,也广泛地投入到财务、教育、电子政务、金融等领域中得到大规模的应用。目前,市场上不仅有能满足个人用户需要的桌面小型数据库管理系统,也有能提供大规模数据管理功能、应用在网络环境的大中型数据库管理系统。 2.数据库系统安全概述 ◆安全威胁 当前对数据库的主要安全威胁有物理威胁和逻辑威胁:①物理威胁主要是像各种外力,如:恐怖事件,火灾等造成的数据库服务器故障或数据库中存储介质的损坏造成的数据丢失。②逻辑威胁主要是指对信息的未授权存取,如:恶意用户侵入某银行数据库系统窃取信用卡数据信息。

◆数据库安全技术 目前对数据库安全物理威胁的主要解决方案包括数据备份/恢复、数据导入/导出、数据库的灾难恢复,计算机的集群和磁盘阵列等技术,在此本文不进行讨论。本文以Oracle数据库为例阐述对逻辑威胁的主要解决方法,包括身份认证、存取控制、网络加密、数据加密、审计等技术。 ◆数据库系统的安全需求 数据库的完整性主要包括物理完整性和逻辑完整性。物理完整性主要包括物理完整性和逻辑完整性。物理完整性是指保证数据库的数据不受物理故障,如硬件故障、掉电的影响,并有可能在灾难毁坏时重建和恢复数据库。逻辑完整性是指对数据库逻辑结构的保护,包括数据的语义完整性和操作完整性。前者主要指数据存取在逻辑上满足完整性约束,后者主要指在并发事务中保证数据的逻辑一致性。数据库的保密性指不允许未经授权的用户存取数据;数据库的可用性则是指不应拒绝授权用户对数据库的正常操作,同时保证系统的运行效率并提供用户友好的人机交互。 一般而言,数据库的保密性和可用性是一对矛盾。对这一矛盾的分析与解决构成了数据库系统的安全模型和一系列安全机制的主要目标。 数据库系统的安全需求 3.Oracle的安全策略 3.1系统安全性策略 系统安全策略的定义[1]为:系统安全策略是数据库系统为达到安全目标和相应的安全级别所定义的安全技术、方法、机制的总和。DBMS将系统安全策略体现在其软件之中,最后由DBA给予实现,主要体现在安全管理。Oracle9i的系统安全策略主要功能如下: (1)系统与数据的安全性策略 数据库用户管理(DBU)。数据库主要是由DBU访问的。DBA可授权DBU应用

数据库系统概论第5版课后答案第4章数据库安全性

第4章数据库安全性 1.什么是数据库的安全性? 答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。 2.数据库安全性和计算机系统的安全性有什么关系? 答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要指标之一。 数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。 CC评估保证级(EAL)的划分 4.试述实现数据库安全性控制的常用方法和技术。 答:实现数据库安全性控制的常用方法和技术有:

1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用 户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。 2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有 未被授权的人员无法存取数据。例如CZ 级中的自主存取控制( DAC ) , Bl 级中的强制存取控制(MAC )。 3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐 藏起来,从而自动地对数据提供一定程度的安全保护。 4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA 可 以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。 5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知 数据的内容。 5.什么是数据库中的自主存取控制方法和强制存取控制方法? 答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。 强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。 6.对下列两个关系模式使用GRANT语句完成下列授权功能: 学生(学号,姓名,年龄,性别,家庭住址,班级号) 班级(班级号,班级名,班主任,班长) 1)授予用户U1对两个表的所有权限,并可给其他用户授权。 GRANT ALL PRIVILEGES ON TABLE学生,班级 TO U1 WITH GRANT OPTION ; 2)授予用户U2对学生表具有查看权限,对家庭住址具有更新权限。 GRANT SELECT,UPDATE(家庭住址) ON TABLE学生 TO U2; 3)将对班级表查看权限授予所有用户。 GRANT SELECT ON TABLE 班级 TO PUBLIC; 4)将对学生表的查询、更新权限授予角色R1。 CREATE ROLE R1; GRANT SELECT,UPDATE ON TABLE 学生 TO R1; 5)将角色R1授予用户U1,并且U1可继续授予给其他角色。 GRANT R1 TO U1 WITH ADMIN OPTION;称,MAX(工资),MIN(工资),AVG(工资) FROM 职工,部门 WHERE 职工.部门号=部门.部门号 GROUP BY 职工.部门号; GRANT SELECT ON 部门工资 TO 杨兰; 7.针对习题7 中1)~7)的每一种情况,撤销各用户所授予的权限。 1)REVOKE SELECT ON TABLE职工,部门 FROM 王明; 2)REVOKE INSERT , DELETE ON TABLE职工,部门 FROM 李勇; 3)REOVKE SELECT ON TABLE职工WHEN USER ( ) =NAMEFROM ALI; 4)REVOKE SELECT , UPDATE ON TABLE职工FROM 刘星; 5)REVOKE ALTER TABLE ON TABLE职工,部门FROM 张新; 6)REVOKE ALL PRIVILIGES ON TABLE职工,部门FROM 周平;

键值对数据库综述

键值对数据库综述与典型KV数据库介绍 一、键值数据库概述 键值数据库是一种非关系数据库,它使用简单的键值方法来存储数据。键值数据库将数据存储为键值对集合,其中键作为唯一标识符。键和值都可以是从简单对象到复杂复合对象的任何内容。键值数据库是高度可分区的,并且允许以其他类型的数据库无法实现的规模进行水平扩展。 Key-Value 键值对数据模型实际上是一个映射,即key是查找每条数据地址的唯一关键字,value是该数据实际存储的内容。例如键值对:(“”,“张三”),其key:“”是该数据的唯一入口,而value:“张三”是该数据实际存储的内容.Key-Value 数据模型典型的是采用哈希函数实现关键字到值的映射,查询时,基于key 的hash值直接定位到数据所在的点,实现快速查询,并支持大数据量和高并发查询。 二、基本原理 从API的角度来看,键值数据库是最简单的NoSQL数据库。客户端可以根据键查询值,设置键所对应的值,或从数据库中删除键。“值”只是数据库存储的一块数据而已,它并不关心也无需知道其中的内容;应用程序负责理解所存数据的含义。由于键值数据库总是通过主键访问,所以它们一般性能较高,且易于扩展。基本上所有的编程语言都带有应用在内存中的键值对存储。C++STL的映射容器(map container)和Java的HashMap以及Python的字典类型都是键值对存储。键值对存储通常都有如下接口: -Get( key ): 获取之前存储于某标示符“key”之下的一些数据,或者“key”下没有数据时报错。 -Set( key, value ): 将“value”存储到存储空间中某标示符“key”下,使得我们可以通过调用相同的“key”来访问它。如果“key”下已经有了一些数据,旧的数据将被替换。 -Delete( key ): 删除存储在“key”下的数据。 三、基本特性 键值数据库具有以下几个特性:

Oracle数据库安全配置手册

Oracle数据库安全配置手册 Version 1.0

版本控制

目录 第一章目的与范围 (1) 1.1目的 (1) 1.2适用范围 (1) 1.3数据库类型 (1) 第二章数据库安全规范 (1) 2.1操作系统安全 (1) 2.2帐户安全 (2) 2.3密码安全 (2) 2.4访问权限安全 (2) 2.5日志记录 (3) 2.6加密 (3) 2.7管理员客户端安全 (3) 2.8安全补丁 (3) 2.9审计 (3) 第三章数据库安全配置手册 (4) 3.1O RACLE数据库安全配置方法 (4) 3.1.1 基本漏洞加固方法 (4) 3.1.2 特定漏洞加固方法 (12)

第一章目的与范围 1.1 目的 为了加强宝付的数据安全管理,全面提高宝付各业务系统的数据安全水平,保证业务系统的正常运营,提高业务服务质量,特制定本方法。 本文档旨在于规范宝付对各业务系统的Oracle数据库进行安全加固处理。 1.2适用范围 本手册适用于对宝付公司的各业务系统的数据库系统加固进行指导。 1.3数据库类型 数据库类型为Oracle 11g。 第二章数据库安全规范 2.1 操作系统安全 要使数据库安全,首先要使其所在的平台和网络安全。然后就要考虑操作系统的安全性。Oracle使用大量用户不需要直接访问的文件。例如,数据文件和联机重做日志文件只能通过Oracle的后台进程进行读写。因此,只有要创建和删除这些文件的数据库管理员才需要在操作系统级直接访问它们。导出转储文件和其他备份文件也必须受到保护。可以把数据复制到其他数据库上,或者是作为复制模式的一部分,或者是提供一个开发数据库。若要保护数据的安全,就要对数

数据库安全综述论文

数据库安全综述 摘要:数据库技术是目前应用最广泛的一门计算机技术,其安全性越来越重要。该文讲述了数据库安全含义,数据库存在的安全威胁,常用攻击方法,安全控制策略以及分析了历年发生的几大典型数据泄密事件。 关键字:数据库安全,数据库攻击,安全控制,数据库加密。 随着信息化建设的发展,各种信息系统不断出现,其中数据库扮演者重要角色,其担负着存储和管理数据信息的任务。这些数据一旦泄露或被破坏,将会对国家或单位造成巨大损失。 目前,很多的信息系统采用的都是Oracle或者SQL Server数据库系统,为了保证数据的安全性、准确性以及一致性,这些数据库系统采用一些技术手段,比如:访问控制、实体和引用完整性控制、值域约束、并发控制和恢复等技术。但是,对于Oracle或者SQL Server数据库系统来说,仍然存在很多安全隐患,面临着许多攻击。因此,如何保证与加强数据库的安全性以及保密性,已成为当前迫切需要解决的热门课题。 一、数据库安全含义 于数据库安全的定义,国内外有不同的定义。国外以C. P. Pfleeger “Security in Computing –Database Security.PTR,1997”中对数据库安全的定义最具有代表性,被国外许多教材、论文和培训所广泛应用。他从以下方面对数据库安全进行了描述: (1)物理数据库的完整性:数据库中的数据不被各种自然的或物理的问题而

破坏,如电力问题或设备故障等。 (2)逻辑数据库的完整性:对数据库结构的保护,如对其中一个字段的修改不应该破坏其他字段。 (3)元素安全性:存储在数据库中的每个元素都是正确的。 (4)可审计性:可以追踪存取和修改数据库元素的用户。 (5)访问控制:确保只有授权的用户才能访问数据库,这样不同 的用户被限制在不同的访问方式。 (6)身份验证:不管是审计追踪或者是对某一数据库的访问都要经过严格的身份验证。 (7)可用性:对授权的用户应该随时可进行应有的数据库访问。 本文采用我国GB17859-1999《计算机信息系统安全保护等级划分准则》中的《中华人民共和国公共安全行业标准GA/T 389-2002》“计算机信息系统安全等级保护数据库管理系统技术要求”对数据库安全的定义:数据库安全就是保证数据库信息的保密性、完整性、一致性和可用性。保密性指的是保护数据库中的数据不被泄露和未授权的获取;完整性指的是保护数据库中的数据不被破坏和删除;一致性指的是确保数据库中的数据满足实体完整性、参照完整性和用户定义完整性要求;可用性指的是确保数据库中的数据不因人为的和自然的原因对授权用户不可用。 当数据库被使用时,应确保合法用户得到数据的正确性,同时要保护数据免受威胁,确保数据的完整性。数据库不仅储存数据,还要为使用者提供信息。应该确保合法用户应当在一定规则的控制和约束下使用数据库,同时应当防止入侵者或非授权者非法访问数据库。数据库的安全主要应由数据库管理系统

Oracle安全性的讲解

数据库安全性问题一直是围绕着数据库管理员的恶梦,数据库数据的丢失以及数据库被非法用户的侵入使得数据库管理员身心疲惫不堪。随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。数据库系统作为信息的聚集体,是计算机信息系统的核心部件,其安全性至关重要,关系到企业兴衰、国家安全。因此,如何有效地保证数据库系统的安全,实现数据的保密性、完整性和有效性,已经成为如今关注的一个话题。 甲骨文董事长拉里·埃里森在 Oracle OpenWorld大会上,谈到了 一个观点——要保护数据库安全,关键在于加密。他还认为,我们不仅要为发往互联网的数据库中的数据加密,还要为从硬盘转移到后端系统的过程中的数据加密。他还建议企业禁止用户在没有进行加密的情况下实施数据备份。“因为如果没有加密的备份CD或者DVD光盘一旦丢失,你就会失去信息。” 数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前市场上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。因此,数据库管理员应从以下几个方面对数据库的安全进行考虑。 一:用户角色的管理 这是保护数据库系统安全的重要手段之一。它通过建立不同的用户组和用户口令验证,可以有效地防止非法的Oracle用户进入数据库系统,造成不必要的麻烦和损坏;另外在Oracle数据库中,可以通过授权来对Oracle用户的操作进行限制,即允许一些用户可以对Oracle服务器进行访问,也就是说对整个数据库具有读写的权利,而大多数用户只能在同组内进行读写或对整个数据库只具有读的权利。在此,特别强调对SYS 和SYSTEM两个特殊账户的保密管理。 为了保护ORACLE数据库服务器的安全,应保证$ORACLE_HOME/bin目录下的所有内容的所有权为Oracle用户所有。 为了加强数据库在网络中的安全性,对于远程用户,应使用加密方式通过密码来访问数据库,加强网络上的DBA权限控制,如拒绝远程的DBA访问等。

ORACLE数据库简介

1ORACLE数据库简介 一、概论 ORACLE 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。 二、特点 1、ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE 的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。 2、提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。 3、支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。 4、提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中嵌入 SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。 5、提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。 三、存储结构 1、物理结构 ORACLE数据库在物理上是存储于硬盘的各种文件。它是活动的,可扩充的,随着 数据的添加和应用程序的增大而变化。 下图为ORACLE数据库扩充前后在硬盘上存储结构的示意图:

2、逻辑结构 ORACLE数据库在逻辑上是由许多表空间构成。主要分为系统表空间和非系统 表空间。非系统表空间内存储着各项应用的数据、索引、程序等相关信息。我们准备上马一个较大的ORACLE应用系统时,应该创建它所独占的表空间,同时定义 物理文件的存放路径和所占硬盘的大小。 下图为ORACLE数据库逻辑结构与物理结构的对照关系: 四、分布式数据库管理介绍 1、原理 物理上存放于网络的多个ORACLE数据库,逻辑上可以看成一个单个的大数据库。 用户可以通过网络对异地数据库中的数据同时进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的:开发人员无需关心网络的连接

数据库加密综述

数据库加密综述 石磊 摘要数据库加密是利用现有的数据库和加密技术,来研究如何对数据库中的数据加、解密,从而提高数据库系统的安全。数据库加密可以在OS、DBMS内层、DBMS外层上实现。OS层上的数据库加密由于存在太多的问题和缺陷,已经不被人们考虑。已有的数据库加密产品都是在DBMS外层实现的,这种实现方式虽说做到了数据和密钥的分离,可以有效地抵御外部的非法入侵,但对企业内部的攻击却没有很好的防范措施;另外,这种方式还存在着:使数据和应用程序紧密结合起来、在DBMS之外又增加了其他的数据管理工具、硬盘存储空间浪费大等缺陷。其实,数据的加密与否只是数据的一个属性,数据的加密存储是数据的一种保存方式,关乎数据的物理存储,这些都是DBMS现有功能的一部分。另外从数据和应用程序的分离、数据的维护和安全来看,数据库加密都应当在DBMS内实现。本文就是基于关系DBMS,介绍一种数据库加密的实现方法。 1 引言 随着网络应用的不断发展,信息成为社会发展需要的重要战略资源。围绕信息的获取、使用和控制的竞争愈演愈烈,信息安全成为在激烈竞争中立于不败之地的重要保障。调查显示,我国互联网安全状况有所好转,但互联网用户的网络安全意识仍比较薄弱,对发生网络安全事件未给予足够重视,联网单位对外部网络攻击防范的意识有所增强,但单位内部的网络安全管理工作还不到位。 数据库作为信息存储中心,其安全问题尤为突出。一方面,企业为了本身的利益,需要对其敏感信息进行保护而不让外界获取;另一方面,在数据库作为服务DAS(Database As Service)的数据管理模型下,企业需要从数据库服务提供商DSP(Database Service Provider)处获得专业的数据库服务。这种情况之下,企业的数据存放在数据库服务提供商处,其完全性无法得到有效的保障。因为如果数据库只使用访问控制来限制数据访问的话,数据库提供商处的数据库管理员(DBA)就可能会有意或无意访问到企业的所有数据,从而给企业造成巨大损失。 对于这种“监守自盗”的行为,只有从DBMS内完成对数据的加密,这样不仅可以有效减少来自于外界的危害,也可以有效防止DBA对数据安全造成的威胁。我的综述通过叙述数据库的安全现状说明数据库加密技术的重要性,根据数据库数据存储的特点提出数据库加密的要求,详细阐述数据库加密技术的一般原理,并重点介绍基于关系DBMS的一种数据库加密实现方法,最后提出对数据库安全管理前景的展望。

Oracle数据库简介

oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用SQL数据库系统,它的操作很简单,功能也非常齐全。只是比较oracle 数据库而言,在处理大量数据方面有些不如。 Oralce数据库的发展历程 Oralce数据库简介 Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。 Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。 事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。 Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。 Oracle数据库是基于“客户端/服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动。 Oracle数据库有如下几个强大的特性: 支持多用户、大事务量的事务处理 数据安全性和完整性的有效控制 支持分布式数据处理 可移植性很强 Oracle大体上分两大块,一块是应用开发,一块是系统管理。 开发主要是写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力。管理则需要对Oracle 数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会丢失整个数据库,相对前者来说,后者更看重经验。 Oracle数据库服务器: Oracle数据库包括Oracle数据库服务器和客户端 Oracle Server是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个 Oracle DB和一个 Oracle Server实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优

相关主题
文本预览
相关文档 最新文档