Oracle数据库安全管理

合集下载

Oracle数据库系统第5章 Oracle数据库安全管理

Oracle数据库系统第5章 Oracle数据库安全管理
1. 网络系统层次安全技术 网络入侵试图破坏信息系统的完整性、机密性或可信任的任何网
络活动的集合,具有以下特点:
没有地域和时间的限制,跨越国界的攻击就如同在现场一样方 便
通过网络的攻击往往混杂在大量正常的网络活动之中,隐蔽性 强
5.1.2 数据库安全问题
计算机网络系统开放式环境面临的威胁主要有以下几种类型:
5.1 Oracle安全模型
当前对数据库的主要安全威胁有物理威胁和逻辑威胁。
物理威胁主要是像各种外力,如恐怖袭击,火灾等造成的数据库 服务器故障或数据库中存储介质的损坏造成的数据丢失;逻辑威胁主 要是指对信息的未授权存取,如恶意用户侵入某银行数据库系统窃取 信用卡数据信息。
对数据库安全物理威胁的主要解决方案主要是数据备份与恢复等 技术,对逻辑威胁的主要解决方案主要是用户管理、权限管理、角色 管理、概要文件管理等技术。
入侵者可以直接利用操作系统的漏洞窃取数据库文件。 数据库管理系统层次安全技术主要是用来解决这一问题,即当前
面两个层次已经被突破的情况下仍能保障数据库数据的安全,这就要 求数据库管理系统必须有一套强有力的安全机制。解决这一问题的有 效方法之一是数据库管理系统对数据库文件进行加密处理。可以考虑 在三个不同层次实现对数据库数据的加密:
5.1.2 数据库安全问题
在数据库系统安全模型中,其中最基本的安全管理技术手段就是 DBMS提供的用户授权与访问权限控制功能,该功能用来限制特定用户 对特定对象进行特定操作。DBMS用户存取控制安全模型如图所示:
用户
权限
数据库对象
角色
在DBMS用户存取控制安全模型中,每个用户可以被赋予多个角色, 每个角色可以对应多个用户。用户、角色、数据库对象均可以有若干 许可权限。一旦用户通过系统身份认证,DBMS就将该用户针对特定数 据库对象的许可权限赋予他。

Oracle安全管理

Oracle安全管理
Page ▪ 12
7.2.4 删除用户
▪ 基本语法 –DROP USER user_name [ CASCADE ];
▪ 步骤 –先删除用户所拥有的对象 –再删除用户 –将参照该用户对象的其他数据库对象标志为INVALID
Page ▪ 13
7.2.5查询用户信息
▪ ALL_USERS:包含数据库所有用户的用户名、用户ID和用户创 建时间。
▪ 在Oracle数据库中共有9种类型的对象权限,不同类型的模式 对象有不同的对象权限。
对象权限 SELECT UPDATE DELETE INSERT REFERENCES EXECUTE READ ALTER INDEX
ALL
Page ▪ 22
适合对象 表、视图、序列 表、视图 表、视图 表、视图 表 存储过程、函数、包 目录 表、序列 表 具有对象权限的所有 模式对象
Page ▪ 6
数据库管理员(DBA)的职责
Page ▪ 7
评估数据库服务器的硬件设施 安装oracle软件 规划数据库 创建和打开数据库 备份数据库 注册系统用户 具体实施数据库的设计 备份具有完整功能的数据库 协调数据库的性能
数据库管理员的权限
数据库管理员需要管理权限才能执行基本的数据库操作, Oracle提供两种特殊的系统权限,即SYSDBA和SYSOPER。 DBA角色是由每个Oracle数据库自动创建的,包括大多数的数 据库系统权限;但不包括SYSDBA和SYSOPER系统权限。 当使用SYSDBA和SYSOPER权限连接到数据库时,用户会被连接 到一个默认的方案,而不是与用户名相关联的那个方案。 SYSDBA对应的方案是SYS,而SYSOPER对应的方案是PUBLIC。
Page ▪ 3

Oracle安全管理

Oracle安全管理

数据库安全可分为两类:系统安全性和数据安全性。
(1)系统安全性是指在系统级控制数据库的存取和使用的机制,包含: 有效的用户名/口令的组合。 一个用户是否授权可连接数据库。 用户对象可用的磁盘空间的数量。 用户的资源限制。 数据库审计是否是有效的。 用户可执行哪些系统操作。 (2)Oracle利用下列机制管理数据库安全性: 数据库用户和模式。 特权。 角色。 存储设置和空间份额。 资源限制。 审计。
用户的管理 1.Oracle 9i默认的用户 Oracle 9i默认的用户主要有以下几个:
表8-1 Oracle 9i 默认用户表
用户名 sys system
口令 change_on_inห้องสมุดไป่ตู้tall manager
登录身份及说明 SYSDBA或SYSOPER,但不能以NORMAL登 录,可作为默认的系统管理员 SYSDBA或NORMAL,但不能以SYSOPER登 录,可作为默认的系统管理员
第八章 Oracle安全管理
课程目标
了解和掌握Oracle的用户管理 了解和掌握Oracle的角色管理 Oracle的安全管理
体验项目——<Oracle用户和角色的管理 >
本章体验项 目实现对用 户和角色进 行创建、修 改和删除等 操作,程序 启动后,运 行结果如图 8-1所示:
图8-1 程序运行结果
3.用户的修改
(1)登录企业管理器,在“用户”结节的下找到需要修改的用 户,右键选中该用户,即弹出右键菜单 (2)在右键菜单中选中“查看/编辑详细资料”菜单项,即弹 出“编辑用户”对话框,在该对话框中可以修改用户名、口令、 表空间、状态,同时可以修改角色、系统权限、对象权限、使 用者组、限额及代理用户的相关信息,修改完成后,点击“确 定”按钮,即可完成对用户的修改。

Oracle数据库管理与开发第9章 系统安全管理

Oracle数据库管理与开发第9章 系统安全管理

INSERT
SELECT
UPDATE
创建用户角色
创建用户角色的语法:
create role role_name [ not identified | identified by [password] | [exeternally] | [globally]]
试一试
创建一个名为designer的角色,该角色的口令为123456
创建用户
试一试
创建一个mr用户,口令为mrsoft,并设置默认的表空间为users,临时表 空间为temp的用户。
SQL> create user mr identified by mrsoft default tablespace users temporary tablespace temp;
安全特性
3.过程安全 过程方案的对象权限(其中包括独立的过程、函数和包)只有EXECUTE权限,将这个权限 授予需要执行的过程或需要编译另一个需要调用它的过程。 (1)过程对象。具有某个过程的EXECUTE对象权限的用户可以执行该过程,也可以编译引 用该过程的程序单元。过程调用时不会检查权限。具有EXECUTE ANY PROCEDURE系统权限的 用户可以执行数据库中的任何过程。当用户需要创建过程时,必须拥有CREATE PROCEDURE 系统权限或者是CREATE ANY PROCEDURE系统权限。当需要修改过程时,需要ALTER ANY PROCEDURE系统权限。 拥有过程的用户必须拥有在过程体中引用的方案对象的权限。为了创建过程,必须为过程 引用的所有对象授予用户必要的权限。 (2)包对象。拥有包的EXECUTE对象权限的用户,可以执行包中的任何公共过程和函数, 能够访问和修改任何公共包变量的值。对于包不能授予EXECUTE权限,当为数据库应用开发 过程、函数和包时,要考虑建立安全性。

浅析Oracle数据库安全隐患及对策

浅析Oracle数据库安全隐患及对策
能, 即对 于长时 问不响应的连接 , 数据库 实现 自动断开。
务。切忌使用 s t ye s m权 限运行 , 防止黑客通过侵入数据库来破坏操作系
统。最后一定要注意及时打安全补 丁, 防止漏洞攻击。 ( ) 二 账号管理、 认证授权安全 :
三 、 见 的 数 据 库 攻 击 手 段 及 预 防 方 法 常



科技研究 士 —~ 一 =: = == = == == == = = == == = == == = =
浅析 Oal数据库安全 隐患及对策 r e c
曹 俊 武汉 大学软件工程 国家重点实验 室
【 摘
要 】 r l数据库以其稳 定、 Oa e c 高效等优秀性能被各 大行业 广泛使 用, 但在 实际运用过 程中存在诸 多安全隐患。本文结合 Oal数据库特 点与 r e c
二 、 rc 数 据 库 安 全 注 意 事 项 Oal e
( ) 一 安装时的安全 : 在安装数据库一定要采用满足需求 的最小安装 , 数据库功能模块安 装的越多 , 出现漏洞的可能性就越 大 , 就更容 易受到攻击 。另外注意安 装 目录和系统盘分开 , 并且建 立专门的 O al 用户来安装运行 O ce rce a r l 服
建 立账 号时 , 每个账号与账号使 用人要一一对应 , 不要 使用共享账 号, 每个账号的密码要设 置密码 复杂度和密码生命周期策略 , 具体如下 PAS W ORD LF I S IE TME3 0 —— 口令生命期 3 O天

PAS W ORD OCK
( )P协 议 安全 四 I O al T S监听器存在许多安全漏洞 , 中的一些漏洞甚至能让 rce的 N 其
入侵者得到操作系统 的超级用 户权 限。因此 , 在打好 补丁 的同 时需在 ¥O AC E—H ME ntok a mn pooo. r 中 配 置 t .ecu e R L O / e r/d i rt 1 o w / c a c xldd— p nd s= (i fPadess 以限制客户端 I oe 1t d rse) soI P地址对数 据库的访 问。该 机 制 也 可 以 在 网 络 或服 务 器 防火 墙 上 实 现 。 Oal 数据库客户端 与服务端进行数据交瓦 时, rce 默认情况下是 明文 传输 , 如果恶意入侵者使用 网络抓包工具 抓取传输数据 , 就会轻 易盗取

Oracle数据库——数据库安全性管理

Oracle数据库——数据库安全性管理

Oracle数据库——数据库安全性管理⼀、涉及内容 1.验证系统权限管理。

2.验证⾓⾊管理。

3.验证概要⽂件管理。

⼆、具体操作 (⼀) 1.根据以下要求进⾏系统权限的授予与回收操作。

(1)创建⽤户user1,并为它授予create table、create view 的系统权限以及connect 的系统⾓⾊。

(2)以user1⽤户的⾝份登录系统。

(3)回收user1 的create table、create view 的系统权限。

2. 根据以下要求进⾏⾓⾊的创建与授予操作。

(1)创建⽤户⾓⾊myrole。

(2)为⾓⾊myrole分别授予create table系统权限和在student 表中执⾏更新、删除和修改操作的对象权限。

为⾓⾊myrole分别授予create table系统权限: 先创建⼀个student 表,再在student 表中执⾏更新、删除和修改操作的对象权限: (3)将⾓⾊myrole授予⽤户user1。

3. 根据以下要求进⾏概要⽂件的创建与分配操作。

(1)创建概要⽂件myprofile,设置密码的有效天数为100天,尝试登录3天失败将锁定账户。

语句:create profile myprofileLIMITpassword_life_time 100password_lock_time 3; 截图: (2)把该概要⽂件myprofile 分配给⽤户user1。

(⼆) 1.Oracle 数据库中安全性管理的策略有哪些? 答:Oracle 数据库中安全性管理的策略有: (1)建⽴系统级的安全保证 (2)建⽴对象级的安全保证 (3)建⽴⽤户级的安全保证 2.grant 命令为⽤户授予系统权限和对象权限的区别是什么? 答:grant 命令为⽤户授予系统权限语法命令格式为: GRANT system_privilege [,system_privilege] TO user_name [,user_name] [WITH ADMIN OPTION]; grant 命令为⽤户授予对象权限语法命令格式为: GRANT object_privilege [,object_privilege] ON object_name TO user_name [,user_name] [WITH GRANT OPTION] 区别是:授予对象权限是需要指定权限操作的对象名称object_name 3.Oracle 数据库中⼏个常⽤的系统预定义⾓⾊是什么?它们分别具有什么样的权限? 答:Oracle 数据库中⼏个常⽤的系统预定义⾓⾊及其权限如下所⽰:系统预定义⾓⾊权限DBA数据库管理员⾓⾊ 1.拥有全部特权,是系统最⾼权限的⾓⾊2.只有该⾓⾊的⽤户可以创建数据库结构3.在数据库中拥有⽆限制的空间限额RESOURCE数据库资源⾓⾊ 1.只可以在⾃⼰的⽅案下创建各种数据库对象2.没有和数据库创建会话的权限CONNECT数据库连接⾓⾊ 1.具有连接数据库2.在⾃⼰的⽅案下创建各种数据库对象的系统权限 4.如何使⽤数据库概要⽂件设置系统的安全性?具体步骤有哪些? 答: (1)概要⽂件(profile)是⼀种对⽤户能够使⽤的数据库和系统资源进⾏限制的⽂件。

oracle数据库安全管理

oracle数据库安全管理
ALTER USER USERMAN PASSWORD EXPIRE;
(3)ACCOUNT LOCK关键词锁定用户。 【例】锁定用户USERMAN,使其无法登录到数据库:
ALTER USER USERMAN ACCOUNT LOCK;
(4)ACCOUNT UNLOCK关键词解锁用户。 【例】解除对用户USERMAN的锁定:
系统权限选项卡 对象权限选项卡 使用者组选项卡 限额选项卡 代理用户选项卡
6.2.1
利用SQL语句创建用户 语法格式:
创建用户
CREATE USER user_name /*将要创建的用户名*/ [IDENTIFIED BY password | EXTERNALLLY | GLOBALLY AS ‘external_name’ ] /*表明Oracle如何验证用户*/ [DEFAULT TABLESPACE tablespace_name] [TEMPORARY TABLESPACE tablespace_name] [QUOTA integer K | integer M | UNLIMTED ON tablespace_name] [PROFILE profile_name] /*将指定的概要文件分配给用户*/ [PASSWORD EXPIRE] /*口令即刻失效 */ [ACCOUNT LOCK | NULOCK] /*帐户是否锁定*/
6.2 数据库用户管理
创建用户 修改用户 权限管理语句 删除用户
6.2.1
利用OEM创建用户
创建用户
4.2.1
一般信息选项卡
名称 概要文件 验证 输入口令和验证口令 口令即刻失效 表空间-默认值 表空间-临时 状态-锁定

Oracle安全管理

Oracle安全管理

Oracle安全管理摘要:本文介绍了Oracle安全管理的一些知识,包括用户、角色的使用以及安全审计等主题词:Oracle技术权限用户角色安全管理1、引言数据库安全是系统安全的一个重要方面。

Oracle安全管理是如何进行的?用户、角色及其权限是如何管理和分配的?Oracle安装后,会建立几个默认用户,这些用户都是干什么的?如何进行安全审计的?对于这些问题,本文将给出答案。

2、 Oracle安全性能Oracle把数据库管理可用的安全功能分为以下几个级别:合法用户的帐户安全性要访问一个Oracle数据库中的数据,必须先是访问该数据库的一个帐户。

这个访问可以是直接访问—通过到一个数据库的用户连接—或间接访问。

间接连接访问包括通过在数据库链接中预设权限的访问。

每个帐户必须有一个与其相关的口令。

一个数据库帐户也可以连接到一个操作系统帐户上。

数据库对象的访问安全性对数据库中一个对象的访问是通过权限(privilege)来完成的。

可以通过grant命令向特定帐户分配访问权限,也可以创建角色(role即权限组)来简化权限的管理。

由于角色可以用口令保护且能被动态地允许和禁止,所以它们给数据库增加了一个附加安全层。

管理全局权限的系统级安全性可以使用角色来管理对用户有效的系统级命令。

这些命令包括create table和alter index等,对于每种数据库对象的操作都是由各自的权限授权的。

例如,一个用户可以被授予CREATE TABLE权限,而不是CREATE TYPE权限。

可以创建一些自定义的系统级角色,这些角色只向用户授予他们在数据库中所需的权限而不是过多的特权。

CONNECT和RESOURCE角色分别是最终用户和开发人员所要求的基本系统权限。

具有RESOURCE角色的用户还被授予UNLIMITEDTABLESPACE系统权限,使他们在数据库的任何地方都能创建对象。

由于有这个附加权限,所以应限制把RESOURCE角色用于开发和测试环境。

ORACLE数据库安全解决方案

ORACLE数据库安全解决方案

ORACLE数据库安全解决方案
《ORACLE数据库安全解决方案》
ORACLE数据库安全一直是企业数据管理的重要环节,因为
它存储了公司的核心信息,包括客户资料、员工信息和财务数据等。

为了保护这些关键数据,企业需要采取一系列严密的安全措施,以防止未经授权的访问和数据泄露。

在ORACLE数据库安全的解决方案中,加密技术被广泛应用,它通过将敏感数据转化为密文,以保护数据的机密性和完整性。

此外,数据库审计和监控也是关键的安全措施,它可以追踪数据库的所有活动,并通过实时警报和日志记录来识别潜在的安全威胁。

另外,访问控制也是ORACLE数据库安全解决方案中的核心
组成部分,它可以通过角色和权限管理来限制用户对数据库的访问权限,从而降低内部和外部威胁的风险。

此外,强化密码策略和多因素身份认证也是保护数据库安全的有效方法,它可以防止未经授权的用户登录数据库,并提高登录安全性。

除了上述措施之外,数据库备份和恢复也是保护ORACLE数
据库安全的关键手段,它可以迅速恢复数据以应对病毒攻击、硬件故障和自然灾害等安全事件。

另外,定期的安全漏洞扫描和补丁更新也是保护ORACLE数据库安全的有效方法,以及
员工的安全培训和意识提升也是至关重要的。

综上所述,《ORACLE数据库安全解决方案》需要综合利用
加密技术、数据库审计和监控、访问控制、密码策略、多因素身份认证、备份和恢复、安全漏洞扫描等多种手段来保护企业的核心数据安全。

只有综合运用这些安全措施,才能确保ORACLE数据库的稳定和安全性,从而保护企业的核心资产和声誉。

Oracle数据库的安全与管理

Oracle数据库的安全与管理
SESSIONS_PER_USER
CONNECT_TIME
IDLE_TIME
LOGICAL_READS_PER _SESSION PRIVATE_SGA
Description
Total CPU time measured in hundredths of seconds
Number of concurrent sessions allowed for each username
Elapsed connect time measured in minutes
Periods of inactive time measured in minutes
Number of data blocks (physical and logical reads)
Private space in the SGA measured in bytes (for MTS only)
修改用户的表空间定额
ALTER USER peter QUOTA 0 ON data01;
删除用户
DROP USER peter;
如果模式中包含对象,则需要使用 CASCADE子句
DROP USER peter CASCADE;
监控用户
DBA_USERS
USERNAME USER_ID CREATED ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
• 用户管理 • 环境文件管理 • 权限管理 • 角色管理 • 常用工具的使用
主要内容
– 鉴别系统和对象权限 – 权限的授予与回收 – 操作系统或口令文件认证的控制
管理权限

谈关于Oracle数据库安全性管理

谈关于Oracle数据库安全性管理

谈关于Oracle数据库安全性管理摘要:数据库的安全问题直接关系到的信息数据高效,准确,完整传输的基础前提,Oracle数据库以其稳定性,优异的性能和高效率等特点被各大行业广泛使用。

但在实际应用过程中,存在很多安全隐患。

本文根据Oracle数据库的功能和实际使用情况,简要分析数据库安全技术,并提出数据库安全解决方案。

关键词:Oracle数据库;安全性;管理Abstract: Information database security issues directly related to the efficient, accurate, complete the basic premise of transmission, Oracle database with its stability, widely used features excellent performance and high efficiency are the major industry. But in practical application process, there are many security risks. In this paper, according to the Oracle database function and the actual use, the brief analysis of database security technology, and put forward the solution of security database.Key words: Oracle database; security; management数据库安全一直是数据库管理员关注的焦点,数据库的数据丢失和从未经授权被非法用户入侵已使得数据库管理员心力交瘁。

Oracle数据库在正常情况下能够保证数据的安全和系统的稳定,为用户提供正确的数据,但由于计算机系统存在的安全问题,或者由于数据库用户出现对系统的误操作,加之Oracle数据库自身存在的一些漏洞,都会影响到数据库中数据的正确性和安全性,造成数据库的破坏和其中数据的丢失,严重的甚至使整个系统陷入瘫痪状态。

Oracle数据库应用中的安全管理策略分析

Oracle数据库应用中的安全管理策略分析

境 ,是 影 响数据 库 安全 的主 要 因素 ,数据 库系 统功 能 的发挥 不 能
库数 据 的访 问。 网络 系统 的 安全 防护 是数 据库 安全 的首 道屏 障 , 外 部对 于数 据库 入侵 大 多都 是从 入侵 网络 系统 开始 。进 行 网络安 全 性处 理 的时候 ,重 点运 用 如下 一些 措施 : 能够通 过设 置 防火墙 技 术 ,合理 监控 不 可信任 网络 间的访 问,能于 内部 和外 部 网络 间 产 生 防护屏 障 ,阻止 出于 外 部 的非法 访 问 ,还 进行 内部 信息 外泄 的制止 ;于 网络 中,运 用密 码 , 网上 的用 户 可 以通 过 设置 安全 密 码 和安 全 问题 ,从 而防止 非 法用 户 盗窃密 码 ,避 免系统 安全 性遭 受 损 害 ;可 以进 行 拒绝远 程 访 问 DB 的设 置 ,合理 控制 网络 的 A
响 ,甚至 可 能会损 坏数 据库 ,从 而 使数据 库全 部系 统 面临 瘫痪 情
况 。所 以确保 O al 数据 库 的可用 性 、安 全性 ,保证 O al数 据 rc e rc e 库 系统 安 全稳 定 ,可 以运 用如 下 的安全 管理 措施 :
l 对权 限 的控 制措 施 针
( )数据 库 管理 系统 安全管 理策 略 三 因为 数据库 系 统于操 作 系统之 下 均是 采用 文件 形式 进行 实施 二 、安 全管 理策 略相 关分 析 ( )网络 系统 层次 安全 管理 策略 一 网络 系 统 为 数 据库 的安 全 应 用 的 提 供 了前 提 条 件 及 外 部环
O al数 据库 主动 建立 D A 权 限、cet P bi sn nm 权 限 以 rc e B ra ul o y e cy

oracle topic9 数据库安全管理

oracle topic9 数据库安全管理

用户的不同而不同。
收回授予的系统权限
Revoke语法形式如下所示: Revoke sys_privilege[,sys_privilege] from user_name
其中: sys_privilege将要撤销的系统权限,多个系统权限之间用逗号 分隔。 user_name将要撤销系统权限的用户名称。
锁定用户和解除用户锁定
如果要禁止某个用户访问Oracle 10g系统,那么最好的 方式是锁定该用户,而不是删除该用户。锁定用户并不影响 该用户所拥有的对象和权限,这些对象和权限依然存在,只
是暂时不能以该用户的身份访问系统。当锁定解除后,该用
户可以正常地访问系统、按照自己原有的权限访问各种对象。
锁定和解除锁定的语法形式如下所示: Alter user user_name account[lock|unlock] 其中 Lock表示锁定用户。 Unlock表示解除锁定用户。
是指数据库使用存储在数据库中的信息对试图连接
数据库的用户进行身份认证。为了建立数据库身份
验证机制,在创建数据库用户时,需要指定相应的 用户密码。在用户连接数据库时,必须提供正确的 用户名和密码,才能登录到Oracle数据库。
数据库管理员认证
数据库管理员拥有极高的管理权限,可以执行一些 特殊的操作,如关闭或启动数据库。因此,为了安 全考虑,Oracle数据库为数据库管理员提供了安全 的认证方式,用户可以选择进行操作系统认证或密
数据库安全管理
涂利明
主要内容
1 2
Oracle认证方法 用户管理
权限管理
3
4 4 4
角色管理
Oracle认证方法
认证是指对需要使用数据、资源或应用程序的用户进行身

浅谈ORACLE数据库安全管理策略

浅谈ORACLE数据库安全管理策略

浅谈ORACLE数据库安全管理策略Oracle数据库是世界上最流行的商业数据库之一,它的安全管理对于企业的稳健发展至关重要。

本文将从以下几个方面探讨Oracle数据库的安全管理策略。

一、口令策略通过设置口令复杂度、口令有效期、口令锁定策略等一系列措施,加强用户口令管理,是Oracle数据库安全管理中非常重要的一项。

系统管理员应该强制要求用户使用复杂口令,如大小写字母、数字和特殊符号的组合,并设置定期修改口令的规定,如每三个月必须修改一次。

此外,还应该限制同一账号连续输错口令的次数,超过设定次数则锁定账户。

二、访问权限控制在Oracle数据库中,对用户的访问权限控制十分重要。

管理员应该根据用户的职责及其所属部门划分角色,并为每个角色分配相应的权限。

同时,还应该非常谨慎地为用户授权,保持最小授权原则,即只赋予用户必要的权限,防止一些安全漏洞的利用。

三、日志审计Oracle数据库具有强大的日志审计能力,可以记录每个操作的详细信息,从而保证了数据库安全。

管理员应该启用日志审计,并设置适当的审计策略,如记录所有用户的登录、注销、授权、修改等操作的详细信息,以便及时发现安全问题。

四、敏感信息保护Oracle数据库中有很多敏感信息,如用户密码、信用卡号、社会保险号等,需要得到很好的保护。

管理员应该使用加密、数据脱敏等技术来保护敏感信息,从而防止黑客或内鬼窃取敏感信息。

五、安全漏洞检测和修复Oracle数据库存在一些安全漏洞,如缓冲区溢出、SQL注入等,这些漏洞可能会给黑客留下可乘之机。

因此,管理员需要定期检测安全漏洞,并尽快修复漏洞,从而减少黑客攻击的风险。

在Oracle数据库安全管理中,还有很多其它重要的策略,如备份恢复、网络安全等,这里就不再一一详述。

总之,Oracle数据库的安全管理需要管理员时刻关注,采取有效的措施,以保证企业信息的安全。

ORACLE的安全管理

ORACLE的安全管理

查看存在的系统权限: SELECT * FROM USER_SYS_PRIVS;
对象特权的控制和管理
对象特权是指用户在指定的表、视图、序列、过程、函数 、包上执行特殊操作的权力。
Oracle提供8种对象特权: SELECT、INSERT、UPDATE、DELETE、 EXECUTE、INDEX、 ALTER、REFERENCES 授予对象特权
回收对象特权
回收对象特权 1. Oracle Enterprise Manager-Security Manager 2. 命令格式: REVOKE <对象特权> ON <对象> FROM <用户> ; 例:回收ZHCX用户查询aj01、aj02表的权力。 REVOKE select on aj01,aj02 FROM ZHCX; 例:回收PUBLIC用户对EMP表插入、更新ename列的权力。 REVOKE insert , update (ename) on emp FROM PUBLIC ; 查看存在的对象特权 SELECT * FROM USER_TAB_PRIVS; SELECT * FROM USER_COL_PRIVS;
在访问Oracle数据库的任何对象之前,必须首先使用一个合法的用户名 和口令。用户级安全保证是通过创建用户且赋予口令来实现。
2. 系统级安全保证
系统级安全保证是通过授予用户某种特殊操作权力(称系统特权)来实 现。例如:建立表空间、建立用户、 建立表、删除表中数据的权力等。
3. 对象级安全保证
对象级安全保证是通过授予用户对数据库中特定的表、视图、序列、过程进行 操作的权力来实现。 例如:对EMP(雇员)表插入或删除一个雇员记录的权力就属于对象级特权。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

公司内部Oracle数据库安全管理主题:Oracle数据库安全管理项目名称:公司内部撰写单位:海鼎作者:吴昭松版本号:0.1日期:2006-3-8审核文档历史参考文档概述本文概要性讲述Oracle数据库安全管理,使读者对Oracle的数据库安全管理有所了解。

包含内容:1、概要文件;2、管理用户;3、权限和角色;概要文件概要文件是Oracle安全策略的重要组成部分,利用概要文件可以对数据库用户进行基本的资源限制,并且可以对用户的口令进行管理。

概要文件是命名的数据库和系统资源限制集合。

通过为数据库用户指定概要文件,可以控制用户在数据库和实例中所能使用的资源。

通常DBA会将数据库中用户分为几种类型,为每类用户创建概要文件。

一个数据库用户只能指定一个概要文件。

在安装数据库时,Oracle会自动建立名为DEFAULT的默认概要文件,如果在创建新的数据库用户时没有为他指定概要文件,Oracle将自动为他指定这个默认概要文件。

另外,如果在用户自定义的概要文件中没有指定某项参数,Oracle将使用DEFAULT概要文件中相应的参数作为默认值。

在概要文件中还可以对用户的口令管理策略进行设置。

资源限制参数利用概要文件,可以对以下几类数据库和系统资源进行限制:●CPU时间●逻辑读●用户的并发会话数●空闲时间●连接时间●私有SGA区对这些资源的限制是通过在概要文件中设置资源参数来实现的。

资源参数的值可以是一个整数,也可以是UNLIMITED(即不受限制),还可以是DEFAULT(使用默认概要文件中的参数设置)。

大部分的资源限制都可以在两个级别进行:会话级或调用级。

会话级资源限制是对用户在一个会话过程中所能使用的资源进行的限制,而调用级资源限制是对一条SQL语句在执行过程中所能使用的资源进行的限制。

当会话或一条SQL语句占用的资源超过概要文件中的限制时,Oracle将中止并回退当前的操作,然后向用户返回错误信息。

这时用户仍然有机会提交或回退当前的事务。

如果受到的是会话级限制,在提交或回退事务后用户会话被中止(断开连接),但是如果受到的是调用级限制,用户会话还能继续进行,只是当前执行的SQL语句被终止。

下面分别介绍在概要文件中使用的各种资源参数:●SESSIONS_PER_USER 该参数限制每个用户所允许建立的最大并发会话数目。

达到这个限制时,用户不能再建立任何数据库连接。

●CPU_PER_SESSION 该参数限制没个会话所能使用的CPU时间。

参数值是一个整数,单位为百分之一秒。

●CUP_PER_CALL 该参数限制每条SQL语句所能使用的CPU时间。

参数值是一个整数,单位为百分之一秒。

●LAGICAL_READS_PER_SESSION 该参数限制每个会话所能读取的数据块数目,包括从内存中读取的数据块和从硬盘中读取的数据块。

●LAGICAL_READS_PER_CALL 该参数限制每条SQL语句所能读取的数据块数目,包括从内存中读取的数据块和从硬盘中读取的数据块。

●PRIVATE_SGA 在共享服务器操作模式下,执行SQL语句和PL/SQL语句时Oracle将在SGA中创建私有的SQL区。

该参数限制在SGA中为每个会话所能分配的最大私有SGA区大小。

参数值是一个整数,单位为K或M,如果不指定单位,则表示以字节为单位。

在专用服务器操作模式下,该参数不起作用(私有SGA区位于服务进程的PGA中)。

●CONNECT_TIME 该参数限制每个会话能连接到数据库的最长时间。

当时间达到该参数的限制时,用户会话将自动断开。

参数值是一个整数,单位为分钟。

●IDLE_TIME 该参数限制每个会话所允许的最大连续空闲时间。

当会话不对数据库进行任何操作时,它处于空闲状态。

如果一个会话持续的空闲时间达到参数的限制,该会话将自动断开。

参数值是一个整数,单位为分钟。

●COMPOSITE_LIMIT 该参数用于设置“组合资源限制,为一个会话指定资源总限额。

参数值是一个整数,通过资源以加权和的形式进行计算。

激活和禁用资源限制通过概要文件实现的资源限制并不总是有效的,资源限制可以具有激活和禁用两种状态。

只有在资源限制处于激活状态时,Oracle才会对用户会话和SQL语句所使用的资源进行检查和限制。

修改数据库的资源限制状态有两种方式:●在数据库启动之前,可以通过设置初始化参数RESOURCE_LIMIT来决定资源限制的状态。

如果RESOURCE_LIMIT参数设置为TRUE,启动数据库后资源限制将处于激活状态。

如果RESOURCE_LIMIT参数设置为FALSE,启动数据库后资源限制将处于禁用状态。

默认情况下,RESOURCE_LIMIT参数为FALSE。

●在数据库启动之后(处于打开状态),可以使用ALTER SYSTEM语句来改变资源限制的状态:ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;口令策略参数概要文件除了可以用于资源管理外,还可以对用户的口令策略进行控制。

使用概要文件可以实现如下三种口令策略:●账户的锁定。

锁定策略是指用户在连续输入多次错误的口令后,将由Oracle自动锁定用户的账户,并且可以设置账户锁定的时间。

●口令的过期时间。

口令过期策略用于强制用户定期修改自己的口令。

当口令过期后,Oracle将随时提醒用户修改口令。

如果用户仍然不修改自己的口令,Oracle将使他的口令失效。

●口令的复杂度。

在概要文件中可以通过指定的函数来强制用户的口令必须具有一定的复杂度。

比如强制用户的口令不能与用户名相同,或者不能在口令中包含常用英文单词,或者在口令中必须包含一定数量的特殊字符。

下面分别介绍在概要文件中使用的各种口令参数(所有指定时间的口令参数都以天为单位):●FAILED_LOGIN_ATTEMPTS 该参数指定允许的输入错误口令的次数,超过该次数后用户账户被自动锁定。

●PASSWORD_LOCK_TIME 该参数指定用户账户由于口令输入错误而被锁定后,持续保持锁定状态的时间。

●PASSOWRD_LIFE_TIME 该参数指定同一个用户口令可以持续使用的时间。

如果达到这个限制之前用户还没有更换另外一个口令,他的口令将失效。

这时必须由DBA为他重新设置新的口令。

●PASSWORD_GRACE_TIME 该参数指定用户口令过期的时间。

如果在达到这个限制之前用户还没有更换另外一个口令,Oracle将对他提出警告。

在口令过期之后,用户在达到PASSOWRD_LIFE_TIME参数的限制之前有机会主动修改口令。

●PASSWORD_REUSE_TIME 该参数指定用户在能够重复使用一个口令之前必须经过的时间。

●PASSWORD_REUSE_MAX 该参数指定用户在能够重复使用一个口令之前必须对口令修改的次数。

PASSWORD_REUSE_TIME和PASSWORD_REUSE_MAX只能设置一个,而另一个参数必须指定为UNLIMITED。

●PASSWORD_VERFIY_FUNCTION 该参数指定用于验证用户口令复杂度的函数。

Oracle提供了一个名称为VERIY_FUNCTION的默认口令复杂度验证的函数,他的脚本保存在ORACLE_HOME\rdbms\admin目录中,脚本名称为utlpwdmg.sql。

创建并使用概要文件使用CREATE PROFILE语句可以创建概要文件,执行该语句的用户必须具有CREATE PORFILE系统权限。

下面是创建例子:create profile ACCOUNTING_USER limitsessions_per_user 6 --每个用户最多只能建立6个数据库会话cpu_per_session unlimitedcpu_per_call 6000 --会话中执行的每条SQL语句最多只能占用6000个单位(百分之一秒)的CPU 时间connect_time 1440 --每个会话持续连接到数据库的最长时间为24个小时idle_time 120 --保持2个小时的空闲状态后会话将自动断开连接logical_reads_per_session unlimitedlogical_reads_per_call 1000000 --会话中执行的每条SQL语句最多只能读取 1000000个数据块 composite_limit unlimitedprivate_sga unlimitedfailed_login_attempts 6 --允许连续6次输入错误的口令,如果第7次错误,账户自动锁定,由DBA来解除锁定password_life_time 31 --同一个口令连续使用的时间不能超过31天password_reuse_time 90 –90天后才允许重复使用同一个口令password_reuse_max unlimitedpassword_lock_time unlimitedpassword_grace_time 30 --每隔30天修改一次口令password_verify_function verify_function; --使用默认的口令复杂度验证函数对用户口令进行检查。

DBA可以根据需要使用下面的语句来修改DEFAULT概要文件中的参数设置:ALTER PROFILE DEFAULT LIMIT …;使用CREATE USER语句创建用户时,可以通过PROFILE子句为新建用户指定概要文件。

另外在使用ALTER USER 语句修改用户时也可以为他指定概要文件:ALTER USER SCOOT PROFILE ACCOUNTING_USER;对概要文件所做的修改只有在用户开始下一个新的会话时才会生效。

另外如果使用ALTER PROFILE语句对DEFAULT概要文件进行了修改,则所有概要文件中设置为DEFAULT的参数都会受到影响。

使用DROP PROFILE语句可以删除概要文件,如果要删除的概要文件已经指定给了用户,则使用CASCADE 关键字:ALTER PROFILE ACCOUNTING_USER CASCADE;如果为用户所指定的概要文件已经被删除,Oracle将自动为拥护重新指定DEFAULT概要文件。

管理用户用户在访问Oracle数据库时必须提供一个数据库账户,只有具有合法身份的用户才能够访问数据库。

因此,如何对数据库中用户进行控制和管理,是DBA安全策略中的重要组成部分。

在Oracle数据库中创建的任何用户都具有如下4个基本属性:●认证方式每个用户在连接到数据库时都需要进行身份验证。

身份验证可以通过操作系统进行,也可以通过数据库进行,或者是通过独立的网络服务器进行。

●默认表空间与临时表空间用户在创建数据库对象时如果没有显式地指定对象所处饿表空间,Oracle将在用户默认表空间中创建对象。

相关文档
最新文档