| Interstage Application Server アプリケーション作成ガイド (コンポーネントトランザクションサービス編) |
目次
索引
![]()
|
| 第5章 Interstageの特徴的な機能 | > 5.5 アクセス制御を行うアプリケーションの作成 |
アクセス制御を行う場合のコンポーネントトランザクションサービスの、環境定義およびワークユニット定義の定義例を示します。
次の構成でアクセス制御を実施する例を示します。
ユーザは、user1、user2とuser3とします。
ワークユニット(WU1)にオブジェクトが2つある(MOD1/INTF1、MOD1/INTF2)とします。
ワークユニットは、アクセス制御対象で、user2とuser3がアクセス可能とします。
オブジェクト(MOD1/INTF1)は、独自のアクセス制御の設定は行いません。したがって、user2とuser3がアクセス可能となります。
オブジェクト(MOD1/INTF2)は、独自のアクセス制御の設定を行います。user2だけがアクセス可能とします。


ユーザ名による認証を行う場合の注意
ユーザ名とパスワードにて行うユーザ認証は、従来のユーザDNを使用する場合と比較してパラメタの設定が簡易であり、かつWebサーバのオンライン照合機能と連携を行うことが可能となります。
この場合、IDLのパラメタで指定されたユーザ名とパスワードをInfoDirectoryへのユーザ認証に使用します。
ユーザ名の認証を行う対象は、InfoDirectoryのinetOrgPersonクラスのUID属性に指定した名前を使用します。
ユーザ認証時にユーザ名で検索を行う場合は、InfoDirectoryのツリー構造内に同じユーザ名が存在する場合、先に検索されたユーザ名を採用して認証を行います。このため、ツリー構造内に、同じユーザ名が存在する場合は、UserBaseDNの指定によりユーザを特定する検索基点を考慮する必要があります。
またはツリー構造内のユーザ名を一意で管理します。
サーバアプリの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は、以下とします。
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とも省略値が使用されます。
本例の場合、ワークユニットを対象としたアクセス制御のためにControl Optionセクションにアクセス制御の対象とするための指定を行います。また、オブジェクト(MOD1::INTF2)のために、MOD1::INTF2のApplication Programセクションにアクセス制御の対象とするための指定を行います。
また、両方のオブジェクトのApplication Programセクションで認証を行う形式を指定し、ユーザDNで行うかまたはユーザ名による認証を行うかを指定します。また、アクセス制御のためのユーザDNまたはユーザ名とパスワードを指定するパラメタの名前を指定します。


目次
索引
![]()
|