5 シングル・ポイント・セキュリティ管理の実装

次の項では、TuxedoとWebLogic Serverのシングル・ポイント・セキュリティ管理を実装する方法について、Tuxedoの視点から説明します。

ノート:

シングル・ポイント・セキュリティを設定する前に、Tuxedoのセキュリティのアーキテクチャと要件について理解しておく必要があります。この作業は、WebLogicまたはLDAPの管理者と協調して行います。

5.1 シングル・ポイント・セキュリティ管理とは

TuxedoとWebLogic Serverの両方がデプロイされている環境の場合、2つのセキュリティ情報セットを管理する必要があります。シングル・ポイント・セキュリティ管理では、Tuxedoからユーザー情報とグループ情報を削除し、WebLogic Serverセキュリティを活用してセキュリティ・データベースを管理できます。セキュリティ・データベースとしてWebLogic Serverを使用することで、Tuxedoユーザーを認証できます。

ノート:

Tuxedo ACL情報は引き続きTuxedoに存在し、現時点ではWebLogic Server 7.0には統合されていません。

UBBCONFIGファイルのRESOURCESセクションにSECURITY=ACLまたはSECURITY=MANDATORY_ACLを指定する場合、Tuxedoにtpgrpおよびtpaclファイルを保持し続ける必要があります。

シングル・ポイント・セキュリティ管理機能は、拡張されたWebLogic Server 7.0セキュリティとLDAPを活用してシングル・ポイント・セキュリティ管理を実現します。ユーザーのセキュリティ情報は、WebLogic Server埋込みLDAPサーバーに保持し、WebLogic Serverコンソールを使用して単一のシステムから管理できます。シングル・ポイント・セキュリティを有効にするには、UBBCONFIGファイルを変更する必要があります。

5.1.1 シングル・ポイント・セキュリティ管理のタスク

シングル・ポイント・セキュリティを設定するには、Tuxedoセキュリティ情報をWebLogic Server埋込みLDAPサーバーに提供する必要があります。この作業では、Tuxedoのユーザー(UID)およびグループ(GID)情報をWebLogic Server LDAPサーバーに移行または設定して、認証を正常に実行できるようにします。TuxedoのUIDおよびGID値をWebLogic Serverに提供するには、tpmigldapユーティリティを使用するか、テキスト・エディタでtpusrファイルを手動で変更するか、またはWebLogic管理コンソールでユーザー情報を入力します。

ノート:

セキュリティ・データベースの設定後に1人または複数のユーザーを追加する場合は、WebLogic管理コンソールを使用すると便利です。効率と時間管理の面では、一般にtpmigldapユーティリティまたはtpusrファイルを使用するほうが適しています。

シングル・ポイント・セキュリティ管理には、次のタスクが含まれます。

5.2 LAUTHSVRの認証サーバーとしての設定

LAUTHSVRはSystem/Tサーバーで、ユーザーのセキュリティ情報がWebLogic Serverに保持されている場合でも認証サービスを提供します。シングル・セキュリティ管理機能を有効にするには、LAUTHSVRを認証サーバーとして構成する必要があります。実行時に、LAUTHSVRはWebLogic Server埋込みLDAPサーバーからユーザー情報を取得してユーザーを認証します。認証が成功すると、ユーザーにappkeyが戻され、それ以外の場合は認証は失敗します。

ノート:

Tuxedo 10以降では、より一般的なGAUTHSVRという認証サーバーを使用してWebLogic認証を構成できます(GAUTHSVRは、LAUTHSVRと共存させることも、そのかわりとして使用することも可能です)。

GAUTHSVRの詳細は、「GAUTHSVRの認証サーバーとしての設定」、および『Oracle Tuxedoファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』GAUTHSVR(5)に関する項を参照してください。

LAUTHSVRを認証サーバーとして構成するには、UBBCONFIGファイルで次のパラメータを定義する必要があります。

  • RESOURCESセクションのSECURITYUSER_AUTHACL、またはMANDATORY_ACLに設定します。
  • SERVERSセクションでLAUTHSVRを指定します。
  • LAUTHSVRが有効な構成ファイルを発見できないか、またはこのようなファイルが存在しない場合、USERLOGにエラー・メッセージが書き込まれて起動が失敗します。デフォルトのLAUTHSVR構成ファイルは、製品に付属の$TUXDIR/udataobj/tpldapです。

5.2.1 LAUTHSVRコマンド行インタフェース

LAUTHSVRはTuxedo用のLDAPベースの認証サーバーです。このサーバーは、構成ファイルを必要とします(デフォルトでは$TUXDIR/udataobj/tpldap)。独自のLAUTHSVR構成ファイルを作成することも、製品に付属のデフォルトのtpldapファイルを使用することもできます。

LAUTHSVRのコマンド行インタフェースの構文は次のとおりです。

-f full_pathname
LAUTHSVR構成ファイルのフルパス名を指定します。

ノート:

-fオプションを省略した場合、デフォルトのLAUTHSVR構成ファイルtpldapが使用されます。

次の例の場合、LAUTHSVR$TUXDIR/udataobjディレクトリにあるデフォルトの構成ファイルtpldapを使用します。

LAUTHSVR SRVGRP=GROUP1 SRVID=2 CLOPT=”-A-”

次の例の場合、LAUTHSVR/home/tuxedo/bankappディレクトリにあるmyauthsvr.conf 構成ファイルを使用します。

LAUTHSVR SRVGRP=GROUP1 SRVID=2
         CLOPT=”-A--
         -f/home/tuxedo/bankapp/myauthsvr.conf”

5.2.2 LAUTHSVR構成ファイルの設定

LAUTHSVRは、バインドDNやバインドDN用の非暗号化パスワードなどの情報が記述された入力構成ファイルをサポートしています。この構成ファイルはテキスト・ファイルであり、任意のテキスト・エディタで編集できるため、ファイルの権限を採用するシステムで保護する必要があります。デフォルトの構成ファイルtpldap$TUXDIR/udataobjディレクトリに格納されています。このファイルは、LAUTHSVRのコマンド行で上書きできます。次の表に、LAUTHSVR構成ファイルに含まれているキーワードと値のペアを示します。

5.2.2.1 LAUTHSVR構成ファイルの構文要件

通常、LAUTHSVR構成ファイルの値はデフォルトのままで十分ですが、異なる名前で構成することもできます。このため、LAUTHSVR構成ファイルに対する次の要件に注意する必要があります。

  • LAUTHSVR構成ファイルは、プレーン・テキスト・ファイルです。
  • キーワードの順序は関係ありませんが、キーワードとその値の間には少なくとも1つのスペースが必要です。
  • コメントはポンド記号(#)で開始します。#に続くテキストは無視されます。
  • 1行の上限は255文字です。この上限を超えた部分は切り詰められます。
  • バインドDNは、LDAPデータベースへのアクセス権限を持っている必要があります(通常、これはLDAP管理者です)。

ノート:

管理者がTuxedo LDAPベースのセキュリティ認証サーバーを設定して使用するには、WebLogic管理コンソールでLDAP管理者のパスワードを変更しておく必要があります。
5.2.2.2 LAUTHSVR構成ファイルのキーワード

次の表で、LAUTHSVR構成ファイルのキーワードを定義します。

ノート:

LAUTHSVR構成ファイル内で唯一の必須キーワードは、バインドDNのパスワードを指定するPASSWORDです。その他すべてのキーワードはオプションです。

表5-1 LAUTHSVR構成ファイルのキーワード

キーワード 値の型 使用
FILE_VERSION numeric 構成ファイルのバージョン。これは常に1にする必要があります。デフォルトは1です。
LDAP_VERSION numeric LDAPプロトコルのバージョン。有効値は2または3です。デフォルトは3です。
BINDDN string LDAPサーバーにバインドするために使用されるDNで、通常はLDAP管理者のDNです。デフォルトは"cn=admin"です。
BASE string LDAP検索ベース。デフォルトは“ou=people,ou=myrealm, dc=mydomain”です。myrealmはセキュリティ・レルムの名前、mydomainはWebLogic Serverドメインの名前です。
UID string WebLogic ServerとTuxedoへのログオンに使用されるユーザーID属性。デフォルトはuidです。
PASSWORD string バインドDNのパスワード。これは必須のキーワードであり、クリア・テキスト形式または暗号化形式のパスワードです。tpldapconfコマンドを使用すると暗号化されたパスワードを作成できます。
LDAP_ADDR string WebLogicのホスト名とポートのカンマ区切りリスト。構文は [//]hostname[:port][,[//]hostname[:port]...]です。ポートのデフォルト値は7001です。LDAP_ADDR を指定しない場合、LAUTHSVRlocalhost:7001がLDAPサーバーに接続する場所であるとみなします。複数のネットワーク・アドレスの指定の詳細は、「複数のネットワーク・アドレスの使用による可用性の向上」を参照してください。
EXPIRE numeric ローカル・プロセス・メモリー内のキャッシュされたエントリを使用できる秒数を表す数値。0以外の値を指定すると、キャッシュが有効になります。0を指定するとキャッシュは行われません。デフォルトは、0です。キャッシュの有効化の詳細は、「複数のネットワーク・アドレスの使用による可用性の向上」を参照してください。
SRCH_ORDER string 有効値はLDAPまたはLOCAL、またはカンマで区切った両方の値です。LOCALを指定した場合、検索順序ではtpusrファイルが使用されます。デフォルトはLDAPです。データベース検索順序の詳細は、「データベース検索順序の構成」を参照してください。
LOCAL_FILE string LOCAL検索順序が有効な場合に使用されるtpusrファイルのフルパス名。デフォルト値は$APPDIR/tpusrです。データベース検索順序の詳細は、「データベース検索順序の構成」を参照してください。

ノート:

デフォルトの$APPDIR/tpusr,以外のディレクトリ・パスが指定されている場合、Tuxedo MIBまたはtpusraddコマンド行ユーティリティを使用してこのファイルを生成する必要があります。そうでないと、認証が失敗する可能性があります。
WLS_DOMAIN string WebLogic Serverドメイン名。デフォルト値はmydomainです。
WLS_REALM string WebLogic Serverセキュリティ・レルム名。デフォルトはmyrealmです。
ADM_GROUP string WebLogic Server管理者グループ名。デフォルトはAdministratorsです。
OP_GROUP string WebLogic Serverオペレータ・グループ名。デフォルトはOperatorsです。
TUX_UID_KW string Tuxedoのuseridを識別するために説明で使用されるキーワード。デフォルトはTUXEDO_UIDです。
TUX_GID_KW string TuxedoのグループIDを識別するために説明で使用されるキーワード。デフォルトはTUXEDO_GIDです。
5.2.2.3 LAUTHSVR構成ファイルのサンプル

次のリストに、LAUTHSVR構成ファイルの例を示します。

リスト LAUTHSVR構成ファイルの例

#
         # Tuxedo LDAP Authentication Server configuration file.
         #
         # created: Thu May 26 15:36:59 2002
         #
         FILE_VERSION         1
         LDAP_VERSION         3
         BINDDN               cn=Admin
         BASE                 ou=people,ou=myrealm,dc=mydomain
         UID                  uid
         PASSWORD             secret
         LDAP_ADDR           //PLUTO:7001,//Saturn:7001
         EXPIRE               0
         SRCH_ORDER           LDAP
         WLS_DOMAIN           mydomain
         WLS_REALM            myrealm
         ADM_GROUP            Administrators
         OP_GROUP             Operators
         TUX_UID_KW           TUXEDO_UID
         TUX_GID_KW           TUXEDO_GID
         # end of file

警告:

LDAP管理者のPASSWORDはクリア・テキストであるため、システム管理者は、適切なアクセス権限を使用してこのファイルを保護することをお薦めします。

5.2.3 LAUTHSVRを使用したUBBCONFIGのサンプル

次のリストに、SECURITYACLに設定され、LAUTHSVRが定義されたUBBCONFIGファイルの例を示します。

リスト LAUTHSVRを使用したUBBCONFIGファイルの例

*RESOURCES

         IPCKEY        51002
         MASTER        site1
         MAXACCESSERS  50
         MAXSERVERS    20
         MAXSERVICES   20
         MODEL        SHM
         LDBAL        N
         BLOCKTIME     10
         SECURITY      ACL
         AUTHSVC       "..AUTHSVC"

         *MACHINES
         DEFAULT:
                 APPDIR="/home/tuxedo/application"
                 TUXCONFIG="/home/tuxedo/application/TUXCONFIG"
                 TUXDIR="/home/tuxedo/tux81"
         Server1        LMID=site1
                             MAXWSCLIENTS=20

        *GROUPS
         GROUP1        LMID=site1 GRPNO=1
         GROUP2        LMID=site1 GRPNO=2
         GROUP3        LMID=site1 GRPNO=3
         GROUP4        LMID=site1 GRPNO=4

         *SERVERS
         DEFAULT:
                 CLOPT="-A" RESTART=N  MAXGEN=5
         LAUTHSVR       SRVGRP=GROUP1 SRVID=10
         CLOPT="-A -- -F /home/tuxedo/application/lauthsvr.conf "
         DMADM         SRVGRP=GROUP2  SRVID=20
         GWADM         SRVGRP=GROUP3  SRVID=30
         GWTDOMAIN      SRVGRP=GROUP3 SRVID=31
         Simpserv       SRVGRP=GROUP4 SRVID=40

         *SERVICES
         TOUPPER

5.2.4 複数のネットワーク・アドレスの使用による可用性の向上

WebLogic Serverドメイン用に複数のネットワーク・アドレスを構成することもできます。この構成は、ユーザー認証の可用性を高めるのに役立ちます。ユーザーのセキュリティ情報は、WebLogic Serverドメイン内のすべてのWebLogic Server埋込みLDAPサーバーにレプリケートされます。LAUTHSVRは一度に1つのサーバーにしか接続できませんが、ネットワーク・エラーが発生した場合は、LAUTHSVRは次に使用可能なアドレスへの接続を試行します。

LAUTHSVRの複数のネットワーク・アドレスを構成するには、LAUTHSVR構成ファイルのLDAP_ADDRキーワードを使用します。ホスト名の指定順序が、LAUTHSVRが接続を試行する順序となります。認証中にキャッシュを使用するには、EXPIREキーワードを指定します。このキーワードの値によって、ローカル・プロセス・メモリーにキャッシュされたエントリを使用できる秒数が決定されます。

ノート:

tmbootを使用してTuxedoを起動したときにWebLogic Serverが使用可能になっている必要はありませんが、少なくとも1つのWebLogic Serverが使用可能でないと、LAUTHSVRのユーザー認証機能が制限されます。

WebLogic Serverが使用可能でない場合、SRCH_ORDER LOCALを使用してTuxedoを起動し、ユーザーを認証できます。この場合、ユーザー認証はtpusrファイルに基づいて検証されます。検索順序の詳細は、「データベース検索順序の構成」を参照してください。

5.2.4.1 複数ネットワーク・アドレスのLAUTHSVR構成の例

次の例では、LDAP_ADDRキーワードに複数のネットワーク・アドレスを指定します。

LDAP_ADDR //Pluto:8000,//Saturn,Jupiter

上の例では、3つのWebLogic Serverホスト名が指定されています。最初のサーバーはPlutoで稼働し、アドレス8000を使用します。2番目のサーバーはSaturnで稼働し、デフォルト・アドレス7001を使用します。3番目のサーバーはJupiterで稼働し、同じくデフォルト・アドレス7001を使用します。

5.2.5 データベース検索順序の構成

デフォルトでは、LAUTHSVR認証サーバーはWebLogic Server埋込みLDAPサーバーからユーザー情報を検索します。データベース検索でtpusrファイルを使用するには、SRCH_ORDERキーワードにLOCALを指定する必要があります。SRCH_ORDERキーワードに定義したカンマ区切りの値の順序により、LAUTHSVRによるユーザー情報の検索順序が指定されます。LAUTHSVRは、LDAPサーバーまたはtpusrファイル、あるいはその両方を(指定した値の順序に従って)検索します。

複数のSRCH_ORDERエントリがLAUTHSVR構成ファイルに指定されている場合、最後のエントリのみが有効になります。この場合、警告メッセージがUSERLOGに記録されます。また、LDAPまたはLOCAL以外の値をSRCH_ORDERキーワードに指定した場合も、警告メッセージが出力されます。この場合、無効なエントリは破棄され、デフォルト値または前の有効なSRCH_ORDERエントリが使用されます。

5.2.5.1 データベース検索順序のLAUTHSVR構成の例

次の例では、LAUTHSVRが最初にWebLogic Server埋込みLDAPサーバーからユーザー情報を検索するよう指定しています。このLDAPサーバーにユーザー情報が見つからない場合、LAUTHSVRtpusrファイルを検索します。

SRCH_ORDER LDAP,LOCAL

次の例では、LAUTHSVRが最初にtpusrファイルからユーザー情報を検索するよう指定しています。tpusrファイルにユーザー情報が見つからない場合、LAUTHSVRはWebLogic Server埋込みLDAPサーバーから情報を検索します。

SRCH_ORDER LOCAL,LDAP

次の例では、LAUTHSVRtpusrファイルのみからユーザー情報を検索するよう指定しています。

SRCH_ORDER LOCAL

ノート:

  • 『Oracle Tuxedoファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』LAUTHSVR(5)およびGAUTHSVR(5)

5.2.6 tpmigldapによるユーザー情報のWebLogic Serverへの移行

tpmigldapコマンド・ユーティリティを使用して、Tuxedoのユーザーおよびグループ情報をWebLogic Serverに移行する必要があります。

5.2.6.1 tpusrファイルの新しいパスワードの割当て

管理者は、ユーザーおよびグループの情報を移行する前に、移行が正常に行われるようにするために各ユーザーに新しいパスワードを割り当てる必要があります。このステップが必要なのは、tpusrファイル内のパスワードが一方向暗号化で暗号化されているため、このファイルから元のパスワードを取り出すことができないためです。

このようなパスワードを処理する方法は2つあります。

  • tpusrファイルを修正します。

    テキスト・エディタを使用してtpusrファイルを修正し、ファイル内の各ユーザーのパスワードを変更できます。パスワード・フィールドは、tpusrファイルの2番目のフィールドです。フィールドのデリミタはコロン(:)です。各ユーザーはtpusrファイル内の1行を占めます。

    次の例:
    TuxedoUser1:ADdg0w8nfGMag:6001:601:TPCLTNM,*: TuxedoUser2:0Yq2s6FjbvuU2:6002:601:TPCLTNM,*::
    次のように修正できます。
    TuxedoUser1:User1Password:6001:601:TPCLTNM,*:: TuxedoUser2:User2Password:6002:601:TPCLTNM,*:: 
  • tpmigldapユーティリティで-fオプションを使用して、すべてのユーザーのデフォルト・パスワードを定義します。

    -fオプションを使用する場合、後続の引数はtpusrファイルのすべてのユーザーのパスワード・フィールドのかわりとして使用されます。

    次にコマンドの例を示します。
    tpmigldap -f userpassword -c
    userpasswordがtpusrファイル内のすべてのユーザーに割り当てられます。移行後は、Tuxedoアプリケーションに参加するためにすべてのユーザーがパスワードとしてuserpasswordを使用する必要があります。
5.2.6.2 tpmigldapコマンド行オプション

次の表に、tpmigldapユーティリティのコマンド行オプションを示します。コマンド行オプションの順序は関係ありません。

ノート:

tpmigldapコマンドでは、ユーザーまたはグループをWebLogic Server埋込みLDAPデータベースに追加するには-wまたは-cを使用する必要があります。

表5-2 tpmigldapコマンド行オプション

コマンド行オプション オプションの引数 デフォルト値 使用
-h hostname localhost WebLogic Serverのホスト名
-p port 7001 WebLogic Server管理コンソールのポート番号
-d domain mydomain WebLogic Serverドメイン名
-r realm myrealm WebLogic Serverセキュリティ・レルム名
-i TUXEDO_UIDキーワード文字列 TUXEDO_GID 管理者がWebLogic Serverユーザーの"description"属性で使用するTuxedo UIDのキーワード文字
-e TUXEDO_GIDキーワード文字列 TUXEDO_GID 管理者がWebLogic Serverユーザーの"description"属性で使用するTuxedo GIDのキーワード文字
-f user password デフォルトなし。 tpusrファイルのすべてのユーザーのデフォルト・ユーザー・パスワード
-b binddn cn=Admin LDAP接続バインドDN
-w password デフォルトなし。 バインドDNのパスワード。
-c 該当なし。 デフォルトなし。 バインドDNのパスワードを入力するためのプロンプト
-u full path name $APPDIR/tpusr tpusrファイルのフル・ディレクトリ・パスです。
-g full path name $APPDIR/tpgrp tpgrpファイルのフル・ディレクトリ・パスです。

関連項目:

5.2.7 新しいTuxedoユーザー情報の追加

新しいユーザーおよびグループ情報をシングル・セキュリティLDAPデータベースに追加する方法は2つあります。

  • 新しい情報をtpusrテキスト・ファイルに追加し、移行ユーティリティtpmigldapを使用するときに、この更新されたファイルを指定します。「新しいユーザー情報のtpusrまたはtpgrpへの追加」.を参照してください
  • WebLogic管理コンソールを使用してユーザーまたはグループ情報を追加します。「WebLogic管理コンソールによる新しいユーザー情報の追加」.を参照してください
  • WebLogic管理コンソールの使用は、多数のユーザーをLDAPデータベースに追加する場合は効率的ではありません。多数のユーザーを追加する場合は、tpmigldapユーティリティを使用してください。
5.2.7.1 新しいユーザー情報のtpusrまたはtpgrpへの追加

新しいユーザー情報をシングル・ポイント・セキュリティLDAPデータベースに追加するには:

  1. 既存のtpusrファイルとtpgrpファイルを使用して、新しいユーザーおよびグループ情報を追加します。この際、ファイルに事前に定義されているものと同じ形式を使用してください。また、プレーン・テキスト・パスワードを使用してLDAPデータベースに追加します。
  2. -uオプションを使用して更新したtpusrファイルを指定し、-gオプションを使用して更新したtpgrpファイルを指定して、tpmigldapユーティリティを実行します。例:
    tpmigldap -u $APPDIR/tpusr -g $APPDIR/tpgrp
5.2.7.2 WebLogic管理コンソールによる新しいユーザー情報の追加

WebLogic管理コンソールを使用して新しいユーザー情報をシングル・ポイント・セキュリティLDAPデータベースに追加するには

  1. WebLogic管理コンソールにアクセスして、「セキュリティ」「レルム」myrealmを選択します。myrealmはLDAPセキュリティ・レルムを表します。

    図5-1 WebLogic管理コンソールの「ユーザーの選択」


    WebLogic管理コンソールの「ユーザーの選択」の図

  2. 「新しいユーザーの構成」をクリックして、「一般」タブにアクセスします。

    図5-2 WebLogic管理コンソールの「ユーザーの作成」


    WebLogic管理コンソールの「ユーザーの作成」の図

    ユーザー情報を入力します。

    「名前」フィールドにユーザー名を指定します。

    「記述」フィールドに、次の構文に従ってTuxedo UIDとGIDの値を文字列として指定します。
    <TUXEDO UID
             KEYWORD>=<decimal value>
            <TUXEDO GID KEYWORD>=<decimal value>

    デフォルトでは、TUXEDO UID KEYWORDTUXEDO_UIDで、TUXEDO GID KEYWORDTUXEDO_GIDです。例:TUXEDO_UID=2504 TUXEDO_GID=601

    「パスワード」フィールドにユーザーのパスワードを指定します。「パスワードの確認」フィールドに、パスワードをもう一度入力します。

  3. 「適用」をクリックして、LDAPデータベースを新しいユーザー情報で更新します。

5.3 GAUTHSVRの認証サーバーとしての設定

GAUTHSVRは、使い方がLAUTHSVRによく似たSystem /Tサーバーです。ただし、次の点で異なります。

  • GAUTHSVRは、LDAP (Lightweight Directory Access Protocol)を使用して、多様なLDAPサーバー(WebLogic、OpenLDAP、Netscape/IPlanet、Microsoft Active Directory、z/OS LDAPなど)に配置されているユーザー・セキュリティ情報にアクセスできます。

    ノート:

    WebLogic認証は、LAUTHSVRを使用して構成することもできます。GAUTHSVRは、既存のLAUTHSVRと共存させることも、それを置き換えることもできます。

    LAUTHSVRの詳細は、「LAUTHSVRの認証サーバーとしての設定」および『Oracle Tuxedoファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』「LAUTHSVR(5)」を参照してください。

  • GAUTHSVRの構文では、複数のネットワーク・アドレスを指定して可能性を高めることはできません。詳細は、「複数のネットワーク・アドレスの使用による可用性の向上」を参照してください。
  • GAUTHSVRでは、ローカル・ファイルに格納されたユーザー・セキュリティ情報はサポートされません。詳細は、「データベース検索順序の構成」を参照してください。

    シングル・セキュリティ管理機能を有効にするには、GAUTHSVRを認証サーバーとして構成する必要があります。GAUTHSVRでは、ユーザー・セキュリティ情報がLDAPに対して認証されます。SECURITYACLまたはMANDATORY_ACLに設定されている場合は、認証に成功するとappkeyが返されます。

    GAUTHSVRを認証サーバーとして構成するには、UBBCONFIGファイルで次のパラメータを定義する必要があります。

  • RESOURCESセクションのSECURITYUSER_AUTHACL、またはMANDATORY_ACLに設定します。
  • SERVERSセクションでGAUTHSVRを指定します。

ノート:

GAUTHSVRが有効な構成ファイルを発見できないか、またはこうしたファイルが存在しない場合、USERLOGにエラー・メッセージが書き込まれて起動が失敗します。デフォルトのGAUTHSVR構成ファイルは、製品に付属の$TUXDIR/udataobj/tpgauthです。

JDK1.6以上でGAUTHSVRを使用する場合は、GAUTHSVRを起動する前に、環境にJAVA_OPTS=-Djavax.xml.stream.XMLInputFactory=com.bea.xml.stream.MXParserFactory を指定してください。

Java 1.6でGAUTHSVRを使用する場合、64ビットJREライブラリ・パスをLIBPATHに追加してください。デフォルト・ライブラリは/usr/java6_64/jre/lib/ppc64に配置されます。export LIBPATH=/usr/java6_64/jre/lib/ppc64:$LIBPATH を実行し、正しいLIBPATHを設定します。

5.3.1 GAUTHSVRコマンド行インタフェース

GAUTHSVRはTuxedo用のLDAPベースの認証サーバーです。このサーバーでは、構成ファイルが必要になります(デフォルトでは$TUXDIR/udataobj/tpgauth)。

GAUTHSVRのコマンド行インタフェースの構文は次のとおりです。

-f config
GAUTHSVR構成ファイルのフルパス名を指定します。
-o gaconfig.xml
カスタマ定義の構成ファイル(-fオプションで指定)から生成されたGAUTHSVR内部構成ファイルのフルパス名を指定します。デフォルト値は$APPDIR/gaconfig.xmlです。
-k gakey.dat
構成ファイル(-fオプションで指定)から生成されたGAUTHSVR内部構成ファイルのフルパス名を指定します。デフォルト値は$APPDIR/gakey.datです。
-v
冗長モード。ULOGに、より詳細なメッセージが記録されます。

次の例の場合、GAUTHSVR$TUXDIR/udataobj/tpgauthディレクトリにあるデフォルトの構成ファイルtpgauthを使用します。

GAUTHSVR SRVGRP=GROUP1 SRVID=2 CLOPT=”-A
         --”
次の例の場合、GAUTHSVRは/home/tuxedo/bankappディレクトリにあるmyauthsvr.conf構成ファイルを使用します。
GAUTHSVR SRVGRP=GROUP1 SRVID=2 CLOPT=”-A --
            -f/home/tuxedo/bankapp/myauthsvr.conf”

tpgauthの方が生成されたXMLおよびキー・ファイルよりも新しい場合、生成されたXMLGAUTHSVRによって更新されます。生成されたXMLファイルで更新されるのは、変更または新しく追加されたtpgauth項目のみです。

GAUTHSVRが起動したときにXMLとキー・ファイルが存在しない場合は、GAUTHSVRによって自動的に作成されます。

5.3.2 GAUTHSVR構成ファイルの設定

GAUTHSVRは、バインドDNやバインドDN用の非暗号化パスワードなどの情報が記述された入力構成ファイルをサポートしています。この構成ファイルはテキスト・ファイルであり、任意のテキスト・エディタで編集できるため、ファイルの権限を採用するシステムで保護する必要があります。デフォルトの構成ファイルtpgauth$TUXDIR/udataobj/tpgauthディレクトリに格納されています。このファイルは、GAUTHSVRのコマンド行で上書きできます。次の表に、GAUTHSVR構成ファイルに含まれているキーワードと値のペアを示します。

5.3.2.1 GAUTHSVR構成ファイルの構文要件

通常、GAUTHSVR構成ファイルの値はデフォルトのままで十分ですが、異なる名前で構成することもできます。このため、GAUTHSVR構成ファイルに対する次の要件に注意する必要があります:

  • GAUTHSVR構成ファイルは、プレーン・テキスト・ファイルです。
  • キーワードは大文字/小文字が区別されますが、順序は関係ありません。キーワードの形式は"keyword=value"です。
  • 空白行およびシャープ(#)で始まる行はコメントとして扱われ、無視されます。
  • 1行の上限は255文字です。この上限を超えた部分は切り詰められます。
  • Principalは、LDAPデータベースへのアクセス権限を持っている必要があります(通常、これはLDAP管理者です)。
5.3.2.2 GAUTHSVR構成ファイルのキーワード

GAUTHSVRキーワードは3種類(基本、高度、LDAPスキーマ)に分けることができます。この後の表では、GAUTHSVR構成ファイルのそれぞれのキーワードについて説明します。

表5-3 GAUTHSVR構成ファイルの基本的なキーワード

構成キーワード 値の型 説明
UserCacheExpire numeric ローカル・プロセス・メモリー内のキャッシュされたエントリを使用できる秒数を表す数値。0以外の値を指定すると、キャッシュが有効になります。0を指定するとキャッシュは行われません。デフォルト値は0です。
UserCacheSize numeric ユーザー・キャッシュのエントリの最大数。ユーザーごとに1つのエントリが必要です。値0は制限がないことを指定します。デフォルト値は0 (無制限)です。
SYSADM string Tuxedo SYSADMのユーザー名。
SYSOP string Tuxedo SYSOPのユーザー名。
Host string LDAPサーバーのホスト名またはIPアドレス。デフォルト値はlocalhostです。
Port numeric LDAPサーバーのリスニング・ポートの番号。デフォルト値は389です。
Principal LDAPサーバーへの接続に使用するLDAPユーザーの識別名(DN)。
Credential 「プリンシパル」属性で定義されているLDAPユーザーの認証に使用する資格証明(一般にはパスワード)。資格証明は、クリア・テキスト形式または暗号化形式です。tpldapconfコマンドを使用すると暗号化された資格情報を作成できます。
RetrieveUIDAndGID boolean UIDおよびGID情報をLDAPサーバーから取得するかどうかを示します。SECURITYACLまたはMANDATORY_ACLに設定されている場合はtrueに設定する必要があります。デフォルト値はfalseです。

表5-4 GAUTHSVR構成ファイルの高度なキーワード

構成キーワード 値の型 説明
TuxedoUIDKey string Tuxedo UIDを識別するために使用されます。デフォルト値はTUXEDO_UIDです。
TuxedoGIDKey string Tuxedo GIDを識別するために使用されます。デフォルト値はTUXEDO_GIDです。
ConnectTimeout numeric LDAP接続の確立を待機する最大時間(秒数)。0に設定した場合は、最長時間制限なしで待機します。デフォルト値は0です。
ConnectionRetryLimit numeric LDAPサーバーへの初回の接続に失敗した場合に、接続を再試行する回数。デフォルト値は1です。
ResultsTimeLimit numeric 結果を待機してタイムアウトになるまでの最大時間(ミリ秒)。0に設定した場合は、最長時間制限なしで待機します。デフォルト値は0です。
SSLEnabled boolean LDAPサーバーへの接続にTLSを使用することを指定します。デフォルト値はfalseです。
KeepAliveEnabled boolean LDAP接続のタイムアウトを回避するかどうかを指定します。デフォルト値はfalseです。
ParallelConnectDelay numeric 複数のサーバーに同時に接続を試行したときの遅延時間(秒)。0に設定した場合は、接続の試行がシリアライズされます。接続の試行はリストの最初のサーバーに対して行われます。現在のホストへの接続が失敗した場合にのみ、リスト中の次のエントリが試行されます。この設定では、ホストがダウンしている場合にアプリケーションが許容しがたいほど長い時間ブロックされる場合があります。0より大きい値に設定されている場合、この遅延秒数が経過すると、別の接続設定スレッドが開始されます。デフォルト値は0です。
FollowReferrals boolean LDAPディレクトリ内で参照を自動的に追跡するかどうかを指定します。falseに設定した場合、LDAPリクエスト中に参照が出現すると、参照例外が送信されます。デフォルト値はtrue
BindAnonymouslyOnReferrals boolean LDAPディレクトリ内で参照を追跡する際に、匿名でバインドするかどうかを指定します。falseに設定した場合は、現在のプリンシパルと資格証明が使用されます。デフォルト値はfalseです。
UseZOSRACF boolean LDAPサーバーがz/OS RACF LDAPサーバーであるかどうかを指定します。デフォルト値はfalseです。
ControlFlag string Tuxedo LDAP認証プロバイダをログイン順序にどのように組み込むかを指定します。ログイン順序で認証プロバイダが使用される方法は、制御フラグにより決定されます。REQUIRED値は、このLoginModuleが成功する必要があることを示します。失敗しても、認証は構成されている認証プロバイダのLoginModuleリストにある次のLoginModuleに進みます。これはデフォルト設定です。REQUISITE値は、このLoginModuleが成功する必要があることを示します。他の認証プロバイダが構成されている場合、このLoginModuleが成功すると、認証はLoginModuleリストにある次のLoginModuleに進みます。それ以外の場合は、制御がアプリケーションに戻ります。SUFFICIENT値は、このLoginModuleが成功する必要はないことを示します。成功した場合、制御はアプリケーションに戻されます。他の認証プロバイダが構成されている場合、このLoginModuleが失敗すると、認証はLoginModuleリストにある次のLoginModuleに進みます。OPTIONAL値は、このLoginModuleが成功する必要はないことを示します。成功しても失敗しても、認証はLoginModuleリストを下位方向に進みます。デフォルト値はREQUIREDです。

表5-5 構成ファイルのLDAPスキーマ・キーワード

構成キーワード 値の型 説明
UserObjectClass string ユーザーを格納するLDAPオブジェクト・クラス。 デフォルトは、personです。
UserBaseDN string ユーザーを格納するLDAPディレクトリ内のツリーの基本識別名(DN)。デフォルト値はou=people, o=example.comです。
UserFromNameFilter string 特定のユーザー名のユーザーを検索するためのLDAP検索フィルタ。デフォルト値は(&(cn=%u)(objectclass=person))です。
UserSearchScope string LDAPディレクトリ・ツリー内でユーザーを検索する際の深さを示します。有効な値は「subtree」と「onelevel」です。デフォルト値はsubtreeです。
UserUIDAttrName string ユーザーのUID (またはUIDとGID)を一定の形式で示すLDAPユーザー・オブジェクトの属性名。デフォルト値はuseridです。
UIDAttrValueType string LDAPユーザー・オブジェクトのUID属性の値型を示します。有効な値としては、UIDおよびUIDAndGIDがあります。デフォルト値はUIDです。

ノート:

SECURITYACLまたはMANDATORY_ACLの場合、UIDAndGIDに設定する必要があります。
UserGroupAttrNames string ユーザーが属すグループを示すLDAPユーザー・オブジェクトの属性名。この属性には、値型としてGID、グループCN、またはグループDNを指定できます。指定できる値型は、構成ごとに1つのみです。名前が複数ある場合はカンマで区切ります。デフォルト値はusergroupsです。
GroupAttrValueType string LDAPユーザー・オブジェクトのグループ属性の値型を示します。有効な値は、「GID」、「group CN」、または「group DN」です。デフォルト値はGIDです。
GroupBaseDN string グループを格納するLDAPディレクトリ内のツリーの基本識別名(DN)。デフォルト値はou=groups, o=example.comです
GroupFromNameFilter string 特定のグループ名を検索するためのLDAP検索フィルタ。デフォルト値は(&(cn=%g)(objectclass=groupofuniquenames))です。
StaticGroupObjectClass string 静的グループを格納するLDAPオブジェクト・クラスの名前。デフォルト値はgroupofuniquenamesです。
GroupSearchScope string グループ検索の対象とするLDAPディレクトリ・ツリーの階層を指定します。有効な値は"subtree, onelevel"です。デフォルト値はsubtreeです。
GroupGIDAttrName string グループのGIDを示すLDAPグループ・オブジェクトの属性。デフォルト値はgroupidです。
5.3.2.3 GAUTHSVR構成ファイルのサンプル

次のリストに、WebLogic Server用のGAUTHSVR構成ファイルのサンプルを示します。他のLDAPサーバーを構成する際に、この例を参照してください。

リスト4-3 WebLogic GAUTHSVR構成ファイルのサンプル

#
         # Tuxedo LDAP Authentication Server configuration file.
         #
         # created: Thu May 26 15:36:59 2002
         # end of file
# Tuxedo configuration
         UserCacheExpire = 600
         UserCacheSize = 16384
         SYSADM = sysadm
         SYSOP = sysop

        # LDAP server configuration
         Host = server.bea.com
         Port = 7001
         Principal = cn=Admin
         Credential= weblogic

         UserObjectClass = person
         UserBaseDN = ou=people,ou=myrealm,dc=examples
         UserFromNameFilter = (&(uid=%u)(objectclass=person))
         UserUIDAttrName = description
         UserGroupAttrNames=wlsMemberOf
         RetrieveUIDAndGID = true
         UIDAttrValueType = UIDAndGID

ノート:

LDAPの説明のUID =*およびGID = *SECURITY IS ACLで定義されたものと同じであることを確認してください。

警告:

LDAP管理者のPASSWORDはクリア・テキストであるため、システム管理者は、適切なアクセス権限を使用してこのファイルを保護することをお薦めします。

5.3.3 GAUTHSVRを使用したUBBCONFIGのサンプル

次のリストに、SECURITYACLに設定され、GAUTHSVRが定義されたUBBCONFIGファイルの例を示します。

リスト GAUTHSVRを使用したUBBCONFIGファイルの例

# UBBCONFIG 
         *SERVER 
          GAUTHSVR SVRGRP="SYSGRP" SVRID=100
                         CLOPT="-A -- -f ${APPDIR}/tpgauth"
                         ENVFILE="${APPDIR}/tpgauth.env"

関連項目:

  • 『Oracle Tuxedoファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』GAUTHSVR(5)およびLAUTHSVR(5)に関する項

5.3.4 tpmigldifを使用したユーザー・インタフェースの移行

tpmigldifコマンド・ユーティリティを使用すると、Tuxedoのユーザーおよびグループ情報をLDAPデータ交換形式(LDIF)でLDAPサーバーに移行できます。tpmigldifを使用するには、移行テンプレートを作成する必要があります。

5.3.4.1 tpmigldifコマンド行オプションを使用する

次の表に、tpmigldifユーティリティのコマンド行オプションを示します。コマンド行オプションの順序は関係ありません。

表5-6 tpmigldifコマンド行オプション

コマンド行オプション オプションの引数 デフォルト値 使用
-t user|group user 移行タイプを指定します。
-f template filename tpusr-template (タイプがユーザーの場合)、またはtpgrp-template(タイプがグループの場合) テンプレート・ファイル名を指定します。
-o o (出力ファイル名) console/stdout 出力ファイル名を指定します。
-u full path name tpusr tpusrファイルのフル・ディレクトリ・パスです
-g full path name tpgrp tpgrpファイルのフル・ディレクトリ・パスです
5.3.4.2 tpusrおよびtpgrpファイル形式

次のリストに、5つのフィールドがコロンで区切られたtpusrファイルを示します:

name:password(encrypted) :user id:group id:client name::

リスト tpusrファイルの例

user1:EI4xxxjrCc:16668:601:TPCLTNM,client::
         user2:EI4xxxjrCc:16669:602:TPCLTNM,client::

リストに、3つのフィールドがコロンで区切られたtpgrpファイルを示します:

name::group id:

リスト tpgrpファイルの例

group1::601:
         group2::602:
5.3.4.2.1 tpusrファイルの新しいパスワードを割り当てる(オプション)

管理者は、ユーザーおよびグループの情報を移行する前に、各ユーザーに新しいパスワードを割り当てることができます。これにより、生成されるLDIF出力に、各ユーザーの正しいパスワードを含めることができます。このステップが必要なのは、tpusrファイル内のパスワードが一方向暗号化で暗号化されているため、このファイルから元のパスワードを取り出すことができないためです。

テキスト・エディタを使用してtpusrファイルのパスワードを変更する方法は2つあります:

  • tpusrファイルのパスワード・フィールドを修正して、ファイル内の各ユーザーのユーザー・パスワードを変更します。このパスワード・フィールドは、tpusrファイル内の2番目のフィールドです。各ユーザーは、tpusrファイル内の個別の行に入力します。元のtpusrファイルの例は、リスト4-5を参照してください。
    user1:pwd1:16668:601:TPCLTNM,client::
             user2:pwd2:16669:602:TPCLTNM,client:
  • 新しいパスワードをtpusrファイルの最後のフィールドに追加します。
    user1:EI4xxxjrCc:16668:601:TPCLTNM,client::pwd1:
             user2:EI4xxxjrCc:16669:602:TPCLTNM,client::pwd2:
5.3.4.3 移行テンプレートを作成する

移行テンプレートは、tpusrまたはtpgrpファイルをLDIF出力ファイルに変換するためにtpmigldifコマンド・ユーティリティで使用されるテキスト・ファイルです。

次のリストに、tpusr-template移行ファイルの例を示します。<%n>tpusrファイルのフィールドを表し、nは1から始まります。

ノート:

<%gn>は、所定のユーザーのtpgrpファイル内のグループ・フィールドに使用します。

リスト tpusr-template

dn: CN=<%1>,CN=Users,DC=tuxdev,DC=bea,dc=com
         objectclass: top
         objectclass: person
         objectclass: organizationalPerson
         objectclass: user
         cn: <%1>
         description: Tuxedo User, TUXEDO_UID=<%3> TUXEDO_GID=<%4>
         password: <%7>

次のリストに、tpusr-templateのLDIF出力を示します。

リスト LDIF出力

dn: CN=user1,CN=Users,DC=tuxdev,DC=bea,dc=com
         objectclass: top
         objectclass: person
         objectclass: organizationalPerson
         objectclass: user
         cn: user1
         description: Tuxedo User, TUXEDO_UID=16668 TUXEDO_GID=601
         password: pwd1

         dn: CN=user2,CN=Users,DC=tuxdev,DC=bea,dc=com
         objectclass: top
         objectclass: person
         objectclass: organizationalPerson
         objectclass: user
         cn: user2
         description: Tuxedo User, TUXEDO_UID=16669 TUXEDO_GID=602
         password: pwd2

5.3.5 サポートされるLDAPサーバーのサンプル・テンプレート

Tuxedoには、サポートされるLDAPサーバーのサンプル・テンプレートが用意されています。次の表にファイルを示します: 1

表5-7 サポートされるLDAPサーバーのサンプル・テンプレート

LDAPサーバー GAUTHSVR構成 ユーザー移行テンプレート グループ移行テンプレート
WebLogic Server tpgauth tpusr-template tpgrp-template
Active Directory 2 tpgauth-ad tpusr-template-ad tpgrp-template-ad
IPlanet tpgauth-iplanet tpusr-template-iplanet tpgrp-template-iplanet
z/OS LDAP (RACFバックエンド) 3 tpgauth-racf tpusr-template-racf tpgrp-template-racf

1

これらのファイルはすべて、$TUXDIR/udataobjに格納されています。

2

作成時にActive Directoryユーザーのパスワードを追加することはできません。パスワードを変更またはリセットする方法については、Microsoftのサポート・ドキュメント(http://support.microsoft.com/kb/269190、http://support.microsoft.com/kb/263991など)を参照してください。

3

移行後にz/OS RACFアカウントをアクティブ化するには、2つの作業を完了する必要があります:
  1. z/OS管理者によってパスワードをリセット
  2. アカウントでログオンしてパスワードを変更

5.4 OAUTHSVRの認証サーバーとしての設定

OAUTHSVRはAuthentication and Authorization Serviceを備えたTuxedo提供のサーバーで、ユーザー・セキュリティ情報はOracle Access Manager (OAM)サーバーにあります。シングル・セキュリティ管理機能を有効にするには、OAUTHSVRを認証サーバーとして構成する必要があります。実行時に、OAUTHSVRはOAMサーバーを使用してユーザーを認証および認可します

OAUTHSVRを認証サーバーとして構成するには、UBBCONFIGファイルで次のパラメータを定義する必要があります。

  • RESOURCESセクションのSECURITYをUSER_AUTHACL、またはMANDATORY_ACLに設定します。
  • <server-classname="OAUTHSVR"/>としたTMJAVASVRSERVERSセクションに指定する必要があります。

5.4.1 OAUTHSVR構成ファイルの設定

OAUTHSVRは、OAMアクセス・クライアント構成ファイルやTuxedoとOAM間のリソース・タイプ・マッピングなどの情報が含まれている入力構成ファイルをサポートしています。この構成ファイルはテキスト・ファイルであり、任意のテキスト・エディタで編集できるため、ファイルの権限を採用するシステムで保護する必要があります。デフォルトの構成ファイルtpoam.authは、$TUXDIR/udataobjディレクトリに格納されています。このファイルは、OAUTHSVRのコマンド行で上書きできます。次の表に、OAUTHSVR構成ファイルに含まれているキーワードと値のペアを示します。

5.4.1.1 OAUTHSVR構成ファイルの構文要件
  • 通常、OAUTHSVR構成ファイルの値はデフォルトのままで十分ですが、異なる名前で構成することもできます。このため、OAUTHSVR構成ファイルに対する次の要件に注意する必要があります。
  • OAUTHSVR構成ファイルは、プレーン・テキスト・ファイルです。
  • キーワードの順序は関係ありませんが、キーワードとその値の間には少なくとも1つのスペースが必要です。
  • コメントはポンド記号(#)で開始します。#に続くテキストは無視されます。

ノート:

Tuxedo OAMベースのセキュリティ認証および認可サーバーを設定して使用するためには、管理者はOAMアクセス・クライアントを登録するか、またはすでにインストールされているWebGateを使用する必要があります。OAMアクセス・クライアントを登録し、構成する方法は、Oracle OAMのドキュメントを参照してください。
5.4.1.2 OAUTHSVR構成ファイルのキーワード

次の表に、OAUTHSVR構成ファイルのキーワードを示します。

表5-8 OAUTHSVR構成ファイルのキーワード

キーワード 値の型 使用
OAM_CONFIG_DIR string OAMアクセス・クライアント構成ファイルが検索されるディレクトリの場所。アクセス・クライアント構成は、アクセス・クライアントをOAM 11gサーバー搭載のOAM 11gエージェントとして登録して取得することも、すでにインストールされているWebGateからコピーすることもできます。
RESTYPE_MAPPING string TuxedoとOAM間のリソース・タイプ・マッピング。形式は"RESTYPE_MAPPING $TUX_RESTYPE $OAM_RESTYPE"で、RESTYPE_MAPPING SERVICE TUXEDO_SERVICE RESTYPE_MAPPING QUEUE TUXEDO_QUEUE RESTYPE_MAPPING EVENT TUXEDO_EVENTのように複数のリソース・タイプを定義できます。OAMに定義されているリソース・タイプ名がTuxedoリソース・タイプと同じである場合、マッピングは不要です。
TUXEDO_DEF_RESTYPE string OAMに定義されているTuxedoのデフォルトのリソース・タイプ。デフォルトは"TUXEDO_SERVICE"です。
TUXEDO_DEF_RESOURCE string OAMに定義されているTuxedoのデフォルトのリソース。OAMでは常に、認証レベルを算出するためのリソースと、ユーザーを認証するためのポリシーが必要です。管理者は、デフォルトのリソースを定義する必要があります。デフォルトは"tuxres"です。
5.4.1.3 OAMアクセス・クライアント構成(OAM_CONFIG_DIR)

OAMでは、OAMアクセス・クライアント構成情報が必要です。

詳細は、OAMのドキュメント(https://docs.oracle.com/cd/E52734_01/oam/AIDEV/as_api.htm#AIDEV151)を参照してください

5.4.1.3.1 制限事項

OAUTHSVRは、OAM 10gエージェントをサポートしていません。11g以降のWebGateエージェントが必要です。次のリストに、11gR1PS2 OAMの構成ディレクトリの例を示します。

リスト 11gR1PS2 OAM構成ディレクトリの例

OAM_CONFIG_DIR/ 
         |------config/ 
         |------ cwallet.sso (Get from WebGate) 
         |------ jps-config.xml (Get from OAM SDK) 
         |------ ObAccessClient.xml (Get from WebGate)

次のリストに、OAM12cR2の構成ディレクトリのもう1つの例を示します(エージェントとOAMサーバー間の通信転送セキュリティ・モードは、「簡易」または「証明書」です)。

リスト 11gR1PS3 OAM構成ディレクトリの例

OAM_CONFIG_DIR/ 
        |------config/ 
        |------ cwallet.sso (Get from WebGate) 
        |------ jps-config.xml (Get from OAM SDK) 
        |------ ObAccessClient.xml (Get from WebGate) 
        |------ oamclient-keystore.jks (Get from WebGate)
        |------ oamclient-truststore.jks (Get from WebGate) 
        |------ password.xml (Get from WebGate)

詳細は、http://docs.oracle.com/cd/E21764_01/install.1111/e12002/webgate.htm#INOIM75755でOAMのドキュメントを参照してください。

ノート:

OAMサーバー・ホストのディレクトリ<OAM_DOMAIN_HOME>/output/<WebGate_ID> には、cwallet.ssoファイルおよびObAccessClient.xmlファイルがあります。
5.4.1.4
5.4.1.4.1 1.OAUTHSVR構成ファイルのサンプル

次のリストに、OAUTHSVR構成ファイルの例を示します。

リスト OAUTHSVR構成ファイルの例

# Tuxedo OAM Authentication Server configuration file.
  
        OAM_CONFIG_DIR /usr/tuxedo/accessclient 
        #RESTYPE_MAPPING SERVICE TUXEDO_SERVICE 
        #RESTYPE_MAPPING QUEUE TUXEDO_QUEUE
        #RESTYPE_MAPPING EVENT TUXEDO_EVENT 
        TUXEDO_DEF_RESTYPE TUXEDO_SERVICE 
        TUXEDO_DEF_RESOURCE tuxres 
        # end of file
5.4.1.4.2 2.OAUTHSVRを使用したUBBCONFIGの例

次のリストに、SECURITYACLに設定され、OAUTHSVRが定義されたUBBCONFIGファイルの例を示します。

リスト OAUTHSVRを使用したUBBCONFIGファイルの例

*RESOURCES 

         IPCKEY 51002 
         MASTER site1 
         MAXACCESSERS 50
         MAXSERVERS 20 
         MAXSERVICES 20 
         MODEL SHM 
         LDBAL N 
         BLOCKTIME 10
         SECURITY ACL 
         AUTHSVC "..AUTHSVC" 
         OPTIONS EXT_AA 

         *MACHINES 
          DEFAULT:
          APPDIR="/home/tuxedo/application"
          TUXCONFIG="/home/tuxedo/application/TUXCONFIG"
          TUXDIR="/home/tuxedo/tuxedo12" 
          Server1 LMID=site1 
          MAXWSCLIENTS=20

         *GROUPS 
          GROUP1 LMID=site1 GRPNO=1 
          GROUP2 LMID=site1 GRPNO=2 
          GROUP3 LMID=site1 GRPNO=3 
          GROUP4 LMID=site1 GRPNO=4 

        *SERVERS
         DEFAULT:
         CLOPT="-A" RESTART=N MAXGEN=5 
         TMJAVASVR SRVGRP=GROUP1 SRVID=2 CLOPT="-A -- -c tjsoam.xml"

         DMADM SRVGRP=GROUP2 SRVID=20 
         GWADM SRVGRP=GROUP3 SRVID=30 
         GWTDOMAIN SRVGRP=GROUP3 SRVID=31 
         Simpserv SRVGRP=GROUP4 SRVID=40 

        *SERVICES 
         TOUPPER
5.4.1.4.3 3.tjsoam.xml Javaサーバー構成ファイルの例

次のリストに、OAUTHSVRを使用したJavaサーバー構成ファイルの例を示します。

リスト OAUTHSVRを使用したJavaサーバー構成ファイルの例

<?xml version="1.0" encoding="UTF-8"?> 
         <TJSconfig version="2.0"> 
         <!-- do not forget modify $TUXDIR $OAMASDK_DIR to absolute path --> 
         <java-config>
         <jvm-options>-Doracle.security.jps.config=/home/tuxedo/application/oamclient/config/jps-config.xml</jvm-options>
         <jvm-options>-Doracle.tuxedo.oam.config=tpoam.auth</jvm-options>
         </java-config> 

         <classpath-config>
         <classpath>/home/tuxedo/udataobj/tuxj/oam/com.oracle.tuxedo.tjoam.jar</classpath>
         <classpath>/home/tuxedo/oamsdk/*</classpath>
         </classpath-config> 

         <tux-server-config>
         <server-class name="OAUTHSVR"/> 
         </tux-server-config>

         </TJSconfig>

5.4.2 /Tドメイン・サポート

ACL_POLICYおよびCREDENTIAL_POLICYは、資格情報の伝播に影響を与えます。

ローカル・ドメインがリモート・ドメインからリクエストを受信したとき、ACL_POLICYLOCALに設定されている場合には、ローカル・ドメインはリモート・ドメインから受信したサービス・リクエストのOAMセッション・トークンを削除します(セッション・トークンが存在する場合)。ACL_POLICYGLOBALに設定されている場合には、ローカル・ドメインはリモート・サービス・リクエストとともに受信したOAMセッション・トークンを削除しません。

Tuxedoドメインがリモートの/Tドメインにリクエストを送信したとき、CREDENTIAL_POLICYLOCALに設定されている場合には、ローカル・ドメインはリモート・ドメイン・アクセス・ポイント宛のローカル・サービス・リクエストからセッション・トークンを削除します。CREDENTIAL_POLICYGLOBALに設定されている場合には、ローカル・ドメインはこのリモート・ドメイン・アクセス・ポイント宛のローカル・サービス・リクエストからセッション・トークンを削除しません。

前述の説明からわかるのは、OAMセッション・トークンをTuxedo /Tドメイン間で渡すためには、ACL_POLICYとCREDENTIAL_POLICYの両方をGLOBALとして構成し、同じOAMアクセス・クライアント構成(OAUTHSVR構成ファイルのOAM_CONFIG_DIRパラメータ)を使用して、OAMセッション・トークンが両方のドメインで有効なるようにする必要があるということです。

ユーザー・リクエストを認証または認可するには、username/passwordペアまたはOAMサーバーによって発行された有効なセッション・トークンが存在している必要があります。username/passwordペアと有効なセッション・トークンの両方が存在しない場合、目的のプリンシパルを偽装できず、OAMサーバーによる認証または認可が行えません。

ドメイン・ゲートウェイがリクエストを受信したときに、ACL_POLICYLOCALに設定されているか、またはリクエストにOAMセッション・トークンが含まれていない(たとえば、リモート・ドメインがOAMを使用していないか、CREDENTIAL_POLICYLOCALに設定されているか、リモート・ドメインのTuxedoバージョンが12.2.2.0.0以降でないか、またはリモート・ドメインがWTCのようにOAMセッション・トークンを渡すことができない)場合、目的のプリンシパルを偽装するため、ローカル・ドメイン・ゲートウェイはリモート・ドメインから受信したサービス・リクエストの資格証明をこのリモート・ドメイン・アクセス・ポイントのLOCAL_PRINCIPAL_NAMEパラメータに指定されているプリンシパル名に置き換えます(指定されていない場合、プリンシパル名はデフォルトではリモート・ドメイン・アクセス・ポイントのACCESSPOINTID文字列に設定されます)。パスワードは、リモート・ドメイン・パスワードを使用します。つまり、DMCONFIGファイルのDM_LOCALセクションにあるSECURITYパラメータをDM_PWに設定する必要があります。リモート・ドメイン・パスワードと同じパスワードでユーザーLOCAL_PRINCIPAL_NAME (またはACCESSPOINTID)をOAMに定義する必要があります。これらの前提条件が満たされず、UBBCONFIGSECURITYACLまたはMANDATORY_ACLに設定されている場合、認可は失敗します。

5.4.3 Oracle SALTサポート

OAM統合では、SALTインバウンド・リクエストのみがサポートされます。HTTP基本認証では、GWWSはユーザー名とパスワードを抽出し、Tuxedo AUTHSVCを呼び出してユーザーを認証します。OAUTHSVRはOAMと通信して認証を行い、成功した場合、GWWSはOAMセッション・トークンを取得し、セッション・トークンは次のサービス呼出しに渡され、OAUTHSVRはセッション・トークンを使用して認可を行います。

WSSEの状況では、GWWSは受信済のユーザー資格証明を使用し、Tuxedoとの間で認証を実行します。Tuxedoサービスを呼び出す前に認証レベルがTPAPPAUTHかどうかをチェックし、セッション・トークンをコンテキストに挿入し、Tuxedoサービスを呼び出します。

X509認証またはSAML SSOを使用した場合は、基本認証がリクエストに添付されているかどうかに依存します。基本認証がリクエストに添付されていない場合は、Tuxedoがユーザー名およびパスワードを取得できず、認可は失敗します。

ユーザーがWebGateに対してすでに認証され、OAMセッション・トークンがHTTPヘッダーに存在する場合、GWWSはトークンを抽出し、それを使用して認可します。

WebGateは、OAM製品の一部として様々なWebサーバー(Oracle HTTP Server - OHS、IBM HTTP Server - IHS、Apache ...)向けに用意されているエージェントです。これは、様々なHTTPサーバーにインストールされ、OAMを使用して認証および認可するには、HTTPサーバーおよびWebGateが必要です。HTTPサーバーがWLSやSALTなどのバックエンド・アプリケーションに対してリバース・プロキシとして機能することがよくあります。

ノート:

11g WebGateの場合、OAMトークンCookie (OAMAuthnCookie)は、SALTなどのダウンストリーム・アプリケーションに渡されません。WebGateユーザー定義パラメータfilterOAMAuthnCookieをfalseに指定してください。詳細は、「OAM 11gエージェントの登録および管理」を参照してください。

5.4.4 WTCサポート

WTCインバウンド・サービスの場合、クライアントはTuxedoドメインで認証され、リクエストはWTCに渡されます。WTCは、EJB名を検索し、渡されたプリンシパル(ACL_POLICYがグローバル)またはドメイン名(ACL_POLICYがローカル)を使用してターゲットのEJBを呼び出します。認証は不要ですが、WLSセキュリティ・モジュールがこのプリンシパルの認可をチェックします(セキュリティ・アイデンティティ)。ターゲットのEJBは、アイデンティティのみを受信し、認証データは受信しません。WLSがアイデンティティを認証する方法はなく、アイデンティティは認可チェックにのみ使用されます。OAMセッション・トークンは、WTCに渡されません。

WTCアウトバウンド・サービスの場合、認証はWLSでのみ行い、認可チェックもWLSで行う必要があります。WTCがTuxedoドメインにリクエストを渡すときに、ユーザーがすでに認証されている場合、WTCはWLSからOAMセッション・トークンを取得できません。Tuxedoローカル・ドメイン・ゲートウェイは、/Tドメインと同じアプローチを使用して、目的のプリンシパル(LOCAL_PRINCIPAL_NAMEまたはACCESSPOINTIDと、リモート・ドメイン・パスワード)を偽装します。

5.4.5 Oracle JCAサポート

JCAアーキテクチャには、セキュリティ・プリンシパル・アイデンティティをインポートする独自の方法があるため、OAMのためにTuxedo JCAアダプタを変更することはできず、またすべきではありません。この規定に違反しないでください。そのため、異なるJava AS間で移植できないようになっています。JCAアーキテクチャ仕様には独自の方法があり、それはJCA 1.6互換のすべてのJCAでサポートされています。

関連項目: