查看: 9596|回复: 27

《精通Oracle核心技术与项目实战》有奖试读活动

[复制链接]
论坛徽章:
49
现任管理团队成员
日期:2012-10-18 17:10:46妮可·罗宾
日期:2018-04-03 13:57:49
跳转到指定楼层
1#
发表于 2013-8-27 13:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
精通Oracle核心技术与项目实战》有奖试读活动
    活动已结束,现将获奖人员公布如下:
pastime_Wang
chszs
hai503
LuiseDalian
AppleVI
恭喜以上五位获奖者。
    本书全面、系统、深入地讲解了Oracle 数据库的各项相关技术。在讲解过程中,通过大量取自实际操作的实例,将Oracle 知识全面、系统、深入地展现给读者。另外,作者专门为本书录制了大量的配套教学视频,让读者更好地分析实例,在学习的过程中遇到问题时,可参考。
    本书内容涉及面广,从基本操作到高级技术和核心原理,几乎涉及Oracle11g R2 数据库的各个概念和特性。全书结构安排合理,实例丰富且浅显易懂,尤其适合广大程序员自学,也适合各种使用Oracle数据库进行开发的工程技术人员使用。

活动规则:
    阅读我们提供的图书试读章节来参加活动,写试读心得或根据提供的话题参与讨论!

本期讨论话题:
    1.你认为如何合理使用用户、权限和角色,最终保证数据库的安全?
    2.说说读完试读章节后您的感想。


活动须知:
    针对以上任意问题跟帖回答,我们会在讨论结束后,择优挑选5名网友赠送《精通Oracle核心技术与项目实战》这本书作为奖励。

活动时间:2013-8-28——2013-9-27

活动奖品:
   《精通Oracle核心技术与项目实战
   


求职 : 数据库管理员
论坛徽章:
2
宝马
日期:2013-09-17 17:12:56祖母绿
日期:2014-09-11 13:38:41
2#
发表于 2013-8-27 14:50 | 只看该作者
1.你认为如何合理使用用户、权限和角色,最终保证数据库的安全?

答:我个人认为,对于用户创建的话,都要是sys用户,或者system用户去创建,不要给别人创建用户的权限,这样你可以熟悉和掌握数据库。
对于给予权限,不要用级联选项,这样会破坏数据库的安全性,作为DBA也不能控制好数据库。
角色:把通用的权限给角色,并且要每个一段时间就要重建一下角色。

2.说说读完试读章节后您的感想。

答:试读章节介绍了基本的安全管理:其中包括角色、权限、用户以及概要文件的论述。让初级的DBA用很大的帮助。里面用OEM和命令分别介绍了管理用户、权限、角色的方法,包括创建、删除、修改等等。

使用道具 举报

回复
论坛徽章:
17
宝马
日期:2013-10-29 19:21:19宝马
日期:2013-10-29 19:21:19宝马
日期:2013-12-06 10:00:53宝马
日期:2013-12-06 10:00:53宝马
日期:2013-12-06 10:00:53宝马
日期:2013-10-30 13:52:00宝马
日期:2013-10-30 14:04:51宝马
日期:2013-10-30 13:52:00宝马
日期:2013-10-29 19:21:19宝马
日期:2013-09-17 17:12:56
3#
发表于 2013-8-27 15:55 | 只看该作者
關注..

使用道具 举报

回复
求职 : 数据库管理员
论坛徽章:
41
喜羊羊
日期:2015-05-08 16:18:362014年新春福章
日期:2014-02-18 16:48:49技术图书徽章
日期:2014-01-26 14:02:05福特
日期:2013-12-27 00:16:54劳斯莱斯
日期:2013-12-20 16:46:55劳斯莱斯
日期:2013-12-02 16:08:54问答徽章
日期:2013-11-12 20:51:23奔驰
日期:2013-10-25 20:19:39ITPUB社区12周年站庆徽章
日期:2013-10-08 15:00:34马上加薪
日期:2014-02-18 16:48:49
4#
发表于 2013-8-27 16:02 | 只看该作者
这是怎样一本书...

使用道具 举报

回复
论坛徽章:
63
2010广州亚运会纪念徽章:台球
日期:2010-10-18 12:43:48茶鸡蛋
日期:2013-01-09 10:59:002013年新春福章
日期:2013-02-25 14:51:24奥运会纪念徽章:帆船
日期:2013-04-02 17:07:052013年新春福章
日期:2013-04-08 17:42:48奥运纪念徽章
日期:2013-07-18 13:55:12优秀写手
日期:2013-12-18 09:29:10马上有车
日期:2014-03-20 16:13:24马上有房
日期:2014-03-20 16:14:11马上有钱
日期:2014-03-20 16:14:11
5#
发表于 2013-8-27 17:25 | 只看该作者
1.你认为如何合理使用用户、权限和角色,最终保证数据库的安全?
Oracle数据库的用户管理和权限管理是确保数据安全的主要手段。数据库系统层的安全机制分系统安全机制和数据安全机制。
对用户而言,只有授权用户才能访问数据库。Oracle初始状态下存在3个用户:sys、system、scott。前两者都是系统级用户,其中sys级别最高,而system是系统管理员,scott则是默认的测试用户,初始时被锁定。
Oracle数据库还有自带的用户,可通过数据字典dba_users进行查询。

在Oracle数据库,创建用户只是完成了用户设置的第一步。用户登录数据库后是不能做任何操作的。这就需要对用户授予权限。
Oracle的权限分为系统权限和对象权限。系统权限表示的是对数据库级的操作。对象权限表示的是对表对象、视图、存储过程、触发器等操作的权限。
Oracle的数据字典dba_sys_privs、system_privilege_map描述了各种系统权限及权限分配情况。
要注意,在使用Oracle创建用户后,只给用户分配最合适的访问权限,不要随意分配权限。
至于权限的传递,则是权限分配的技巧,正确使用它,可以省去一些工作量。
要注意,被授予的权限是可以收回的。从一个指定的用户那里收回所有的权限时,并没有从Oracle中删除那个用户,也没有销毁该用户所创建的表,只是禁用了该用户访问这些表。

权限是针对用户或角色的。
与用户相关的数据字典视图:user_users、all_users、dba_users。
查看当前会话中的资源限制,可以使用user_resource_limits数据字典视图。
查询表的权限的数据字典视图:user_tab_privs、dba_tab_privs。
列的权限的数据字典视图:user_col_privs。
系统权限的数据字典视图: dba_sys_privs、session_ privs、user_sys_privs。

当Oracle用户较多时,使用角色来授权,无疑很省事。角色是一组指定的权限,这些权限是系统权限、对象权限或者两者的结合,用于帮助简化权限的管理。
查看Oracle的角色,使用数据字典dba_roles。
要注意,角色之间的权限也是可以传递的,可以将一个角色授予另一个角色。
角色也可以禁用和启用。

概要文件简称profile,如果数据库没有创建概要文件,那么系统将使用默认的概要文件default。概要文件可以用于用户,但是本能在角色中使用。概要文件可以实现强密码管理和限制用户使用的资源。
在profile中,主要存放的是数据库中的系统资源或者数据库使用限制的一些内容。

2.说说读完试读章节后您的感想。
这是一本好书,感觉难度不大,易读、易上手是这本书的特点,语言平实,试读仅提供了第20章的内容,讲述了Oracle数据库的安全管理,安全管理涉及用户、权限、角色。读了后觉得Oracle安全这部分已经熟练掌握了。希望能有机会得到此书,从头读到尾。

使用道具 举报

回复
求职 : 数据库管理员
论坛徽章:
3
ITPUB社区千里马徽章
日期:2013-08-22 09:58:03问答徽章
日期:2014-04-02 13:20:04马上有对象
日期:2014-12-21 11:18:07
6#
发表于 2013-8-27 18:14 | 只看该作者
适合初学者,核心技术我不敢说算不算,但真的挺全,还有很详细的操作步骤

使用道具 举报

回复
论坛徽章:
176
20周年集字徽章-20	
日期:2020-10-28 14:31:21ITPUB十周年纪念徽章
日期:2011-11-01 16:24:04ITPUB 11周年纪念徽章
日期:2012-09-28 17:34:42ITPUB社区12周年站庆徽章
日期:2013-08-13 16:52:38itpub13周年纪念徽章
日期:2014-10-08 15:21:35ITPUB14周年纪念章
日期:2015-10-26 17:23:44ITPUB15周年纪念
日期:2018-02-09 14:12:58ITPUB18周年纪念章
日期:2018-09-17 10:09:4919周年集字徽章-庆
日期:2019-08-27 15:07:44状元
日期:2015-11-19 12:58:23
7#
发表于 2013-8-27 20:07 | 只看该作者
1.你认为如何合理使用用户、权限和角色,最终保证数据库的安全?
Oracle数据库的提供的用户,可以很好的区分不同业务的存储和管理,也可以用于区分不同系统。
权限的控制,应该遵循授权最小化,在实际的应用中,往往忽视这一点,图省事对用户过多授权,这样的DB非常不安全,这些“漏洞”很可能被有心人利用。
角色的引入更加方便了授权的管理和维护,善用角色会使授权清晰有条理。

2.说说读完试读章节后您的感想。
从目录来看,本书可以作为reference来使用。最大的亮点还是对安全的讲解,这方面一般书籍都会忽视,看过本书,会对数据库安全有更深的了解。
PS.本书的截图非常值得表扬,sqlplus命令行使用的白底黑字,这样既方便阅读又环保(市面上不少黑底截图的书...),不管是作者还是出版社编辑,都表扬!

使用道具 举报

回复
论坛徽章:
249
Jeep
日期:2013-09-04 19:17:57Jeep
日期:2013-10-08 09:46:02Jeep
日期:2013-10-08 16:38:27Jeep
日期:2013-11-22 14:53:46Jeep
日期:2013-11-08 23:59:45Jeep
日期:2013-11-22 17:15:17Jeep
日期:2013-11-22 17:15:17Jeep
日期:2013-11-17 09:59:04季节之章:夏
日期:2015-01-28 14:58:51季节之章:春
日期:2014-12-25 16:20:50
8#
发表于 2013-8-27 22:14 | 只看该作者
关注一下

使用道具 举报

回复
论坛徽章:
490
红宝石
日期:2014-04-05 19:53:18海蓝宝石
日期:2014-04-05 21:24:30数据库板块每日发贴之星
日期:2013-05-27 22:53:45生肖徽章:鸡
日期:2014-08-24 18:39:29青年奥林匹克运动会-羽毛球
日期:2014-09-24 08:37:59马上有房
日期:2015-01-03 10:23:28喜羊羊
日期:2015-03-04 14:54:422015年新春福章
日期:2015-03-06 11:59:47秀才
日期:2017-04-06 18:09:28版主6段
日期:2014-05-27 02:19:57
9#
发表于 2013-8-27 22:24 | 只看该作者
顶起来。

使用道具 举报

回复
论坛徽章:
86
秀才
日期:2015-09-21 09:46:16目光如炬
日期:2014-07-28 06:00:03马上有钱
日期:2014-06-16 15:55:42马上有房
日期:2014-06-16 15:55:422014年世界杯参赛球队: 伊朗
日期:2014-06-13 11:29:242014年世界杯参赛球队:巴西
日期:2014-06-06 14:36:14马上有钱
日期:2014-04-04 13:51:21马上加薪
日期:2014-04-04 13:35:40马上有房
日期:2014-02-18 16:42:022014年新春福章
日期:2014-02-18 16:42:02
10#
发表于 2013-8-28 09:30 | 只看该作者
本帖最后由 buptdream 于 2013-8-28 13:33 编辑

在生产环境中需要严格控制研发人员的DDL权限,这种情况下,需要限制用户对数据库进行DDL,DML某些操作。如果单纯的进行限制,可以通过触发器来进行控制,语句如下:
CREATEORREPLACETRIGGERDDL_RESTRICT
BEFOREDROPORCREATEORTRUNCATEORALTERONDATABASE
  DECLARE
   BEGIN
IFORA_SYSEVENT()IN('DROP','CREATE','ALTER','TRUNCATE')
    ANDORA_DICT_OBJ_OWNER()IN('BUPTDREAM'AND
     ORA_DICT_OBJ_TYPEIN('TABLE')  AND      
      ORA_DICT_OBJ_NAME()NOTLIKE'%a%'AND   
     ORA_DICT_OBJ_NAME()NOTLIKE'%b%'AND     
     ORA_DICT_OBJ_NAME()NOTLIKE'%c%'THEN
    RAISE_APPLICATION_ERROR(NUM => -20000,
                            MSG =>'禁止'|| ORA_SYSEVENT() ||'  '||
                                   ORA_DICT_OBJ_OWNER() ||'用户下的'||
                                   ORA_DICT_OBJ_NAME() ||'表,请与DBA联系');
ENDIF;
END;
通过触发器可以实现控制开发人员对生产库的DDL操作,如果想要禁止delete的DML操作,也可以用触发器来实现。
      在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果直接将生产库的权限给某个用户,但是我们必须要已授权的表的名称前键入该表所有者的名称,所以这比较麻烦。
Oracle数据库中同义词是数据库方案对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典中保存了同义词的定义。在Oracle数据库中的大部分数据库对象,如表、视图、同义词、序列、存储过程、包等等,数据库管理员都可以根据实际情况为他们定义同义词。
     批量建立同义词的语句如下:
select' create public synonym '|| OBJECT_NAME ||
       ' for CMAPP_PRODUCTION.'|| OBJECT_NAME ||';'
  fromuser_objects
whereobject_typein
        ('TABLE','VIEW','PROCEDURE','TRIGGER','FUNCTION','PACKAGE');
同义词赋权的语句如下:

   SELECT'grant select,insert,update,delete  on '||
           OBJECT_NAME ||' to buptdream;'
     FROMUSER_OBJECTS
    WHEREOBJECT_TYPE ='TABLE';
   SELECT'grant select,insert,update,delete on '|| OBJECT_NAME ||
          ' to buptdream;'
      FROMUSER_OBJECTS
    WHEREOBJECT_TYPE ='VIEW';

   SELECT'grant EXECUTE on '|| OBJECT_NAME ||' to buptdream;'
     FROMUSER_OBJECTS
    WHEREOBJECT_TYPE ='PROCEDURE';

   SELECT'grant EXECUTE on '|| OBJECT_NAME ||' to buptdream;'
     FROMUSER_OBJECTS
    WHEREOBJECT_TYPE ='FUNCTION';

   SELECT'grant select on '|| OBJECT_NAME ||' to buptdream;'
     FROMUSER_OBJECTS
    WHEREOBJECT_TYPE ='SEQUENCE';
通过上述方法,我们可以控制研发人员对生产库的操作,在这个过程中,我们可以采用审计方式记录下每个操作,一旦权限被控制,很多数据库的风险被大大降低。
在数据库开发过程中,如果研发人员很多,进行相关的权限管理是非常重要的事情,可以大大减少数据库误操作的安全问题,触发器是一个方法,另外通过同义词,可以为每个用户单独建立用户,提高研发人员操作数据库时的专心程度,防止误操作的发生。


使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表