- 热门文章:
- · WebLogic Platform 7.0赢得…
- · WebLogic Portal 8.1
- · WebLogic Portal 8.1 Beta系…
- · WebLogic Portal 8.1 Beta系…
- · WebLogic Portal 8.1 Beta系…
- · WebLogic Portal7.0 利用统…
- · JSR 168和Struts支持包使用…
- · 对亚洲本地的WebLogic Port…
- · WebLogic Portal7.0 利用统一用户档案(UUP) --- 下注在技术更替的关键时刻
- · WebLogic Platform 7.0赢得Web服务开发者青睐的“三大法宝”
- · WebLogic Portal 7.0 上开发小结
- · 使用WebLogic SIP Server和WebLogic Workshop驱动Cantata媒体服务器
WebLogic Portal 7.0 上开发…
一、 Weblogic Platform Portal 7.0上配置iPlanet LDAP Authenticator
LDAP Authenticator的配置主要是确定WebLogic服务器中的LDAP Authenticator如何与LDAP服务器进行通信以及描述用户与用户组如何保存在LDAP目录中。我在Weblogic Portal 7.0上配置iPlanet LDAP Authenticator的步骤如下:
1、在iPlanet LDAP上的配置
在iPlanet LDAP上必须建立一个用户,它的UID和Password必须和Portal Server的Administrative User的user name 和password一样。具体配置步骤如下:
a 如下图进入Directory页面,在你的domain上选择People(请参考下图,本例中为wlp下的People,wlp是在安装LDAP时设置的suffix):
b 右键点People,添加一个用户如system,它的UID和Password必须和Portal Server的Administrative User的user name 和password一样(本例中为system/password):
c 在People下你也可以建立其他的Group和user。
2、在WebLogic Portal7.0上的配置:
与WebLogic Server不同,WebLogic Portal Domain缺省的安全域是CompatibilityRealm,因此我们需要在CompatibilityRealm下进行系列配置。
a 进入CompatibilityRealm->Authenticator点击configure a new Iplanet Authenticator…:
b 输入Name,可以选择control flag
c 填写LDAP Server的host及port。Principal必须是你所建立的用户(即UID和Password和WebLogic Portal Server的Administrative User的user name和password一样的用户)的entrydn。(在本例中为system用户的entrydn)
其他的Users、Groups、Memebership、Detail可以进行相应的配置。通过以上配置LDAP Authenticator与iPlanet LDAP Server就可以通信了。如果你要把用户与用户组的信息保存在LDAP目录中,肯定还有一些工作要作了。另外iPlanet安装完后,在其java目录中提供了一个开发包ldapjdk.jar,它包含了有用的一些API函数,可以用它写程序来操作LDAP,详细信息请参考iPlanet LDAP的相关文档。
二、 域的资源调用
在开发中碰到一个现象:我们写了一个portlet,它要调用部署在另一个domain上的EJB,当以everyone登录时,它可以lookup到EJB正常地工作,但当把这个portelt分配给不是everyone的组时,调用时会抛出java.lang.SecurityException。经分析出现这个现象的原因是:Weblogic Server有一个缺省的everyone组,如果用户是everyone这个组的成员,两个域之间的访问是没有问题。在WebLogic Server7.0中两个域之间的访问是需要信任的(这在WebLogic Server6.1上是不需要的),我们需要把两个域的credentials "password"设置成一样的就可以了。
操作步骤如下:
- Click on <myNameDomain> at the top of the tree view
- Click on the "Security" tab
- Click on the "Advanced" tab
- CLick on the "Change..." link next to "Credential"
- Set you password
Repeat on the other server
三、 Portal与Domino的集成
WebLogic Portal与Domino的集成你可以如下两种选择:
1、使用Compoze公司(http://www.compoze.com)预置的portlets来直接集成(好像Compoze对Bea的正式用户是免费的):
你可以在compoze网站注册一个用户,然后上该网站下载一个叫“Harmony Portlets for BEA Weblogic Portal7.0”的包,它里面带有“
Harmony for Lotus Domino”模块。
注册后它会通过email发给你一个Evaluation的license。安装成功后,剩下的就只需要在Domino和WebLogic Portal上进行一些简单的配置了,具体过程请参考compoze的说明文档(在安装后的…\harmony_portlets_bea-7.0\docs下的pdf文件)上有详细的说明。
在”Harmony for Lotus Domino”3.0的版本中,对双字节的支持有问题,中文显示为乱码。为了显示正确,需要修改compose的程序。在2003年1月23日compose公司新推出了Harmony for Lotus Domino”3.1的版本,应该增强了对双字节的支持,不过我没有做过测试。
2、可以使用lotus提供的Toolkit自己做它们的集成。
Toolkit是Lotus自己提供的Java API,它是通过调用Notes用来操作Domino数据库的,就像Type 2 的 JDBC Driver,所以在运行你的JavaCode的客户机上需要装Notes。Toolkit可以到http://www.lotus.com上去下载。如果你熟悉Domino和BEA portal的开发,可以试试。
四、 在WebLogic Portal Server中使用Jrockit
为了提高运行速度,你可以使用Jrockit:
1、 修改weblogic700\portal\bin\win32\set-environment.bat中的JDK_HOME环境变量为Jrockit(如:set JDK_HOME=f:\jrockit\jre\1.3.1);
2、 将weblogic700\portal\bin\win32\startWeblogic.cmd中的if "%JAVA_VM%"=="" set JAVA_VM=-hotspot注释掉;
3、 将portalDomain\startPortal.bat中的set MEM_ARGS=-Xms128 -Xmx128m -XX:MaxPermSize=128注释掉。
五、 SSO(单点登录)的实现
1、 使用第三方产品:
WebLogic Portal可以使用第三方的具有单点登录功能的安全产品。如:Netegrity公司的产品:SiteMinder,它是基于目录的门户管理系统,由两部分组成,SiteMinder Policy Server 和SiteMinder Agents。Policy Server向基于网络的应用提供了政策管理,鉴定,授权和会计服务。SiteMinder Agents 包括Web Agent, Affiliate Agents和Application Server Agents。Web Agent 和标准的网页服务器相整合,使SiteMinder可以根据定义好的安全政策管理对网页及其内容的访问。Affiliate Agent 在相关站点的网络服务器上运行并提供单一登录,向相关站点的用户提供个性化内容。Application Server Agent和应用服务器的HTTP 服务器相联系,以保护Java 2 platform,Enterprise Edition(J2EE)等组件。SiteMinder通过一系列不同的机制管理每个用户的认证。一旦认证完成,SiteMinder即为该用户生成一个Strongly Encrypted SSO 单据 (cookie)。这个cookie本身并不含有任何密码、信用信息或用户信息等。当该用户访问另一台Web服务器或另一个域的应用时,SiteMinder使用这些信息,而不用对用户进行再次认证。SiteMinder还 提供了SAFE (Secure Access For Enterprises),即一整套使开发人员能够轻松地扩展并与SiteMinder功能进行集成的工具、API和文档。
2、 自己开发实现
WebLogic Server7.0支持很多的安全协议和标准,提供了安全域的集成机制。你还可以对WebLogic Portal进行一些二次开发。当然要实现SSO还有很多工作要做了。
六、 几个版本的小结:
1、WebLogic Portal7.0.0.1:在无网络连接情况下做Hot Deploy操作时会失败,可以采用手工Deploy:(其原因是部署描述文件中使用的DTD找不到)
操作步骤可参考如下文件:
http://edocs.bea.com/wlp/docs70/dev/deploy.htm#998197
2、WebLogic Integration 7.0 SP1(WLI 7.0 SP1)在中文环境下运行wliconfig.cmd会抛出:java.util.MissingResourceException异常,这是因为WLI采用当前JVM默认的区域设置,如果我们使用的是中文Windows操作系统,返回的Local是zh_CN,而WLI中并没有提供zh_CN的资源属性文件,所以会抛出上述异常。一个解决方案是修改wliconfig.cmd,为虚拟机追加language和region系统属性;把7.0sp1上的wliconfig.jar用7.0.0.1或7.0sp2上wliconfig.jar替换掉也可以。
3、 WebLogic7.0 SP1对双字节的支持比之前的版本增强了很多。
由于时间仓促,本文肯定存在许多不足之处,对此还望读者不吝指正。
| 作者简介 | |
| 徐春好是(dev2dev ID: 木刀) BEA系统(中国)有限公司 渠道部技术顾问 | |
- · 对企业级Java应用程序及其部署进行建模
- · 使用敏捷流程和建模构建企业应用程序
- · WebLogic Real Time 1.0“Trader”应用程序性能分析
- · WebLogic Real Time简介
- · 升级到WebLogic 9的十大理由
- · WebLogic Workshop集成.NET…
- · 升级到WebLogic Server 7.0
- · WebLogic Server 环境下先进…
- · WLS 6.0测试中的JNDI 和Web…
- · WebLogic 7.0平台:灵活适应…
- · 大规模的财政应用和面向服务…
- · HTTP会话对象 VS 有状态EJB
- · 使用JMX监控应用程序内、外…
- · 实体bean的承诺
- · 并行业务逻辑处理
- · 使用 EJBGen:"一个对三个"
- · HTTP会话对象 VS 有状态EJB
- · WLS 6.0测试中的JNDI 和Web应用
- · WebLogic Server 环境下先进的JMS设计模式
- · 项目推出:针对WLS 7和8.1的COMMONJ WORK MANAGER
- · JMS集群第1部分
- · WebLogic平台的Web SSO(SAML)解决方案
- · WebLogic8中的扩展JSP标签实例解析
- · 解决打开文件过多的问题
- · 使用JMS在集群应用程序中分配任务
- · WebLogic Workshop 8.1 Jav…
- · BEA Workshop8.1之Java Pag…
- · WebLogic Server8.1新功能介…
- · 总结:第一个Java控件
- · 教程:构建第一个Java控件
- · 用WebLogic Workshop开发EJB
- · 用WebLogic Workshop调试应…
- · WLS 9.1与MQ v5.3 通过JMS Bridge通信配置
- · 在Apache Xindice中保存XML文档
- · 升级到WebLogic 9的十大理由
- · 在JAVA EE环境下使用Kodo EJB
- · Weblogic Server 9新特性:J2EE Libraries 和 Optional Packages
- · WebLogic Server 9新特性:JSR-181 Web Services
