1 Reply Latest reply on Mar 6, 2013 10:54 AM by Christian Neumueller-Oracle

    Pass header variable from OAM to Apex and read it in Apex application

      We have integrated Oracle Access Manager 11gR1 with Oracle Apex 4.1. The OAM-Apex integration is working fine. Now we want an additional header variable to be passed from OAM to the Apex application. This new header variable will be user's sAMAccountName in Active Directory. OAM is integrated with AD and the AD users are successfully able to access the Apex applications.

      The three header variables which are configure in OAM right now are:
      Header variable name Value
      1. OAM_REMOTE_USER $user.userid
      2. OAM_REMOTE_USER_EMAIL $user.attr.mail
      3. OAM_REMOTE_USER_GROUPS $user.groups

      We need an additional header variable as mentioned below:
      Header variable name: OAM_SAMACCOUNTNAME
      Value: $user.attr.samaccountname

      The new header variable was added in the OHS server's dads.conf file like shown below:
      =========== dads.conf =============
      PlsqlCGIEnvironmentList HTTP_OAM_REMOTE_USER
      PlsqlCGIEnvironmentList HTTP_OAM_REMOTE_USER_EMAIL

      But we are not able to read the value of this attribute in the Apex application.

      On the Apex application, we have a text box which shows the value of this header variable. This textbox is attached with the following stored procedure call to fetch the header variable:
      :P1_HEADER_VALUE := owa_util.get_cgi_env( 'HTTP_OAM_SAMACCOUNTNAME' );

      The textbox shows the correct value if HTTP_OAM_REMOTE_USER is passed to the get_cgi_env method but does not shows anything when HTTP_OAM_SAMACCOUNTNAME is passed to the same method.

      Please let me know if I am missing some configuration to pass the HTTP_OAM_SAMACCOUNTNAME haeder variable from OAM to Apex.

      Thanks for your help.