Manually setting up the Web Agent on Oracle HTTP Server (OHS) 12c
search cancel

Manually setting up the Web Agent on Oracle HTTP Server (OHS) 12c

book

Article ID: 44111

calendar_today

Updated On: 05-13-2025

Products

CA Single Sign-On SITEMINDER CA Single Sign On Agents (SiteMinder)

Issue/Introduction


Having installed a SiteMinder Web Agent on Oracle HTTP Server (OHS).

What are the manual steps to follow to make it work with the Oracle HTTP Server (OHS) on Linux? 

 

Environment


Web Agent 12.52SP1CR11 on Oracle HTTP Server (OHS) 12c on RedHat 7.

 

Resolution


Here are the steps required to configure Oracle HTTP Server (OHS) 12c manually with the Web Agent:

1. Changes to httpd.conf file at /<Instance Directory>/instance1/config/OHS/<server>.

   a. Add LoadModule entry to the DSO Support Section

      The following line is added to the Dynamic Shared Object (DSO) Support configuration section, which precedes the Main server configuration section of the file.

      LoadModule sm_module "<web_agent_home>/bin/libmod_sm24.so"

      e.g.

      LoadModule sm_module "/<web_agent_home>/bin/libmod_sm24.so"

      Note: As Oracle HTTP Server (OHS) 12c is based on Apache 2.4, the libmod_sm24.so library needs to be loaded, other library files will not work.

   b. Add SmInitFile Entry

      This entry is placed after the LoadModule entry that you added in (1.).

      A full path is used, not a relative path.

      SmInitFile  "/<Path_To_The_Component_Directory>/OHS/<component_name>/WebAgent.conf"

      E.g.

      SmInitFile "/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>/WebAgent.conf"

      Note:

      In the above example , <server> is the component/instance name.

   c. Alias Entries Added

      In the Aliases section of the file, following entries are added to enable SiteMinder features.

      Note:

      The Alias /siteminderagent/ "<web_agent_home>/samples/" entry must come after all other aliases in the Aliases section.

Alias /siteminderagent/nocert/[0-9]+/(.*) "/<web_agent_home>/$1"
<Directory "/<web_agent_home>/$1">
Options Indexes MultiViews
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/pwcgi/ "/<web_agent_home>/pw/"
<Directory "/<web_agent_home>/pw/">
Options Indexes MultiViews ExecCGI
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/pw/ "/<web_agent_home>/pw/"
<Directory "/<web_agent_home>/pw/">
Options Indexes MultiViews ExecCGI
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/ "/<web_agent_home>/samples/"
<Directory "/<web_agent_home>/samples/">

      E.g.

Alias /siteminderagent/nocert/[0-9]+/(.*) "/<web_agent_home>/webagent/$1"
<Directory "/<web_agent_home>/$1">
Options Indexes MultiViews
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/pwcgi/ "/<web_agent_home>/pw/"
<Directory "/<web_agent_home>/pw/">
Options Indexes MultiViews ExecCGI
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/pw/ "/<web_agent_home>/pw/"
<Directory "/<web_agent_home>/pw/">
Options Indexes MultiViews ExecCGI
AllowOverride None
Require all granted
</Directory>
Alias /siteminderagent/ "/<web_agent_home>/samples/"
<Directory "/<web_agent_home>/samples/">

2. Create WebAgent.conf file with the following content and copy it to the directory:

    "/<Path_To_The_Component_Directory>/OHS/<component_name>"

    E.g.  "/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>/WebAgent.conf"

# WebAgent.conf - configuration file for SiteMinder Web Agent
# Web Agent Version = 12.52, Build = 2112, Update = 1.5

LOCALE=en-US

HostConfigFile="/<web_agent_home>/config/SmHost.conf"
AgentConfigObject="<name_of_aco>"
EnableWebAgent="Yes"
ServerPath="/<Path_To_The_Component_Directory>/OHS/<component_name>"
LoadPlugin="/<web_agent_home>/bin/libHttpPlugin.so"
AgentIdFile="/<Path_To_The_Component_Directory>/OHS/<component_name>/AgentId.dat"

    E.g.

# WebAgent.conf - configuration file for SiteMinder Web Agent
# Web Agent Version = 12.52, Build = 2112, Update = 1.5

LOCALE=en-US

HostConfigFile="/{web_agent_home}/config/SmHost.conf"
AgentConfigObject="<aco>"
EnableWebAgent="Yes"
ServerPath="/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>"
LoadPlugin="/{web_agent_home}/bin/libHttpPlugin.so"
AgentIdFile="/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>/AgentId.dat"

    Note:

    If SmHost.conf is not already created, create one by registering the agent with the policy server using smreghost.sh script.

3. Create AgentId.dat file with the following content and copy it in /<Path_To_The_Component_Directory>/OHS/<component_name> directory

   E.g.  "/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>/AgentId.dat"

   GUID=<value>

   Specify unique GUID value for each of the Agent Instance

4. Change ohs.plugins.nodemanager.properties file at /<Path_To_The_Component_Directory>/OHS/<component_name> directory.

   E.g.  "/{home_OHS}/user_projects/domains/base_domain/config/fmwconfig/components/OHS/<server>/ohs.plugins.nodemanager.properties"

   Adding following entries right below the line where it says "#Environment variable configuration"

environment.NETE_WA_PATH = /<web_agent_home>/bin
environment.NETE_WA_ROOT = /<web_agent_home>
environment.append.1.PATH = $NETE_WA_PATH
environment.append.1.LD_LIBRARY_PATH = $NETE_WA_PATH
environment.CAPKIHOME = /<web_agent_home>/CAPKI

   E.g.

environment.NETE_WA_PATH = /<web_agent_home>/bin
environment.NETE_WA_ROOT = /<web_agent_home>
environment.append.1.PATH = $NETE_WA_PATH
environment.append.1.LD_LIBRARY_PATH = $NETE_WA_PATH
environment.CAPKIHOME = /<web_agent_home>/CAPKI