在做siebel和OAM单点登录配置的时候,由于相关的资料比较少,所以花费的时间相对较多,不多说,直奔正题。
首先来了解下OAM与Siebel的集成是个怎么样的流程以及其架构
OAM与Siebel集成架构
OAM与siebel的集成验证过程主要是这样的:首先用户会去对siebel系统中的内容进行请求访问,webgate会对用户的请求进行拦截,并且会对该请求内容判断其是否为被保护的内容,如果为公开的内容,则返回内容给用户,反之,则webgate会去验证其session,存在相应的合法session的话,webgate会将头变量传递到siebel服务器。如果不存在合法的session,就会对用户进行验证。验证成功以后,OAM会执行定义在验证策略中的动作并且会设置映射到siebel系统中userID的HTTP头变量。最后webgate会重定向到用户所请求的siebel资源。
Siebel会对OAM设置的HTTP头变量进行判别,并对用户身份进行验证以及初始化session。然后用户可以对OAM进行保护的所有资源进行访问。如果Siebel判别不通过的话,用户会被拒绝访问,最后会被重定向到由管理员指定的另一个URL。
头变量是存储在Siebel Web Engine中的。

1. 安装IBM Ldap Client, GSKit
2. 创建用户
1. 创建siebel用户
2. 创建OID用户
3. 配置Ldap Adapter(服务器)
4. 配置组件参数
5. 配置eapps.cfg
6. 配置siebel.cfg
7. 配置siebel监听端口
8. 重启siebel
1. 安装IBM Ldap Client,GSKit
由于在我们配置的过程需要用到Ldap Adapter,然后使用Ldap Adapter需要安装IBM Client某些库的支撑。
安装介质:itds60-client-lin-ia32-ismp.tar








添加环境变量:
LD_LIBRARY_PATH=/opt/ibm/ldap/V6.0/lib:$LD_LIBRARY_PATH
创建siebel用户
在进行配置之前,我们需要在siebel系统中拥有配置过程需要使用到的三个用户
1. 匿名用户
2. 管理员用户
3. 测试用户
在siebel中创建三个用户(由于原先Siebel中已存在,我们就直接进行使用,不需要创建):
|
匿名用户
|
GUESTCST
|
|
管理员用户
|
SADMIN
|
|
测试用户
|
SADMIN
|
创建OID用户
分别对应着上述章节的每个siebel用户创建相关的OID用户,与此同时我们还需要一个OID可登录的管理员帐号,这里我们用的是orcladmin
1. GUESTCST:
cn=GUESTCST,cn=users,dc=XXXX,dc=com,dc=cn
注意:GUESTCST的mail属性设置为username=SADMIN password=SADMIN
![J6H75_YN)4JY{B4]WBZBF8I](http://blog.retailsolution.cn/wp-content/uploads/2011/10/J6H75_YN4JYB4WBZBF8I_thumb.jpg)
SADMIN
SADMIN即为可登录到Siebel数据库的帐号,密码,并且该帐号具有查看所有siebel表的权限(sse_role)。

通过浏览->网站地图->管理-服务器配置->企业浏览器->SBA_81->配置信息->LDAP Security Adapter进入到LDAP Security Adapter配置界面:

具体配置参数如下:
|
属性
|
值
|
说明
|
|
Application User
|
cn=orcladmin,cn=users,dc=xxx,dc=com,dc=cn
|
用以访问LDAP的Siebel用户的DN
|
|
Application Password
|
weblogic1
|
Orcladmin的密码
|
|
Base Dn
|
cn=Users, dc=xxxx,dc=com,dc=cn
|
LDAP的base DN
|
|
Credentials Attribute Type
|
mail
|
验证属性:即为刚刚我们用以存储DB登录帐号密码的属性mail
|
|
Security Adapter Dll Name
|
sscfldap
|
Security adapter dll 的名字
|
|
Port
|
3060
|
LDAP的端口
|
|
Propagate Change
|
True
|
|
|
Password Attribute Type
|
userpassword
|
在LDAP用以存储用户密码的属性
|
|
Server Name
|
xxxxxxx
|
LDAP服务器名称
|
|
Shared Credentials DN
|
|
|
|
Shared DB Password
|
SADMIN
|
用以连接Siebel数据库的密码
|
|
Shared DB Username
|
SADMIN
|
用以连接Siebel数据库的名称
|
|
Siebel Username Attribute Type
|
Cn
|
LDAP中用以存储siebel用户名的属性
|
|
Single Sign On
|
True
|
启用单点登录
|
|
Trust Token
|
DICK
|
自定义的Trust Token
|
|
Username Attribute Type
|
Cn
|
LDAP中用以存储用户名的属性
|

保存配置.
通过浏览->网站地图->管理-服务器配置->企业浏览器->SBA_81->服务器->组件->Sales Object Management(CHS)->参数进入到Sales_chs配置界面:
查询Sec*

配置以下两个参数:
|
Security Adapter Mode
|
LDAP
|
|
Security Adapter Name
|
LDAPSecAdpt
|
保存配置
进入到/app/siebel/sweapp/bin目录下,进行配置eapps.cfg文件:
进行需要配置的组件进行配置(这里我们配置的是sales_chs组件):
修改[sales_chs]如下:
[/sales_chs]
EncryptedPassword = False
AnonUserName = GUESTCST
AnonPassword = GUESTCST
Singlesignon = TRUE
TrustToken = DICK
UserSpec = SSO_SIEBEL_USER
UserSpecSource = Header
ConnectString = siebel.TCPIP.None.ZLIB://siebeltest:2321/SBA_81/SSEObjMgr_chs
WebPublicRootDir = /app/siebel/sweapp/public/chs
SiebEntSecToken = P8+0qD5UzVQBK00AAA==
进入到/app/siebel/siebsrvr/bin/chs目录,对siebel.cfg文件进行配置:
配置内容如下:
[LDAPSecAdpt]
SecAdptDllName = sscfldap
ServerName = XXXX
Port = 3060
BaseDN = cn=Users, dc=XXX,dc=com,dc=cn
SharedCredentialsDN =
UsernameAttributeType = cn
PasswordAttributeType = userpassword
CredentialsAttributeType = mail
RolesAttributeType =
SslDatabase =
ApplicationUser = cn=orcladmin,cn=users,dc=XXXX,dc=com,dc=cn
ApplicationPassword = weblogic1
HashDBPwd = FALSE
PropagateChange = TRUE
CRC =
SingleSignOn = TRUE
TrustToken = DICK
UseAdapterUsername = TRUE
SiebelUsernameAttributeType = cn
1. 正常关闭Siebel Server,Gateway Server以及Web Server
2. 备份/u01/app/siebel/web/ohs/conf/httpd.conf &highperformance.conf
3. 修改httpd.conf 内#Listen 7780 – >Listen 7777
4. 修改highperformance.conf
#Listen 7780
Listen 7777
ServerRoot /u01/app/siebel/web/ohs
DocumentRoot /u01/app/siebel/web/ohs/htdocs
5. 备份/u01/app/siebel/eappweb/bin/eapps.cfg
6. 修改/u01/app/siebel/eappweb/bin/eapps.cfg HTTPPort = 7780 – 7777
7. 重启Siebel 的APP,现在就可以正常访问了
注意:必须保证单点登录的端口与Sibel的端口一致。
停止siebel server
. /app/siebel/siebsrvr/siebenv.sh
stop_server all
停止gateway
. /app/siebel/gtwysrvr/siebenv.sh
stop_ns
停止Oracle http Server(OHS)
. ~/.ohs.env
opmnctl stopall
启动Oracle http Server(OHS)
. ~/.ohs.env
opmnctl startall
启动gateway
. /app/siebel/gtwysrvr/siebenv.sh
start_ns
启动siebel server
. /app/siebel/siebsrvr/siebenv.sh
start_server all
运行配置脚本
在安装完成Webtier 11.1.1.5.0后,执行以下脚本:
cd /u01/app/Oracle/Middleware/Oracle_WT1/bin/
./config.sh
配置过程
1. Specify Weblogic Domain:该domain需要填安装webtier所在的domain
上述步骤配置完成以后,可以通过http://idmdev.xxxxx.com.cn:7777/进行访问。
修改mod_wl_ohs.conf文件,设置其为Siebel proxy
添加以下内容到该文件:
<Location /sales_chs>
SetHandler weblogic-handler
WebLogicHost 172.31.2.32
WebLogicPort 7777
</Location>
重启OHS
运行以下命令进行重启
cd /u01/app/Oracle/Middleware/Oracle_WT1/instances/instance1/bin
./opmnctl stopall
./opmnctl startall
准备部署
运行如下脚本(【】中的不运行),准备部署OAM11g Webgate :
1. cd /u01/app/Oracle/Middleware/Oracle_OAMWebGate1/webgate/ohs/tools/deployWebGate/
2. ./deployWebGateInstance.sh -w /u01/app/Oracle/Middleware/Oracle_WT1/instances/instance/config/OHS/ohs -oh /u01/app/Oracle/Middleware/Oracle_OAMWebGate1
【./deployWebgateInstance.sh -w <Webgate_Instance_Directory>
-oh <Webgate_Oracle_Home>】
3. export LD_LIBRARY_PATH= /home/oracle/Oracle/Middleware/Oracle_WT1/lib
4. cd /u01/app/Oracle/Middleware/Oracle_OAMWebGate1/webgate/ohs/tools/setup/InstallTools
5. ./EditHttpConf -w /u01/app/Oracle/Middleware/Oracle_WT1/instances/instance1/config/OHS/ohs1 -oh /u01/app/Oracle/Middleware/Oracle_OAMWebGate1 -o webgate.conf
【./EditHttpConf -w <Webgate_Instance_Directory> [-oh <Webgate_Oracle_Home>] [-o <output_file>]】
注册Webgate Agent
1. 登录到oamconsole,选择首页的SSO代理中的新建 OAM 11g Webgate
新建 OAM 11g Webgate
2. 新建OAM 11g Webgate
1. 新建OAM 11g Webgate

2. 添加资源
资源列表:
受保护资源列表:
|
protectedResourcesList
|
/sales_chs/
|
公共资源列表
3. 点击应用按钮
![clip_image002[5]](http://blog.retailsolution.cn/wp-content/uploads/2011/10/clip_image0025_thumb.jpg)

4. 拷贝文件
根据上面创建成功的提醒,进入到所提示创建文件的目录下将
cwallet.sso
ObAccessClient.xml
两个文件拷贝到
/u01/app/Oracle/Middleware/
/Oracle_WT1/instances/instance1/config/OHS/ohs1/webgate/config
5. 在注册完毕以后注销oamconsole,然后重新登录,选择以下功能
![clip_image002[7]](http://blog.retailsolution.cn/wp-content/uploads/2011/10/clip_image0027_thumb.jpg)
1. 进行响应的编辑
添加以下值:
l SSO_SIEBEL_USER
名称:SSO_SIEBEL_USER
类型:标头
值:$user.attr.uid
l REMOTE_USER
名称:REMOTE_USER
类型:标头
值:$user.attr.uid
l OAM_REMOTE_USER
名称:OAM_REMOTE_USER
类型:标头
值:$user.attr.uid
![clip_image002[9]](http://blog.retailsolution.cn/wp-content/uploads/2011/10/clip_image0029_thumb.jpg)
至此,部署webgate完毕。
至此,配置完毕,可以进行登录测试