バンドル・ライブラリーとプロセス規則

バンドル Db2IBM Global Security Kit (GSKit) を必要とするベンダー・ソフトウェアをバンドルする場合、または IBM Global Security Kit (GSKit) を必要とするベンダー・ソフトウェアをバンドルする場合、特定のルールに従わなければならない。 Db2 をバンドルする場合は、一定のルールに従わなければならない。

ライブラリー規則

Db2 が、 IBM Global Security Kit (GSKit)を必要とするベンダー・ソフトウェアをバンドルしている場合、ベンダー・ソフトウェアは、 Db2 がリンクするライブラリーを提供します。 それらのライブラリーは、特定の規則に従う必要があります。 この規則は、ライブラリー規則と呼ばれます。

ライブラリー規則: 短縮名を使用

IBM Global Security Kit (GSKit) ライブラリーを動的にロードする場合、呼び出し元は、 IBM Global Security Kit (GSKit) ライブラリーの基本ファイル名のみを渡し、パスは渡さないようにする必要があります。

例えば、 dlopen("libgsk8ssl_64.so", RTLD_NOW | RTLD_GLOBAL) は正しいですが、 dlopen("/usr/opt/ibm/gsk8_64/lib/libgsk8ssl_64.so", RTLD_NOW | RTLD_GLOBAL) は正しくありません。

プロセス規則

IBM Global Security Kit (GSKit) を必要とするベンダーソフトウェアがバンドルされている場合、ベンダーソフトウェアは データサーバークライアントとリンクする。 Db2IBM データサーバークライアントとリンクする。 ベンダー・ソフトウェアは、特定の規則に従う必要があります。 この規則は、プロセス規則と呼ばれます。

プロセス規則: 環境検索パスのセットアップ

プロセスは、 IBM Global Security Kit (GSKit) ライブラリーを検出する環境検索パスをセットアップする必要があります。 このプロセスでは、組み込まれたライブラリーが同じ場所から IBM Global Security Kit (GSKit) ライブラリーをロードできるように、このセットアップを行う必要があります。

AIX®では、プロセスは、プログラムの LIBPATH または RPATH を IBM Global Security Kit (GSKit) ライブラリーのパスに設定できます。 setuid および setgid の場合、プロセスは db2chglibpath を使用して、 IBM Global Security Kit (GSKit) の検索パスをプログラムの RPATH に組み込むことができます。 その場合にのみ、その場所から IBM Global Security Kit (GSKit) ライブラリーを使用できます。 Linux®および Sun では、プロセスは LD_LIBRARY_PATH を IBM Global Security Kit (GSKit) ライブラリーのパスに設定できます。 setuid および setgid の場合、プロセスは db2chglibpath を使用して、 IBM Global Security Kit (GSKit) の検索パスを IBM データ・サーバー・クライアント ・ライブラリーの RPATH に組み込むことができます。 その場合にのみ、その場所から IBM Global Security Kit (GSKit) ライブラリーを使用できます。 例えば、プロセスがサーバー・インスタンスでグローバル GSKit を使用する必要がある場合や、クライアントまたはサーバー・インスタンスで独自のローカル IBM Global Security Kit (GSKit) を使用する必要がある場合は、 db2chglibpath を使用して RPATH を変更できます。

シンボリック・リンクを使用する方法と制約事項

Db2 を UNIX および Linuxにインストールすると、ローカルの IBM Global Security Kit (GSKit) ライブラリーもインストールされます。 これらのライブラリーは、 <db2_install_path>/lib64/gskit_db2 または <db2_install_path>/lib32/gskit_db2にあります。

他の IBM 製品のインストール中に、 IBM Global Security Kit (GSKit) ライブラリーの別のコピーがインストールされることがあります。 製品に応じて、これらのライブラリーは、ローカルの IBM Global Security Kit (GSKit) ライブラリーまたはグローバル GSKit ライブラリーのいずれかになります。 Db2 と、 IBM Global Security Kit (GSKit) ライブラリーを含む別の IBM 製品の両方が同じシステムにインストールされている場合、インターオペラビリティーの問題が発生する可能性があります。 IBM Global Security Kit (GSKit) では、単一の IBM Global Security Kit (GSKit) ソースのライブラリーのみが単一のプロセスに存在することが許可されているため、これらのインターオペラビリティーの問題が発生する可能性があります。 相互運用性の問題は、予測不能の動作やランタイム・エラーを引き起こす可能性があります。

IBM Global Security Kit (GSKit) ライブラリーの単一ソースが確実に使用されるようにするために、シンボリック・リンク・アプローチを使用できます。 Db2 の初期インストール時に、インストーラーは、 <db2_install_path>/lib64/gskit_db2 または <db2_install_path>/lib32/gskit_db2へのシンボリック・リンク <db2_install_path>/lib64/gskit または <db2_install_path>/lib32/gskit を作成します。 この場所は、 IBM Global Security Kit (GSKit) ライブラリーのロード元のデフォルトの場所です。

Db2 をバンドルし、シンボリック・リンクをデフォルト・ディレクトリーから IBM Global Security Kit (GSKit) の別のコピーのライブラリー・ディレクトリーに変更する製品は、新しくインストールされた IBM Global Security Kit (GSKit) が同じかそれより新しいレベルであることを確認する必要があります。 この制約事項は、そのライブラリーがグローバルであってもローカルであっても適用されます。 Db2のアップグレードまたは更新時に、シンボリック・リンクは保持されます。 新しくインストールされたコピーにデフォルトの場所へのシンボリック・リンクがある場合、 古いインストール・コピーに関連付けられているシンボリック・リンクが保持されます。 新しくインストールされたコピーにデフォルトのロケーションを指していないシンボリック・リンクがある場合、新しくインストールされたコピーでは新しいインストール・コピーに関連付けられているシンボリック・リンクが使用されます。 シンボリック・リンク <db2_install_path>/lib64/gskit または <db2_install_path>/lib32/gskitDb2 インストール・コピーのパスにあるため、いくつかの制限があります。 例えば、あるコピーに対して2つ以上のインスタンスが作成された場合、シンボリックリンクの変更はすべてのインスタンスに影響する。 Db2® シンボリックリンクの変更はすべてのインスタンスに影響する。

ご使用のバージョンの Db2に含まれている IBM Global Security Kit (GSKit) のバージョンを確認するには、 Db2 に付属する GSKit のバージョンを参照してください。

Db2 は、LDAP クライアントをバンドルしています。 Db2 プロセスは、プロセス・ルールに従います。 処理規則に従うために、RPATH の環境検索パスは、 IBM Global Security Kit (GSKit)のローカル・コピーに設定されます。 LDAP クライアント・ライブラリーは、同じ場所から IBM Global Security Kit (GSKit) ライブラリーをロードします。 ライブラリー規則に従う LDAP クライアント・ライブラリーは、 IBM Global Security Kit (GSKit) _LOCAL_INSTALL_MODE が設定されている場合、 IBM Global Security Kit (GSKit) ライブラリーをその基本ファイル名でロードします。

LDAP サーバーには Db2がバンドルされています。 LDAP プロセスはプロセス規則に従います。 環境検索パスは、GSKit と IBM データ・サーバー・クライアントの ライブラリーのグローバル・コピーに設定され、 IBM Global Security Kit (GSKit) ライブラリーが同じ場所からロードされます。 ライブラリー規則に従う IBM データ・サーバー・クライアント ・ライブラリーは、 IBM Global Security Kit (GSKit) ライブラリーをその基本ファイル名でロードします。

起こったエラー

相互運用性の問題により、以下のメッセージが表示される場合があります:
SQL10013N 指定されたライブラリ "GSKit Error: 9" をロードできませんでした。
SQLSTATE=42724
の中で db2diag.log:
2025-08-19-13.54.15.813758-240 I25073767E517         LEVEL: Error
PID     : 794324               TID : 140572475463424 PROC : db2bp
INSTANCE: db2inst1              NODE : 000
HOSTNAME: XXXX
FUNCTION: DB2 UDB, common communication, sqlccMapSSLErrorToDB2Error, probe:530
MESSAGE : DIA3604E The SSL function "gsk_environment_init" failed with the 
	        return code "9" in "sqlccEnvironmentInitCommon".
DATA #1 : String, 16 bytes
GSK_ERROR_CRYPTO
DATA #2 : String, 29 bytes
Error processing cryptography