ERP俱乐部
ERP爱好者、ERP从业者互相交流、互相学习的乐园;我们的愿景是成为全球一流的中文ERP(Enterprise Resource Planning)交流平台
网站首页 论坛首页 搜索 用户列表 FAQ 注册 登录  
ERP俱乐部 -> 数据库专栏 -> Oracle开发 -> 账户方案系统角色多管齐下保障Oracle的安全
  账户方案系统角色多管齐下保障Oracle的安全
帖子发起人: 半神   发起时间: 2011-11-21 11:41 上午   回复数: 0
? 上一主题 下一主题 ?
楼主
  2011-11-21, 11:41 上午
半神 离线,最后访问时间: 2013/6/5 18:59:05 半神

发帖数前25位

超级管理员
职务: 超级管理员
80级
等级: 80级
注册: 2008年1月6日
区域: 华南
经验: 1,267
积分: 1,131
精华: 2
发贴: 590
排名: 26
Global ModeratorsSite Registered Users培训学员(FI学员服务区-深圳200805班) 培训学员(MM学员服务区-北京200708班) 每日发帖之星Site AdministratorsSite Moderators
账户方案系统角色多管齐下保障Oracle的安全
 
一、账户与系统角色结合,提高了账户的安全性。

  账户是定义在数据库系统中的一个名称,它是数据库的基本访问控制机制。当连接到Oracle数据库时,跟其他数据库一样,需要用户输入用户名与 密码。数据库系统就是凭借这个用户名来授予其相应的数据库访问权限。不过,这跟其他数据库又有所不同。因为Oracle数据库有有一类很特殊的账户-特权 账户。这些特权账户具有某些比较特殊的权限。为了数据库的安全,他们除了在数据库中要拥有某些特定的权限之外,还必须拥有操作系统对应的权限。数据库与操 作系统一起,来保障数据库的安全。

  如在Oracle数据库中,主要有两类特权用户,分别为SYSDBA与SYSOPER。这两类用户主要用用来执行一些特殊的作业。如启动关闭数 据库、建立数据库、备份与恢复操作等等。这些作业明显会直接影响到数据库的正常作业;而且备份恢复操作还直接跟数据库数据安全息息相关。为了保障这些特权 账户的安全,Oracle数据库还采用了一些特殊机制。如Oracle要求,除了在数据库中要拥有对应的权限之外,还必须在操作系统中也是某些特定角色的 成员。例如,Oracle数据库若是部署在微软的操作系统下,则安全成功后,在操作系统的角色中,会多SYSDBA与OSOPER两个组。特权账户必须要 属于这两个组,才能够进行如上所述的一些数据库维护作业。同理,在Linux等其他操作系统平台下,也需要具有类似的权限。通过这种策略,特权账户的安全 就又多了一个保障。如数据库管理员只想使用特权账户SYSDBA来管理维护数据库,而不需要SYSOPER账户。此时,数据库管理员就有两个选择。要么在 数据库中禁用这个账户;要么在操作系统中把这个账户从Oracle建立的组中剔除出去。

  虽然SYSOPER与SYSDBA账户都是属于特权账户,但是他们的权限还是由差异的。如特权账户SYSDBA具备了特权账户SYSOPER的 所有权限之外,还具有建立数据库、执行不完全恢复等权限。同时,前者还自动具备了DBA角色的所有权限;而后者则不具备DBA角色的权限。为了数据库库的 安全,通常情况下不能够把这些特权账户的权限赋予给其他用户。虽然可以通过更改初始化参数来突破这个限制,但是出于数据库的安全考虑,我们都不建议这么处 理。

  可见,特权账户与操作系统固定权限结合,双管齐下,来保障数据库的安全,这是Oracle数据库的一个突破。其在很大程度上,提高了特权账户的安全性。若是普通账户,则没有这方面的限制。

  二、账户与方案一一对应保障Oracle安全。

  除了账户与系统角色结合,来提高账户安全性之外,Oracle数据库另外一个值得称颂的地方就是把账户与方案联系起来,进一步提高了账户的安全性。

  在Oracle数据库中,方案是用户所拥有数据库对象的集合。这是因为在Oracle数据库中对象是以用户来组织的,用户与方案是一一对应的, 并且两者所使用的名称相同。利用Oralce数据库与实例安装完成后,其默认情况下有两个用户,分别为SYSTEM与SCOTT。他们分别对应了两个方案 SYSTEM与SCOTT。Oracle数据库就是账户与方案一起,来提高数据库访问的安全性。

  如用户可以直接访问其自己的方案对象,但是如果需要访问其他用户的方案对象时,则需要具有相关的权限。如用户SCOTT,其方案SCOTT下所 有的数据库对象都可以进行访问。但是,如果SCOTT用户想访问方案SYSTEM下面的数据库对象,则需要先经过用户SYSTEM进行授权。如果他没有把 这个访问的权限授权给SCOTT的话,则用户SCOTT就无法访问方案SYSTE下面的任何一个数据库对象。所以,方案就好像一个个保护罩,又把数据库逻 辑的分割成几个独立的区域。这个区域的主人可以任意访问内部的任何数据库对象。若其他用户想要访问这个区域的话,则必须要先经过这个区域主人的授权。这一 个个区域(方案)是用户的私人领地,未经允许他人不得进入。通过这种方式,用户就可以保护自己所建立数据对象的安全。

  在使用方案是,需要注意一些细节方面的问题。如在同一个方案中,不能够存在同名的对象;但是在不同的方案中,不同用户可以建立同名的对象。还有 当某个用户要访问其他方案的对象时,必须加入方案名最为前缀。也就说,要在数据库对象名之前加入主人的名字。这些是硬性规则,不能够打折扣。


开源时代的到来,对与技术人员是一个巨大的考验



QQ:876162454


分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
 第 1 页 总共 1 页 [共有 1 条记录]
ERP俱乐部 -> 数据库专栏 -> Oracle开发 -> 账户方案系统角色多管齐下保障Oracle的安全
(C)Copyright 2005-2020 www.erpclub.org All Rights Reserved.
Tel:+86-755-26444630
Email:webmaster@yok.com.cn