Adabas 認証

認証は、アクセスを許可する前にユーザーが有効なユーザー名と有効なパスワードを入力する方法で、ユーザーを識別します。

Adabas サーバーは、LDAP、Active Directory、オペレーティングシステム、または内部リポジトリなどの外部認証システムのセキュリティ定義に対して資格情報をチェックします。資格情報が一致する場合は、データベースへのアクセス権限がユーザーに付与されます。資格情報が一致しない場合は、認証が失敗し、データベースへのアクセスは拒否されます。

監査証跡には、データベースへの成功したアクセス試行と失敗したアクセス試行の両方が記録されます。

現在のバージョンの場合:

  • セキュリティインフラストラクチャは、外部セキュリティシステムへのアクセスを提供するために使用します。

  • サポートされている資格情報は、ドメイン、ユーザー ID およびパスワードです。

  • 認証は、データベースへの「アクセス可否」を意味します。

  • データベースユーティリティは、認証チェックを実行しません。

  • 監査証跡は、ADABAS ロギングファイルに書き込まれます。

このドキュメントでは、次のトピックについて説明します。


認証の仕組み

アーキテクチャ

graphics/auth_arch.png

認証プロセス

  • アプリケーションが資格情報(ユーザー ID とパスワード)を提供します。

  • Adabas サーバーは、セキュリティインフラストラクチャを介して資格情報の検証を要求します。

  • セキュリティインフラストラクチャは、セキュリティリポジトリに対して資格情報を検証します。

セキュリティインフラストラクチャ

Adabas サーバーは、セキュリティインフラストラクチャの事前定義されたログインモジュール SSXLoginModule を使用して、ユーザー資格情報を認証します。

認証は、LDAP、Active Directory、内部リポジトリ、またはオペレーティングシステムに対して行われます。

SSXLoginModule は、Software AG インストーラに付属のセキュリティライブラリの一部です。この機能を使用するには、このコンポーネントをインストールする必要があります。

初期セットアップ

Adabas のインストール時

Adabas サーバーは、インフラストラクチャセキュリティライブラリを必要とします。これらには、Adabas 認証機能の実装に必要な機能が含まれています。

インフラストラクチャセキュリティライブラリは Software AG インストーラによってインストールされます。GUI インストールで、デフォルトで事前に選択されています。

Start of instruction set認証セキュリティ機能を有効にする

  1. ADAINI ユーティリティを使用して、次の操作を実行します。

    • 拡張オペレーションデータベースログを定義します。

    • 拡張オペレーションアナライザを有効にします。

    • 監査証跡機能を有効にします。

      注意:
      これはデータベース固有なので、各データベースに対して実行する必要があります。

    • SSXLoginModule の使用方法を設定します。

      • 認可タイプ固有のオプション

      • ロギング/診断オプション

  2. ADADBM ユーティリティの SECURITY 機能を使用して、認証セキュリティ機能を有効にします。

  3. データベースを起動します。

Start of instruction setレガシーアプリケーションが認証を使用できるようにする

Adabas ニュークリアスユーザー出口 21 は、認証機能を使用するようにレガシーアプリケーションを変更するときに有用なルーチンです。詳細については、「認証を使用するようにレガシーアプリケーションを変更する」を参照してください。

  1. サイト固有の要件を満たすように、サンプルの Adabas ニュークリアスユーザー出口 21 をカスタマイズします。

  2. サイト固有のニュークリアスユーザー出口を構築します。

  3. ニュークリアスユーザー出口の環境設定を変更します。

  4. USEREXITS パラメータを指定してデータベースを起動します。

構成

このセクションでは、認証および監査証跡機能を設定する方法について説明します。

監査証跡

監査証跡はデータベースログファイルに書き込まれるので、イベントアナライザ(AEO アナライザまたは単にアナライザともいいます)を有効にする必要があります。アナライザは、ADABAS.INI コンフィグレーションファイルの NODE_PARAMETER を使って有効にします。そのため、ノード内のすべてのデータベースでアナライザが有効になります。

監査証跡機能はデータベース固有で、DBnnn.INI コンフィグレーションファイルを介して構成されます。監査証跡フィルタは、セキュリティイベントを受け取り、データベースログファイルに書き出します。このログファイルで、これらのイベントを解析できます。すべてのアクセス試行を記録することも、セキュリティ違反のみを記録することもできます。

コンフィグレーションファイル セクション サブトピック 項目
ADABAS.INI NODE_PARAMETER ANALYSER ACTION
LOGGING

ACTION
LOG_FILE

DBnnn.INI DB_PARAMETER AUDIT_TRAIL

ACTION
FILTER

コンフィグレーションファイルと構文の詳細については、『拡張オペレーション』ドキュメントの「ADABAS.INI」および「DBnnn.INI」の説明を参照してください。

認証

認証チェックはデータベース固有で、SSXLoginModule オプションを使用して設定します。これらのオプションは、DBnnn.INI に入力します。

コンフィグレーションファイル セクション サブトピック 項目
DBnnn.INI DB_PARAMETER SSX_CONFIGURATION SSX コンフィグレーションオプション

コンフィグレーションファイルと構文の詳細については、『拡張オペレーション』ドキュメントの「DBnnn.INI」の説明を参照してください。

SSXLoginModule は、次のような複数の認可タイプ(またはメソッド)をサポートしています。

AuthType 説明
TEXT 認証は、Software AG 内部ユーザーリポジトリにあるセキュリティ定義を使用して実行されます。
LDAP 認証は、LDAP のセキュリティ定義を使用して実行されます。
ADSI 認証は、Active Directory のセキュリティ定義を使用して実行されます。
OS 認証は、オペレーティングシステムのセキュリティ定義を使用して実行されます。

さまざまな認可タイプの例とサンプルテンプレートが「SSXLoginModule コンフィグレーションテンプレート」セクションにあります。これらのテンプレートは、一部の設定がユーザーに固有であり、必要に応じて変更する必要があるので、完全ではありません。

パフォーマンスの考慮事項

次のコンフィグレーションオプションはパフォーマンスに悪影響を及ぼすので、注意して使用してください。

機能 オプション 説明
監査証跡 LOG_FILE

同じリソースで複数のデータベースが競合しているとき(同じデータベースログファイルにアクセスしているときなど)に、データベースログファイルに大量のエントリが書き込まれると、パフォーマンスに悪影響を及ぼす可能性があります。

監査証跡 FILTER

大量のユーザーセッションがあると、データベースログファイルに大量のセキュリティエントリが書き込まれます。ユーザーセッション数が増えると、データベースログファイルのサイズが急速に大きくなります。

デフォルト値:FILTER = ALL

推奨される値:FILTER = REJECT

SSX ロギング/診断 nativeloglevel

複数のユーザーセッションが、セキュリティインフラストラクチャログファイルに診断情報を同時に書き込もうとします。

デフォルト値:None

推奨される値:0 または None

セキュリティモードの有効化

セキュリティモードは、ADADBM ユーティリティの SECURITY 機能を使って有効にします。

次のデータベースセキュリティモードを使用できます。

  • セキュリティモード ACTIVE により、セキュリティ機能がアクティブになり、認証されたユーザーのみがデータベースにアクセスできるようになります。モード ACTIVE は、変更も無効化もできません。

  • セキュリティモード WARN はセキュリティ機能をシミュレートします。これを定義すると、セキュリティ違反が発生した場合に、データベースログファイルに警告が書き込まれますが、データベースへのアクセスは拒否されません。モード WARN は、ACTIVE にのみ変更できます。

重要:
データベースセキュリティモードは、WARN または ACTIVE のいずれかに設定できます。セキュリティモードをいったん有効にすると、無効にできなくなります。

ヒント:
セキュリティモードをアクティブにする前に、リカバリ目的でデータベースのバックアップを作成することをお勧めします。

Adabas 認証に必要なユーティリティ

認証セキュリティ機能の設定と管理に必要なユーティリティは次のとおりです。

ADADBM - セキュリティモードの有効化

認証および監査機能をアクティブにするには、ADADBM ユーティリティの SECURITY 機能を使用します。

注意:
SECURITY 機能を使用するには、セキュリティ保護するデータベースがオフラインになっている必要があります。

adadbm: dbid=nnn
%ADADBM-I-DBOFF, database nnn accessed offline
adadbm: security=active
%ADADBM-I-FUNC, function SECURITY executed

ADAREP - データベースセキュリティモードの問い合わせ

データベースセキュリティモード設定を表示するには、ADAREP ユーティリティの SUMMARY 機能を使用します。

注意:
セキュリティモード設定は、機能がアクティブになっている場合にのみ表示されます。機能がアクティブになっていない場合は、表示されません。

ADAINI - セキュリティ機能の設定

セキュリティ機能のコンフィグレーションの設定と変更には、ADAINI ユーティリティを使用します。ADAINI を使用してセキュリティ機能を設定する例を以下に示します。

例 1:拡張オペレーションロギングのアクティブ化

ADABAS.INI
> adaini   add topic=NODE_PARAMETER topic=LOGGING  item=LOG_FILE=path_and_name_adabas_log_file
> adaini   add topic=NODE_PARAMETER topic=LOGGING  item=ACTION=YES
> adaini   add topic=NODE_PARAMETER topic=ANALYSER item=ACTION=YES

例 2:監査証跡のアクティブ化

DBnnn.INI
> adaini dbid=nnn add topic=DB_PARAMETER topic=AUDIT_TRAIL item=FILTER=ALL
> adaini dbid=nnn add topic=DB_PARAMETER topic=AUDIT_TRAIL item=ACTION=YES

例 3:認可タイプ TEXT の設定

DBnnn.INI
> adaini dbid=nnn add topic=DB_PARAMETER topic=SSX_CONFIGURATION item=authType=TEXT
> adaini dbid=nnn add topic=DB_PARAMETER topic=SSX_CONFIGURATION item=internalRepository=path_and_name_ssxuser_file

例 4:セキュリティインフラストラクチャログの設定

DBnnn.INI
> adaini dbid=nnn add topic=DB_PARAMETER topic=SSX_CONFIGURATION item=nativeLogFile=path_and_name_of_ssxlog_file
> adaini dbid=nnn add topic=DB_PARAMETER topic=SSX_CONFIGURATION item=nativeLogLevel=6

例 5:コンフィグレーション設定の表示

ADABAS.INI
> adaini   show topic=NODE_PARAMETER

DBnnn.INI
> adaini dbid=nnn show topic=DB_PARAMETER

アプリケーションの開発

このセクションでは、次のトピックについて説明します。

認証を使用するようにアプリケーションを開発する

アプリケーションが、データベースセッションのオープン前にユーザーの資格情報を設定します。

クライアントセッションを管理し、資格情報を設定するために次の Adabas クライアント機能が提供されます:

手順 機能 説明
1 lnk_set_adabas_id() セッション ID を設定します。
2 lnk_set_uid_pw() 特定のデータベースの認証資格情報を設定します。

上記の Adabas クライアント機能の詳細については、『コマンドリファレンス』ドキュメントの「Adabas の呼び出し」セクションにある「認証を使用した Adabas の呼び出し」セクションを参照してください。

認証を使用するようにレガシーアプリケーションを変更する

変更を行わないと、レガシーアプリケーションは、セキュリティ保護されたデータベースにアクセスしたときに、ニュークリアスレスポンス 200「セキュリティ違反」を受け取ります。

Adabas ニュークリアスユーザー出口 21 を使用し、ADABAS サーバー API 機能を介して認証資格情報を設定することができます。ルーチンは、セッション処理の開始時にコールされます。

このルーチンはできる限り短期間で使用する必要があります。これは、すべてのアプリケーションが Adabas セキュリティの認証機能を使用およびサポートするまでの、移行期間中の使用を目的としています。

詳細については、「ユーザー出口とハイパー出口」セクションの「ニュークリアスユーザー出口 21」を参照してください。

SSXLoginModule コンフィグレーションテンプレート

以下のコンフィグレーションオプションを、DB_PARAMETER セクションのサブトピック SSX_CONFIGURATION にあるコンフィグレーションファイル DBnnn.INI に設定する必要があります。

DBnnn.INI

[DB_PARAMETER]
  [SSX_CONFIGURATION]
    <option>=<value>
  [SSX_CONFIGURATION-END]
[DB_PARAMETER-END]

SSXLoginModule コンフィグレーションテンプレート」には、さまざまな認可タイプ(OS、TEXT、LDAP、ADSI)で使用可能な、追加のコンフィグレーションテンプレートがあります。