Search This Blog

SBL-SEC-00102: Error loading the security adapter library

Applies to:

Siebel System Software - Version 8.0.0.1 [20408] to 8.2.2.2 SIA[23016] [Release V8]
Information in this document applies to any platform.
Product Release: V8 (Enterprise)
Version: 8.0 [20405]
Database: Oracle 10.1.0.4
Application Server OS: Red Hat Linux 4.0
Database Server OS: Sun Solaris 9

This document was previously published as Siebel SR 38-3467659813.


Symptoms

Hi, we're trying to setup a PoC of Siebel 8.0 on Linux Redhat 4.0 and had encountered issue while trying to config LDAP authentication and an error had ocurred in the OM log file. IBM LDAP 6.0 Client is installed and is using OID 10.1.2 as the LDAP Server.

We have repreatedly verified LDAPparameters many times and believed we have setup the right parmeters.

We got the following error in the log file:

SBL-SEC-00102 An error occurred loading the security adapter library. Please contact your system administrator for assistance.

SBL-DAT-00562 An error occurred loading the security adapter library. Please contact your system administrator for assistance


Btw, logfile and siebns are attached for your reference..

Cause

Change Request 12-1LDF7SJ

Solution

Message 1

Please assign this SR as soon as possible. This is becoming critical for the customer .

Many Thanks

Message 2

For the benefit of other readers

The customer was implementing LDAP authentication with Siebel 8.0 on Red Hat Linux 4.0 with Oracle Internet Directory.

After configuring the LDAP Adapter and restarting the Siebel Server the Object Manager startup would fail with the following errors:

GenericLog GenericError 1 0000000646fb2542:0 2007-09-27 20:38:39 (secmgr.cpp (2407) err=4587622 sys=0) SBL-SEC-00102: An error occurred loading the security adapter library. Please contact your system administrator for assistance.
ObjMgrSessionLog Error 1 0000000646fb2542:0 2007-09-27 20:38:39 (physmod.cpp (9244)) SBL-DAT-00562: An error occurred loading the security adapter library. Please contact your system administrator for assistance.
ObjMgrSessionLog Error 1 0000000646fb2542:0 2007-09-27 20:38:39 (model.cpp (5867)) SBL-DAT-00562: An error occurred loading the security adapter library. Please contact your system administrator for assistance.
ObjMgrCTLog Error 1 0000000646fb2542:0 2007-09-27 20:38:39 (ctxtmgr.cpp (4492)) SBL-SVC-00208: Please login first.

The customer confirmed that the IBM LDAP Client 6.0 was already installed. After further investigation it was found that the LDAP Client libraries needed to be added to the LD_LIBRARY_PATH set in /siebsrvr/siebenv.sh. siebenv.sh was modified as follows:

[....]

Message 3

[....]

if [ a${LD_LIBRARY_PATH} = ${LD_LIBRARY_PATH}a ] then LD_LIBRARY_PATH=${SIEBEL_ROOT}/lib:${SIEBEL_ROOT}/lib/odbc/merant:/opt/ibm/ldap/V6.0/lib:${MWHOME}/lib:${SQLANY}/lib:/usr/lib
else LD_LIBRARY_PATH=${SIEBEL_ROOT}/lib:${SIEBEL_ROOT}/lib/odbc/merant:/opt/ibm/ldap/V6.0/lib:${MWHOME}/lib:${SQLANY}/lib:/usr/lib:${LD_LIBRARY_PATH}
Fi

After making this change LDAP Authentication worked correctly. Change Request 12-1LDF7SJ was logged for a documentation defect.





Applies to:

Siebel CRM - Version 7.5.3.4 [16180] and later
Information in this document applies to any platform.
*** Checked for relevance on 29-JAN-2013 ***

Symptoms

Customer is trying to implement the LDAP security adapter (LDAPSecAdpt) for use with the Siebel application.  The application object manager is failing to bring up a login screen and the following error is appearing in the log file:

SBL-SEC-00102: Error loading the security adapter library. Please contact your system administrator.

The desired behavior is that the security adapter library should load successfully and a login page be presented to the user.

Cause

This behavior occurred because the server had to be physically rebooted after the installation of the IBM LDAP Client and/or GSKit software.

Solution

After some investigation, we determined that it is necessary to physically reboot the server after the installation of the IBM LDAP Client or GSKit software. Once this was done, everything worked correctly.

This requirement is not documented in the Siebel Bookshelf documentation.
Document Enhancement Request Bug:10575898/ 12-1UX6R4P to update the Security Guide with this information.




Applies to:

Siebel Financial Services CRM - Version 8.0.0.1 [20408] to 8.1.1.2[21215] [Release V8]
Information in this document applies to any platform.
***Checked for relevance on 03-Jan-2011***
***Checked for relevance on 23-Nov-2012***


Symptoms

We are trying to implement a Custom Security Adapter to perform application login authentication. We have downloaded the sample SDK from support web, compiled and deployed to our testing environment. We have also configured one of the AOM to test out the compiled security adapter. Unfortunately, we are unable to load the application login page. Based on the attached log file, the error message is as below:

"SBL-SEC-00102: An error occurred loading the security adapter library. Please contact your system administrator for assistance."

Cause

Incorrect setup/configuration on the custom security adapter named subsystem and configuration file or security adapter library compilation issue.

Solution


Verify the following is correct.
- Parameter setting in custom security adapter named subsystem
- Setting in the configuration file reference in ConfigFileName parameter in custom security adapter named subsystem
- LIBPATH environment variable setting

Setup the sdk custom adapter authentication and configuration in-house and successfully reproduce the issue when using the same compiler (g++) and makefile as customer.
Further research on these and found the issue on the sdk compilation. The makefile from customer is like this.

libsampsdk.so: secsamp.o secutil.o
g++ secutil.o secsamp.o -o libsampsdk.so

secsamp.o: secsamp.cpp secutil.h ssecurity.h
g++ -c secsamp.cpp

secutil.o: secutil.cpp secutil.h ssecurity.h
g++ -c secutil.cpp

Note that after compiling the secsamp.cpp and secutil.cpp with g++ -c swtich and option, it will create the .o file. Once this dependencies (secsamp.o and secutil.o) for the shared object secsamp.so have been created, there is need to invoke the linker using additional switch and option to create a dynamic library. So modify the makefile as below and recompile the sample code.

libsampsdk.so: secsamp.o secutil.o
g++ -fPIC -shared secutil.o secsamp.o -o libsampsdk.so

secsamp.o: secsamp.cpp secutil.h ssecurity.h
g++ -c secsamp.cpp

secutil.o: secutil.cpp secutil.h ssecurity.h
g++ -c secutil.cpp

Using this newly compiled library file, object manager and application succesfully loaded and login works fine.





pplies to:

Siebel Communications Service - Version 8.0.0.2 [20412] to 8.1.1.8 SIA [23012] [Release V8]
Information in this document applies to any platform.

Symptoms

Siebel version 8.0 application does not start when the LDAP security adaptor is configured at enterprise level, although the mandatory IBM LDAP client version 6.0 has been installed. The following error messages are logged as a result,
a) SBL-SEC-00102: An error occurred loading the security adapter library. Please contact your system administrator for assistance.
b) SBL-DAT-00562: An error occurred loading the security adapter library. Please contact your system administrator for assistance.

Cause

The Siebel security adaptor library aka. libsscfldap.so could not be loaded because of the installation and configuration (LD_LIBRARY_PATH) of the 64bit libraries that are part of the IBM LDAP client software.

Solution

Ensure that the LD_LIBRARY_PATH in the siebenv.sh shell script only references the 32-bit libraries of the IBM LDAP Client version 6.0 because this ensures that the Siebel modules, which are based on 32-bit processing - do not conflict with the 64-bit library versions of the IBM LDAP Client software - as documented in Siebel Bookshelf version 8.0 > Siebel Security Guide > Security Adapter Authentication > Installing LDAP Client Software > Configuring the siebenv.csh and siebenv.sh Scripts for the LDAP Client - where it states, "Siebel supports only the IBM 32-bit LDAP Client so you can use only the 32-bit LDAP Client libraries with your Siebel applications."

Please follow the following steps, also outlined in the Siebel Bookshelf reference,
1) Navigate to the Siebel server root installation directory
2) Open a text editor on your UNIX system e.g. vi
3) For both the shell script files; SIEBENV.SH and SIEBENV.CSH edit them and ensure that ONLY the location to the IBM LDAP Client 32bit libraries are referenced.

NOTE: The 64-bit libraries can be explicitly identified from the directory path naming convention - that is,
32-bit  =  /opt/IBM/ldap/V6.0/lib
64-bit  =  /optIBM/ldap/V6.0/lib64




Applies to:

Siebel CRM - Version 8.0.0.1 SIA [20408] and later
Information in this document applies to any platform.

Symptoms

Siebel Login Page fails to display

ERRORS
1) The server you are trying to access is either busy or experiencing difficulties. Please close the Web browser, open a new browser window, and try logging in again.[08:22:46]
2) SBL-SEC-00102: An error occurred loading the security adapter library. Please contact your system administrator for assistance.

Cause

The IBM LDAP Client installation on UNIX defaults to /opt/ibm/ldap/V6.0.
The environment variables in the SIEBENV.SH referenced the wrong directory for the IBM LDAP libraries - namely /opt/ibm/ldap/v6.0/lib as opposed to /opt/ibm/ldap/V6.0/lib.
Because the resolution of filename paths on UNIX systems is case sensitive the difference between v6.0 and V6.0 caused the error.
Bug 14651929 has been logged requesting that the Security Guide be updated accordingly under Security Adapter Authentication > Process of Installing and Configuring LDAP Client Software > Configuring the siebenv.csh and siebenv.sh Scripts for the LDAP Client.

Solution

Modify the SIEBENV.SH to reference /V6.0/lib as opposed to /v6.0/lib


Applies to:

Siebel CRM Call Center - Version: 8.1.1.5 [21229] and later   [Release: V8 and later ]
Information in this document applies to any platform.

Symptoms


=== ODM Issue Clarification ===
This is in relation to a 8.1.1.5 siebel enterprise environment deployed on a RHEL 5.5 linux platform (64-bit).


When accessing the EAIObjMgr_enu component fails when using an external Java based command line utility, which is accessing the EAI component via EAI_enu SWSE web server.

Looking at the EAIObjMgr component we can see mainly authentication errors like the following error messages:
"An error occurred loading the security adapter library. Please contact your system administrator for assistance.(SBL-DAT-00562)" and before this error ".....err=4587622....SBL-SEC-00102..."

Cause


=== ODM Cause Determination ===

Executed: strace against start_server and EAI OM PID. There was no evidence that <custom adapter>.so lib was loaded.

Executed: file <custom adapter>.so
This showed: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped

Executed: ldd -v <custom adpater>.so
This showed:
>>>
      libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00002b536dd51000)
      libm.so.6 => /lib64/libm.so.6 (0x00002b536e051000)
      libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b536e2d4000)
      libc.so.6 => /lib64/libc.so.6 (0x00002b536e4e3000)
      /lib64/ld-linux-x86-64.so.2 (0x0000003d04c00000)

      Version information:
      ./cdetsnopassword.so:
              libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6
...
<<<

=== ODM Cause Justification ===

Looking at the file and ldd output, we can see that 64-bit libraries are used:

Siebel product is only 32-bit and will only work with 32-bit libraries.

Solution


=== ODM Solution / Action Plan ===

Compile the custom security adapter as per SDK documented compile commands.
Also ensure that modifications are implemented as per published article: 1062497.1 - Changes to Siebel Custom Security Adapter SDK in Siebel 8.1.1
Also, if on a 64-bit operation system,  ensure to modify the compiler instructions to compile in 32-bit mode. There could be different ways this can be done pending on the OS vendor. For any clarification please consult with the OS vendor support.

In this specific case the following compiler instructions helped to resolve the issue.
g++ -m32 -c -fPIC secsamp.cpp
g++ -m32 -c -fPIC secutil.cpp
g++ -m32 -fPIC -shared secutil.o secsamp.o -o <custom security adapter>.so
Please note, Oracle  is providing the SDK and compiler instructions solely as a convenience to our customers and
Oracle  makes no warranties or representations of any kind regarding the
results customers may achieve by using the SDK. Siebel is not responsible
for any failure of any security adapter written using the SDK.

Check with file and ldd command (library dependency check on Linux) to ensure no 64-bit library is being used.
For example in this case the output after compiling in 32-bit mode confirmed that there was no 64-bit library involved.
$ ldd <custom security adapter>.so
linux-gate.so.1 =>  (0xffffe000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xf7e82000)
libm.so.6 => /lib/libm.so.6 (0xf7e5b000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf7e4f000)
libc.so.6 => /lib/libc.so.6 (0xf7d09000)
/lib/ld-linux.so.2 (0x00473000)

Stop the siebel application server service.
Replaced this on the siebsrvr/lib
Start the siebel application server service

Test the siebel application authentication process.






No comments:

Post a Comment