In CA Data Manager when connecting to Vcenter SQL Server using Windows authentication, Data manager fails to fetch the server list.

Document ID : KB000021628
Last Modified Date : 14/02/2018
Show Technical Document Details

Issue:

In CA Data Manager when connecting to Vcenter SQL Server using Windows authentication, Data manager fails to fetch the server list.

Figure 1

 

Additional Information:

Catalina.log records following information:

Feb 8, 2012 9:29:22 AM org.apache.catalina.session.StandardManager doLoad
SEVERE: IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.hyperformix.athens.beans.LoadDetailsSummary
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.hyperformix.athens.beans.LoadDetailsSummary
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1333)
Feb 8, 2012 9:29:22 AM org.apache.catalina.session.StandardManager start
SEVERE: Exception loading sessions from persistent storage
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.hyperformix.athens.beans.LoadDetailsSummary
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1333)
Feb 8, 2012 9:33:02 AM com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>
WARNING: Failed to load the sqljdbc_auth.dll

stdout.log records following information:

db_query...2 SERVERLIST_MAPPING_FILE Hyp_Vmware_VC40_Weekly.xml
com.microsoft.sqlserver.jdbc.SQLServerException: This driver is not configured for integrated authentication.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2338)

Note: This problem was tested with CA Data Manager on a Windows Server 2008 x64 and Windows Server 2008 R2.

 

Solution:

To connect Data Manager using an AD account, the apache service should be set to run with the AD account and then use the sqlijdbc_auth.dll and the jdbc url connection to use "integratedsecurity=true". The service credential will be used in when making the connection. The drawback is that since the service can run under only one account, Only one user connection is supported. If that user has access to multiple databases (say SCOM and VMware) then it will work for both.

The steps below enables to authenticate AD account.

  1. Download "Microsoft SQL Server JDBC Driver 3.0" from http://www.microsoft.com/download/en/details.aspx?id=21599

  2. Run the "sqljdbc_3.0.1301.101_enu.exe" from c-drive, it extracts to a folder "C:\Microsoft SQL Server JDBC Driver 3.0"

  3. Copy "sqljdbc_auth.dll" file from "C:\Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\enu\auth\x64" to following folders

    "C:\Program Files\Hyperformix\DataManager4.3\jre\bin"
    "C:\Windows\System32\" directory.

  4. Copy "sqljdbc.jar" file from "C:\Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\enu\" to following folders

    "C:\Program Files\Hyperformix\DataManager4.3\jre\bin"
    "C:\Program Files\Hyperformix\DataManager4.3\ApacheTomcat\lib"

  5. Add "C:\Windows\System32" and "C:\Program Files\Hyperformix\DataManager4.3\jre\bin" at the end of PATH variables.

  6. Restart "ApacheTomcat DMServe" service with the AD account used to connect to SQL server.