通行证: 用户 密码 网站建设  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>数 据 库>>Oracle>>正文 新版上线![旧版]
注:打开慢时请稍等

用 Oracle AS 10g 为PHP提供的一次性登录

http://www.iyit.net  日期:2007-1-4 17:07:42  来源:  点击:
参加讨论】PHP 和 Oracle Application Server
  
  PHP 是一种强大、灵活的开放源代码脚本语言,它一般用于在 web 页面中生成动态内容。(PHP 类似于 Perl,但远没有那么复杂。关于更多的背景知识,请访问 OTN 的开放源代码开发人员中心。}PHP 为大多数数据库产品(包括 Oracle)提供了一系列随取随用的丰富特性和服务(包括 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、XML、XSL)以及数据库访问模块。PHP 可以作为 CGI 在 Apache 下运行,或者可以配置为 Apache Web Server 模块。
  
  将 PHP 与 Oracle Application Server 集成非常容易,因为 Oracle HTTP Server 是一个 Apache Web Server。Mod_osso 作为 Apache 模块与 Oracle Application Server 集成在一起,因此利用该应用服务器的特性来保护 PHP 页面是一件很简单的事情。
  
  方法 1:PHP 代理页面方法
  Mod_osso 通过已注册的 URL 模式来保护 web 页面。它检查通过 Oracle HTTP Server 的所有请求;如果请求或 URL 包含了一个被保护的模式,而请求者还没有在 SSO 服务器上得到验证,那么该请求者将被重定向到 SSO 登录屏幕。SSO 启用 PHP 页面的代理页面方法利用了一个已注册的 URL 模式,该模式被映射到一个特定的 PHP 页面上。通过在 mod_osso.conf 文件中按下面的说明记录该模式,可以向 mod_osso 注册 URL:
  
  
  <Location /php_apps/ssoreroute.php>
  require valid-user
  authType Basic
  </Location>
  
  受保护的 PHP 页面充当您想要保护的其它所有 PHP 页面的代理。
  
 

  在图 1中,PHP 文件(SSOUtils.php;参见列表 1)充当库,它包含了一个名为 checkAuthenticated() 的用户自定义函数,并被包含在我们试图实现 SSO 的 PHP 页面(MyPage.php;参见列表 2)中。该函数在我们要实现 SSO 的页面上运行,并检查请求者是否已在 SSO 服务器上得到了验证。如果请求者还没有得到验证,那么请求者将被自动重定向到 php 代理页面,该页面的 URL 模式在 mod_osso 进行了注册。该 php 代理页面 (ssoreroute.php) 将调用页面的 URL 作为一个参数提取出来。请求者被 mod_osso 重定向到登录屏幕。在成功验证之后,请求者被重定向回 PHP 代理页面,该页面按顺序将请求者重定向回调用页面。
  
  函数 checkAuthenticated() 的 PHP 脚本非常简单:
  
  function checkAuthenticated(){
  
  $SSO_REROUTE = "/php_apps/ssoreroute.php?p_redirect_url=";
  $SSO_USER  = getenv("REMOTE_USER");
  
  if (empty($SSO_USER)){
  
  header("Location:".$SSO_REROUTE.$_SERVER['PHP_SELF']);
  
   }
  
  }
  
  PHP 代理页面的脚本同样很简单:
  
  <?php
  
  //重定向回被请求的页面。
  header("Location:".$_REQUEST['p_redirect_url']);
  
  ?>
  
  但登录只是 SSO 服务器完整功能的一部分。我们还能够注销,这通常称为一次性注销。注销基于 SSO 的页面是一个简单的重定向到 URL /osso_logout?p_done_url=<return url> 的操作。注销 URL 是 SSO 服务器的一个特性。
  
  下面的函数 ssoLogoutLink(<return url>) 创建了一条自定义的注销链接:
  
  
  function ssoLogoutLink($RETURN_URL=""){
  
  $DONE_URL = "";
  
  if (empty($RETURN_URL)){
  $DONE_URL=$_SERVER['PHP_SELF'];
  } else {
  $DONE_URL=$RETURN_URL;
   }
  
  $SSO_LOGOUT_URL = "/osso_logout?p_done_url=".$DONE_URL;
   
  $LOGOUT_LINK  = "<a href=\"".$SSO_LOGOUT_URL."\">Click here to Logout</a>";
  
  return $LOGOUT_LINK;
  
  }
  
  代理页面方法是一种非常简单的利用基本 mod_osso 功能来保护 PHP 页面的方法。不过它将请求者限制在了与 mod_osso 相关的默认注销和返回 URL 上。因而,这种方法没有提供非常细粒化的控制。相比而言,在接下来的内容中要讨论的方法通过使用 servlet 和动态指令提供了更细粒化的控制。

本新闻共3页,当前在第1页  1  2  3  


编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:关于提高Oracle数据库性能的四个误区
下一篇:你的INTERNAL帐号密码忘记了怎么办
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
Oracle数据的异地自动备份 Oracle数据库的ORA-00257故障解决过程 ORACLE的日志管理
关于提高Oracle数据库性能的四个误区 Oracle数据转储时字符集的转换规律 Oracle中集成安装客户端与应用程序
关于Oracle实例的进程结构和内存结构 Oracle家电行业供应链及制造管理方案 PHP比ASP优秀的七个理由
PHP模板高级篇总结 PHP模板引擎SMARTY 在PHP世界中选择最合适的模板--比较PHP
剖析PHP中的输出缓冲 Win2000下PHP服务器安装攻略 IIS环境下安装PHP5手记全攻略
PHP5:session会话的使用和分析 基于Oracle ADF的应用程序开发 PHP和ASP上传漏洞探究
Oracle数据库访问限制绕过漏洞 php作wap开发时遇到的问题  我在windows  XP上安装apache2.044+php
Apache+php,怎样打开session支持?? 在linux中怎么配置pdflib和php  高分! 怎么样同时解释.php和.php3的文件呀,急
最新更新 热点排行 推荐新闻
Oracle数据的异地自动备份
Oracle数据库的ORA-00257故障解决过程
ORACLE的日志管理
你的INTERNAL帐号密码忘记了怎么办
用 Oracle AS 10g 为PHP提供的一次性登
高手清除系统垃圾完全手册(3)
高手清除系统垃圾完全手册(2)
高手清除系统垃圾完全手册(1)
2007,个人站长何去何从?
QQ密技十五招
Oracle数据的异地自动备份
Oracle数据库的ORA-00257故障解决过程
ORACLE的日志管理
你的INTERNAL帐号密码忘记了怎么办
用 Oracle AS 10g 为PHP提供的一次性登
基于Oracle ADF的应用程序开发
Oracle家电行业供应链及制造管理方案
Oracle数据的异地自动备份
你的INTERNAL帐号密码忘记了怎么办
用 Oracle AS 10g 为PHP提供的一次性登
msn8.0下载、msn shell、msn8.0中文版
windows下如何修改右键菜单
网页里插入视频文件方法大全
金山词霸2007未上市即遭盗版
将自已的程序加到鼠标右键菜单里
QQ挂太阳专家 V1.0.3  下载
06年11月09日石家庄太和CPU、内存、硬
06年11月11日石家庄太和CPU、内存、硬
Windows Vista 5840简体中文版体验心得
QQ号码激活系统常见问题及解决方法
基于Oracle ADF的应用程序开发
高手清除系统垃圾完全手册(3)
高手清除系统垃圾完全手册(2)
高手清除系统垃圾完全手册(1)
2007,个人站长何去何从?
提示“虚拟内存”不足的怎么办
防止网吧电脑掉线现象的高级路由技术
QQ在Windows Vista下蓝屏故障的临时解
对网站改版方案建议 保持网站流量 
妙用ISEE三步将女友照片变为日历
简单实用 最新刷QQ等级方法 

设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2007 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息