Interstage Application Server アプリケーション作成ガイド (コンポーネントトランザクションサービス編)
目次 索引 前ページ次ページ

第5章 Interstageの特徴的な機能> 5.5 アクセス制御を行うアプリケーションの作成

5.5.4 アクセス制御を使用する場合の定義例

 アクセス制御を行う場合のコンポーネントトランザクションサービスの、環境定義およびワークユニット定義の定義例を示します。

定義例のアクセス制御の構成

 次の構成でアクセス制御を実施する例を示します。

 ユーザは、user1、user2とuser3とします。
 ワークユニット(WU1)にオブジェクトが2つある(MOD1/INTF1、MOD1/INTF2)とします。
 ワークユニットは、アクセス制御対象で、user2とuser3がアクセス可能とします。
 オブジェクト(MOD1/INTF1)は、独自のアクセス制御の設定は行いません。したがって、user2とuser3がアクセス可能となります。
 オブジェクト(MOD1/INTF2)は、独自のアクセス制御の設定を行います。user2だけがアクセス可能とします。

システム構成

InfoDirectoryのエントリ構成

注意

ユーザ名による認証を行う場合の注意

 ユーザ名とパスワードにて行うユーザ認証は、従来のユーザDNを使用する場合と比較してパラメタの設定が簡易であり、かつWebサーバのオンライン照合機能と連携を行うことが可能となります。
 この場合、IDLのパラメタで指定されたユーザ名とパスワードをInfoDirectoryへのユーザ認証に使用します。

 ユーザ名の認証を行う対象は、InfoDirectoryのinetOrgPersonクラスのUID属性に指定した名前を使用します。
 ユーザ認証時にユーザ名で検索を行う場合は、InfoDirectoryのツリー構造内に同じユーザ名が存在する場合、先に検索されたユーザ名を採用して認証を行います。このため、ツリー構造内に、同じユーザ名が存在する場合は、UserBaseDNの指定によりユーザを特定する検索基点を考慮する必要があります。
 またはツリー構造内のユーザ名を一意で管理します。

 
 

IDL(ユーザDNによる認証の場合)

 サーバアプリのIDLは、以下とします。

module MOD1{
          interface   INTF1{
                        long FUNC(in string userDN,
                     in string password,
                        in long inlong,
                         out long outlong
                        );
          };
          interface   INTF2{
                        long FUNC(in string pw,
                        in long inlong,
                     in string usrnm,
                        out long outlong
                        );
          };
};

IDL(ユーザ名による認証の場合)

 サーバアプリのIDLは、以下とします。

module MOD1{
          interface   INTF1{
                        long FUNC(in string username,
                     in string password,
                        in long inlong,
                        out long outlong
                        );
          };
          interface   INTF2{
                        long FUNC(in string pw,
                        in long inlong,
                     in string usrnm,
                        out long outlong
                        );
          };
};

コンポーネントトランザクションサービスの環境定義

 自サーバマシンでInfoDirectoryが動作している本例のシステム構成の場合、コンポーネントトランザクションサービスの環境定義には、アクセス制御のための定義は必要ありません。Host of InfoDirectoryおよびPort of InfoDirectoryとも省略値が使用されます。

定義例:
[SYSTEM ENVIRONMENT]
System Scale:small

ワークユニット定

 本例の場合、ワークユニットを対象としたアクセス制御のためにControl Optionセクションにアクセス制御の対象とするための指定を行います。また、オブジェクト(MOD1::INTF2)のために、MOD1::INTF2のApplication Programセクションにアクセス制御の対象とするための指定を行います。
 また、両方のオブジェクトのApplication Programセクションで認証を行う形式を指定し、ユーザDNで行うかまたはユーザ名による認証を行うかを指定します。また、アクセス制御のためのユーザDNまたはユーザ名とパスワードを指定するパラメタの名前を指定します。

定義例:ユーザDNによる認証の場合
[WORK UNIT]
Name: WU1
Kind: ORB
[APM]
Name:TDNORM
[Control Option]
Path:\interstage_apl_path
Current Directory:\interstage_apl_curdir
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF1
Executable File:server1
Application Language:C
User DN Param:userDN
Password Param:password
[Application Program]
Destination:MOD1/INTF2
Executable File:server2
Application Language:C
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
User DN Param:usrnm
Password Param:pw
定義例:ユーザ名による認証の場合
[WORK UNIT]
Name: WU1
Kind: ORB
[APM]
Name:TDNORM
[Control Option]
Path:\interstage_apl_path
Current Directory:\interstage_apl_curdir
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF1
Executable File:server1
Application Language:C
Type of User Identification:NAME
User name Param:username
Password Param:password
User Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF2
Executable File:server2
Application Language:C
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
Type of User Identification:NAME
User name Param:usrnm
Password Param:pw
User Base DN:"o=xyz,c=jp"

定義例:ユーザDNによる認証の場合
[WORK UNIT]
Name: WU1
Kind: ORB
[APM]
Name:TDNORM
[Control Option]
Path:/interstage_apl_path
Current Directory:/interstage_apl_curdir
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF1
Executable File:server1
Application Language:C
User DN Param:userDN
Password Param:password
[Application Program]
Destination:MOD1/INTF2
Executable File:server2
Application Language:C
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
User DN Param:usrnm
Password Param:pw
定義例:ユーザ名による認証の場合
[WORK UNIT]
Name: WU1
Kind: ORB
[APM]
Name:TDNORM
[Control Option]
Path:/interstage_apl_path
Current Directory:/interstage_apl_curdir
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF1
Executable File:server1
Application Language:C
Type of User Identification:NAME
User name Param:username
Password Param:password
User Base DN:"o=xyz,c=jp"
[Application Program]
Destination:MOD1/INTF2
Executable File:server2
Application Language:C
Access Control: YES
Access Control Base DN:"o=xyz,c=jp"
Type of User Identification:NAME
User name Param:usrnm
Password Param:pw
User Base DN:"o=xyz,c=jp"

目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 2005