用心服务 创造品牌

首页 | 公务员 | 报关员 | 计算机 | 证券师 | 研究生 | 成考 | 自考 | 高考 | MBA | 英语 | 会计师 | 导游 | 医师 | 精算师 | 经纪师

您现在的位置: 21世纪考试网 >> 认证类考试 >> 计算机应用与软件 >> 报考指南 >> 正文 21世纪考试网助你一臂之力!

   报考指南

关于Oracle中的N层认证具体介绍

来源:www.21ks.net  作者:佚名 更新时间:2008-4-27 17:28:59


开发访问数据库的Web应用程序时,大多数开发人员要设置一个连接池(一批预先打开的由中间层保持的数据库会话期)来提高连接速度。应用程序从连接池获得连接,要比为每一个用户请求创建新的连接快得多。

连接池的缺点是每个用户要作为一个单一的、高级权限数据库账户向数据库注册。尽管Web用户通常是用他们唯一的身份向应用程序注册,但只要数据库已经被连接,则所有的系统用户就都是匿名的。

Oracle数据库在安全性方面有很好的声誉,因而利用它的重要安全性功能来执行你的应用程序安全性政策是非常适宜的。如果已知用户身份,该数据库就能够进行审计并实施基于角色的和细粒度化的访问控制,包括虚拟专用数据库(VirtualPrivateDatabase,VPD)。

Oracle至少提供两种在所有各层(tiers)保持用户身份的方法:代理认证和应用程序上下文参数CLIENT_IDENTIFIER。

代理认证
代理认证使中间层能够用"普通(generic)"或"应用程序(application)"账户对数据库的访问进行认证,然后即代表真实的用户建立轻便会话。一个代理会话可以通过提交用户的辨认名(DistinguishedName(DN)),即一个x.509证书,或全局唯一用户名来建立。

例如,为了允许用户Kyle通过具有角色admin的中间层(它作为用户webapp保持一个连接池)连接到数据库,数据库管理员首先授予如下的权限:ALTERUSERKyleGRANTCONNECTTHROUGHwebappWITHROLEadmin;

接着,该应用程序代码(在这里是一个servlet)翻译从Web接收到的用户名并建立如下所示的代理会话:

StringuserName=request.getRemoteUser();

InitialContextinitial=
newInitialContext();
OracleOCIConnectionPoolds=
(OracleOCIConnectionPool)
initial.lookup("jdbc/OracleOciDS");
oracle.jdbc.OracleConnectionconn=null;

Propertiesp=newProperties();
p.setProperty(PROXY_USER_NAME,username);
conn=ds.getProxyConnection(
PROXYTYPE_USER_NAME,p);

代理认证允许使用包括脚色在内的所有数据库安全性功能,但是它要求你设置真实的数据库用户(数据库或企业)。

使用CLIENT_IDENTIFIER

但是,假定你有成百上千的用户,而你不想为每个用户都设立一个Oracle数据库或企业用户。那么你也可以通过使用应用程序上下文将用户身份从中间层传递到该数据库。

应用程序上下文是一组可用于数据库会话的名字/值对。Oracle9i有预定义的应用程序上下文名字空间USERENV,它含有用户会话信息,包括预定义的属性CLIENT_IDENTIFIER。这一属性通常用作从全局应用程序上下文选取值的会话标识符,但是我们将稍加变更,将它用于保持Web用户标识符。

从servlet或EnterpriseJavaBeans(EJB)会话bean,应用程序代码将从Web请求检索用户名,然后调用内部PL/SQL过程设置CLIENT_IDENTIFIER:

StringuserName=request.getRemoteUser();
...(setuptheJDBCconnection)...
PreparedStatementps=conn.prepareCall(
"begindbms_session.set_identifier(?);
end;");
ps.setString(1,username);
ps.execute();

SELECTsys_context('userenv','client_identifier')FROMdual;

使用这种方法没有使用代理认证那样安全。因为任何人都能设置这个上下文值,你必须借助额外的安全性措施,如细粒度的访问控制和安全的应用程序角色等。你的应用程序还应在将数据库连接返回给连接池之前清除CLIENT_IDENTIFIER属性。

 
  • 上一篇认证类:

  • 下一篇认证类:
  • VIP俱乐部 | 我们优势 | 联系我们 | 学习问题 | 会员好评

    公务员考试辅导科目 精讲班 报 名
    主 讲 课 时 讲座
      最新公务员公务员考试辅导热点公务员 姚裕群 30课时 免费试听
      最新公务员注册会计师考试热点公务员 郑庆华 60课时 免费试听
      最新公务员报关员考试辅导热点公务员 覃珍珍 50课时 免费试听
      最新公务员职称英 语辅导热点公务员 王 霞 50-60 免费试听

    认证类录入:小雪老师    责任编辑:小雪老师 

    《关于Oracle中的N层认证具体介绍》来源于21世纪考试网,欢迎阅读关于Oracle中的N层认证具体介绍精华版。
       报考公务员所需要的全套资料     收藏全套公务员考试资料 更多>>
      最新公务员计算机等级考试 ·考试动态·报考指南·考试大纲·历年真题·模拟试题·复习资料·心得技巧最新公务员
      最新公务员计算机应用考试 ·考试动态·报考指南·历年真题·模拟试题·复习资料·心得技巧最新公务员
      最新公务员微软认证考试 ·考试动态·心得技巧·学习教程·试题中心·考试介绍最新公务员
      最新公务员Cisco认证考试 ·考试动态·考试指南·模拟试题·考试介绍最新公务员
      最新公务员软件工程师考试 ·软件设计师·数据库工程师·电子商务师·国际商务师·系统分析师·软件架构师·信息处理技术员·信息系统监理师·计算机英语最新公务员
       热 门 资 料 更多>>
     关于Oracle中的N层认证具体介绍
     
       推 荐 资 料 更多>>

     关于Oracle中的N层认证具体介绍

       考 试 辅 导 更多>>

       会 员 评 价(关于关于Oracle中的N层认证具体介绍的评价)
        网站介绍∶小陈老师的21世纪考试网,办的非常成功,极具口碑。全站拥有超过40G教学视频,八百套真题,三千篇模拟测试题,四万套学习资料和全面系统的教学文章。与一般公务员考试相比,我们无须注册、 永久免费提供学习帮助,非常值得备战公务员考试的朋友们学习和参考。
      收藏本站 | 会员好评 | VIP俱乐部 | 联系我们
       相 关 资 料 更多>>
    报考指南关于Oracle中的N层认证具体介绍
    如何在Java程序中实现FTP的上传下载功能
    新手学堂几个著名Java开源缓存框架介绍
    Java安全性综述安全性的基本要点
    区分Tomcat与Web服务器、应用服务器的关系
    宿主机WindowsXP与虚拟机Linux之间Telnet
    UbuntuLinux下AzureusNAT设置问题解决
    WindowsXP管理搞定Vista、XP双系统
    Linux系统下检测U盘是否已连接的方法
    深入剖析WindowsVista音量种类全介绍
    WindowsXP系统下安装apache+php+mysql
    电脑操作误区面面观
    系统基础格式化磁盘分区须谨慎
    选择一款最“合身”的操作系统
    防范在先关于电脑病毒基础知识的识别
    安装网卡驱动常见故障及解决方法
    微软推出MCM新认证为MCA认证必要前提
    湖南2008年下半年湖南省软考报考工作实施细则
    福建:08年下半年软考名称、时间及科目表
    福建:2008年下半年软考报考简章
    福建08年下半年计算机软件考试各报名点现场服务
    2008年关于Oracle中的N层认证具体介绍
       资料搜索一点通
       课 程 学 习 更多>>

       网 站 辅 导 更多>>
    公务员考试: 新闻·政策·申论范文·精彩面式·行政能力·基础知识·招警考试
    认证类考试: 计算机等级·计算机软件·微软认证·Cisco认证
    学历类考试: 研究生考试·成人高考·自学考试·普通高考·MBA(MPA)考试·英语资料
    资格类考试: 注册会计师·导游证·统一司法·执业医师·精算师·保险经纪人·证券分析师·报关员考试
       热 门 专 题  

       会 员 帮 助  

    关于Oracle中的N层认证具体介绍
    小雪客服/小艳客服(30分钟 内回答问题)
    QQ咨询业务咨询:569921419 代写文章业务咨询:点击留言 (上午8:30-晚上22:00)

    【查看留言】 【发表留言】


    备案:蜀ICP备05030541号 电话:0825-6699035 (0)13982585788 欢迎批评指正
    VIP俱乐部 | 我们优势 | 联系我们 | 支付平台 | 会员好评 | 友情链接 | 网站地图 | 版权申明 | 会员注册 | 常见问题
    CopyRight © 2006~2010 www.21ks.net All Rights Reserved
    荣誉出品:公务员之家 世纪秘书网 世纪考试网