IBM Support

In DataStage Designer, an error 'Specified security mechanism, (Unknown), is not supported by server' occurs when trying to connect via ODBC connector to a DB2 database

Troubleshooting


Problem

In Designer, when testing a connection to a DB2 database within the ODBC connector, the following error occurred. ODBC function "SQL Connect" reported: SQLSTATE = HY000: Natvie Error Code = 8,339: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver]Specified security mechanism, (Unknown), is not supported by server.

Diagnosing The Problem

In the DataDirect ODBC User's Guide:

AuthenticationMethod (AM)
Description
Specifies the method the driver uses to authenticate the user to the server when a connection is established. If the specified authentication method is not supported by the database server, the connection fails and the driver generates an error.
Valid Values
0 | 1 | 2 | 3 | 4 | 7 | 8

  • If set to 0 (No Encryption), the driver sends the user ID and password in clear text to the server for authentication.
  • If set to 1 (Encrypt Password), the driver sends the user ID in clear text and an encrypted password to the server for authentication.
  • If set to 2 (Encrypt UID and Password), the driver sends an encrypted user ID and password to the server for authentication.
  • If set to 3 (Client Authentication), the driver uses client authentication when establishing a connection. The database server relies on the client to authenticate the user and does not provide additional authentication.
  • If set to 4 (Kerberos Authentication), the driver uses Kerberos authentication. This method supports both Windows Active Directory Kerberos and MIT Kerberos environments.
  • If set to 7 (Encrypted Password AES), the driver encrypts the password with 256-bit AES encryption in the connection request. (DB2 V9.7 and higher only.)
  • If set to 8 (Encrypted UID and Password AES), the driver encrypts the user id and password with 256-bit AES encryption in the connection request. (DB2 V9.7 and higher only.)

    NOTE: The use of AES encryption (values 7 and 8) requires that the DataDirect OpenSSL library be installed.

Default
0 (No Encryption)

Resolving The Problem

To resolve the issue, follow the steps below.

Check to see what Database manager authentication is set to:

  1. As the DB2 instance owner, issue the command, db2 get dbm cfg
  2. Check the entry, Database manager authentication (AUTHENTICATION) to see what it is set to (for example, SERVER_ENCRYPT, SERVER, KERBEROS etc)

Edit the .odbc.ini file:
  1. Change directory to /InformationServer/Server/DSEngine and edit the .odbc.ini file
  2. Locate the data source that is being used in the job
  3. Add the parameter, AuthenticationMethod to the bottom of the data source name.

    If DB2 is using Database manager authentication (AUTHENTICATION) = SERVER_ENCRYPT, set the parameter, AuthenticationMethod=2

    If DB2 is using Database manager authentication (AUTHENTICATION) = SERVER, please set parameter AuthenticationMethod=1

Bind the data source:
  1. Change directory to /InformationServer/Server/DSEngine and source the dsenv file (ie. . ./dsenv)
  2. Change directory to /IBM/InformationServer/Server/branded_odbc/bin directory
  3. As the DB2 instance owner, run the command:
    ./bind25 <data source name>
  4. Retry the connection to the database

[{"Product":{"code":"SSVSEF","label":"IBM InfoSphere DataStage"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.1;8.7;8.5;8.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
16 June 2018

UID

swg21641494