ページの先頭行へ戻る
Interstage Navigator ServerV9.5.0 セットアップガイド Vol.1(Enterprise Edition用)
FUJITSU Software

7.2.4 認証出口モジュールの作成

認証出口モジュールとは、Navigatorがユーザ認証システムと連携する際にインタフェースとなるモジュールです。

Navigatorは、後述のインタフェースを持つライブラリモジュール(認証出口モジュール)のユーザ情報関数を呼び出すことで、必要なユーザ情報を取得します。認証出口モジュールは、すでに使用しているユーザ認証システムにアクセスし、Navigatorが必要とするユーザ情報の取り出しを行います。

認証出口モジュールは、Navigator Serverと同一のプロセス空間で動作しますが、認証出口モジュールがアクセスするユーザ認証システム(および認証システムへのアクセスモジュール)は、Navigator Serverとは、別プロセス空間で動作する必要があります。別プロセス空間であれば、Navigator Serverと同一サーバ上に認証システム(認証システムへのアクセスモジュールを含む)を配置することも可能です。構成のイメージについては、“2.1.2 エンタープライズ認証の概要”を参照してください。

Navigatorが必要とするユーザ情報には、以下があります。使用可能な文字などについては、“7.2.3 エンタープライズ認証でのユーザの登録”を参照してください。

さらに、拡張グループ運用を行う場合には、次のユーザ情報も必要です。

拡張グループ運用については“21.2 拡張グループ運用について”を参照してください。

認証出口モジュールの作成方法を以下に説明します。

開発言語

認証出口モジュールの作成には、C言語を使用してください。

開発環境

以下のコンパイラを使用してください。

Solarisの場合
Linuxの場合
Windowsサーバの場合

認証出口モジュール

UNIXの場合

以下の名前でモジュールを作成してください。

Navigatorを32bit論理空間で運用する場合は、32bitの共用オブジェクトとして、64bit論理空間で運用する場合は、64bitの共用オブジェクトとして作成してください。

ユーザ情報関数は、すべてエクスポートする必要があります。また、Navigator Serverは、マルチスレッドで動作しているため、マルチスレッドに対応したモジュールを作成してください。

Navigatorが認証出口モジュールをオープンする際のdlopen()ライブラリ関数のRTLD_GLOBALフラグの有無を、以下の環境変数で指定することができます。RTLD_GLOBALフラグの意味については、OSのマニュアルを参照してください。

環境変数

設定内容

RN_DLOPEN_OPTION

認証出口モジュールのオープンフラグの状態を指定します。

指定可能な値は、[RTLD_GLOBAL|RTLD_LOCAL]で、dlopen()ライブラリ関数のフラグを次のように決定します。

  • RTLD_GLOBAL:“RTLD_LAZY|RTLD_GLOBAL”

  • RTLD_LOCAL:“RTLD_LAZY”

環境変数未指定時はRTLD_LOCALが指定されたものとみなされます。

Windowsサーバの場合

以下の名前でモジュールを作成してください。

Navigatorを32bit論理空間で運用する場合は、32bitのダイナミックリンクライブラリとして、64bit論理空間で運用する場合は、64bitのダイナミックリンクライブラリとして作成してください。

ダイナミックリンクライブラリとして作成してください。

ユーザ情報関数は、すべてエクスポートする必要があります。また、Navigator Serverは、マルチスレッドで動作しているため、マルチスレッドに対応したモジュールを作成してください。

ヘッダファイル

認証出口モジュールを作成する場合には、ソースファイルに以下のヘッダファイルをインクルードしてください。

UNIXの場合
Windowsサーバの場合

このヘッダファイルはNavigator Serverのインストールディレクトリのetcディレクトリに存在します。開発環境にコピーして使用してください。

ユーザ情報関数

以下にNavigatorとお客様のユーザ認証システムとのインタフェースとなる関数(ユーザ情報関数)の一覧を示します。

関数名

機能概要

KVRCK_authenticate

ユーザ認証

KVRCK_open_group_list

グループ一覧取得の開始

KVRCK_get_group_list

グループ一覧取得

KVRCK_close_group_list

グループ一覧取得の終了

KVRCK_open_user_list

ユーザ一覧取得の開始

KVRCK_get_user_list

ユーザ一覧取得

KVRCK_close_user_list

ユーザ一覧取得の終了

KVRCK_getpwnam

ユーザ名によるユーザ情報の取得

KVRCK_getpwuid

ユーザIDによるユーザ情報の取得

KVRCK_getgrnam

グループ名によるグループ情報の取得

KVRCK_getgrgid

グループIDによるグループ情報の取得

KVRCK_get_grpslist

ユーザ名による拡張グループ情報の取得  ※

KVRCK_open_group_ex_list

拡張グループ一覧取得の開始  ※

KVRCK_get_group_ex_list

拡張グループ一覧取得  ※

KVRCK_close_group_ex_list

拡張グループ一覧取得の終了  ※

※拡張グループ運用の場合にだけ必要です。拡張グループ運用については、“21.2 拡張グループ運用について”を参照してください。

認証出口モジュール使用時の作業

作成した認証出口モジュールを使用する場合には、以下の作業が必要になります。

(サーバの切り換え機能を使用した運用を行う場合は、切り換わる可能性のあるすべてのサーバに対してこの作業を行ってください。)

作成した認証出口モジュールは、エンタープライズ認証を使用するすべてのサーバにコピーし、適切なディレクトリに配置します。

また、認証出口モジュールにはNavigator Serverのプロセスの実効ユーザが読み込み、実行のできる権限を与えてください。

プラットフォームによって以下の作業が必要になります。

Windowsサーバの場合

認証出口モジュールを含め、認証出口モジュールが動的にリンクしているすべてのダイナミックリンクライブラリ(※2)の存在するディレクトリの絶対パスを、システムの環境変数PATHに追加してください。

※2 認証出口モジュールが、間接的に動的リンクしているライブラリについてもシステムの環境変数PATHに追加してください。