...

WebSphere Process Server V6.1 新機能解説 1 編

by user

on
Category: Documents
22

views

Report

Comments

Transcript

WebSphere Process Server V6.1 新機能解説 1 編
1
Software
WebSphere Process Server V6.1
新機能解説
Human Task Manager編
編
- スタッフ解決
スタッフ解決にかかわる
解決にかかわる新機能
にかかわる新機能 日本アイ
日本アイ・
アイ・ビー・
ビー・エム システムズ・
システムズ・エンジニアリング(
エンジニアリング(株)
ビジネス・
・インテグレーション
ビジネス
SOA on your terms and our expertise
© 2008 IBM Corporation
この資料では、WebSphere Process Server V6.1 で提供された新機能のうち、
スタッフ解決に関わる新機能を解説します。
以下の資料の内容を理解していることを前提として記述しています。
(前提資料)
IBM WSDD | WebSphere Integration Developer V6入門
http://www-06.ibm.com/jp/software/websphere/developer/bi/wid/v6/intro/
IBM WSDD | 特集 WebSphere Process Server V6 解体新書 - Japan
BPC作成手順書 2.ヒューマン・タスク編
http://www06.ibm.com/jp/software/websphere/developer/wbi/diamond/03.html
IBM WSDD | WebSphere Application Server V6.1 セキュリティー・ガイド
http://www06.ibm.com/jp/software/websphere/developer/was/wv61/guide/security.html
本資料作成のために利用した環境は以下の通りです
OS: Windows XP SP2
WID: WebSphere Integration Developer 6.1 Interim Fix 001
WPS: WebSphere Process Server v6.1
2
Software
この資料の内容
第1章 Virtual Member Manager を使用したスタッフ解決
第2章 代理人機能(Participant substitution)
第3章 ユーザー割り当て基準のテスト
【補足】 WID テスト環境のセキュリティー設定
参考資料
2
SOA on your terms and our expertise
© 2008 IBM Corporation
3
Software
第1章
Virtual Member Manager を使用したスタッフ解決
3
SOA on your terms and our expertise
© 2008 IBM Corporation
4
Software
(おさらい)スタッフ解決
スタッフ解決とは
– あるタスクに対して一定の権限をもつユーザー、グループを、タスク開始時に動的
に割り当てるしくみ
– ヒューマン・タスクの「担当者割り当てサービス」は、タスクに定義されたロール、ユ
ーザー割り当て基準(*)、パラメーターを元に、担当者ディレクトリー・プロバイダー
経由でレジストリーに照会(Query)し、適切なユーザーの作業項目(ワークアイテ
ム)を作成する
User: John
Role: Potential Owners
User
Registry
People assignment criteria: Group Members
Human Parameter: Approvers
Task
all
p1
ec t = $
l
e
s item
$
er e
wh
item = $People Assignment Criteria
p1 = $Parameter
4
User: Jane
Group: Approvers
John
Jane
Potential Owner Task: John
Potential Owner Task: Jane
(*)WID6.0.xでは”Verb”と表現されていた。
WID6.1では「担当者割り当て基準(People assignment criteria)」
SOA on your terms and our expertise
© 2008 IBM Corporation
はじめに、スタッフ解決についておさらいします。
スタッフ解決とは、ヒューマン・タスクに定義された「ロール」「ユーザー割り当
て基準」「パラメーター」を基に、HumanTaskManagerが適切なユーザーに作
業項目(ワークアイテム)を割り当てる仕組みです。図ではPotential Owner(
潜在的所有者)ロールに、ApproversグループのメンバーであるJohnとJaneが
アサインされる例です。
なお、V6.0.x までの「Verb」は、V6.1から、「ユーザー割り当て基準(People
assignment criteria)」と表現されるようになりました。
5
Software
担当者ディレクトリー・プロバイダーと統合リポジトリー
担当者ディレクトリー・プロバイダー(*)とは
– ヒューマン・タスクのユーザー(担当者)割り当てをする際に、ユーザー・レジストリーへのアクセス
を仲介するリソース
(*) WID のヒューマン・タスク・エディターでは、「個人ディレクトリー」、
統合リポジトリーとは
WPS の管理コンソールでは「担当者ディレクトリー」と表現されている
– WAS 6.1でサポートされるようになったユーザー・レジストリー
• 複数のリポジトリーに対して、論理的に単一ビューを提供
– VMM(Virtual Member Manager:仮想メンバー・マネージャー)によって提供されるリポジトリー
WPS 6.1では
では、
のプラグインを
では、担当者ディレクトリー
担当者ディレクトリー・
ディレクトリー・プロバイダーとして
プロバイダーとしてVMMの
として
プラグインを提供
統合リポジトリーを使用する場合、ユーザーは、統合リポジトリーに追加されている複数リ
ポジトリー内でユニークでなければならない
5
File
USER0001
USER0002
xxxx
LDAP
USER0001
xxxx
重複ユーザ
重複ユーザ
ーは不可
ーは不可
SOA on your terms and our expertise
© 2008 IBM Corporation
スタッフ解決時、HumanTaskManagerは、ユーザー・レジストリーへの照会を
実行します。その際、ユーザー・レジストリーへのアクセスを仲介するリソース
が「担当者ディレクトリー・プロバイダー」です。
「統合リポジトリー」とは、WebSphere Application Server(以下、WAS と略しま
す)V6.1 から提供されるようになったユーザー・レジストリーの一つで、物理
的に分離している複数のリポジトリーに対して、論理的に単一のビューを提供
します。
統合リポジトリーは、VMM(Virtual Member Manager:仮想メンバーマネージ
ャー)コンポーネントにより提供されます。WPS 6.1 では、担当者ディレクトリ
ー・プロバイダーとしてVMMのプラグインが提供され、「担当者ディレクトリー
・プロバイダー」が仲介するユーザー・レジストリーとして、「統合リポジトリー」
を使用することができるようになりました。
なお、統合リポジトリーを使用する場合は、ユーザーは、統合リポジトリーに
追加されている複数リポジトリー内でユニークである必要があります。
「統合リポジトリー」につきまして、詳細は下記の資料をご参照ください。
■ WebSphere Application Server V6.1 セキュリティー・ガイド
http://www06.ibm.com/jp/software/websphere/developer/was/wv61/guide/security.html
6
Software
担当者ディレクトリー・プロバイダーとユーザー・レジストリー
WPS6.1/WID6.1の
担当者ディレクトリー・プロバイダー
Human Task Manager (People Directory Service)
User Registry
Plug-in
VMM
Plug-in
LDAP
Plug-in
System
Plug-in
User Registry
UserRegistry SPI
implementation
Local OS
LDAP
WebSphere Application ServerV6.1により
提供されるユーザー・レジストリー機能
Virtual Member Manager
Custom
federation
Property extension SPI
property
extension
registry
Repository SPI
Custom
repository
adapter
LDAP
repository
adapter
DB repository
adapter
File repository
adapter
VMM DB
File
…
property
extension
registry
6
Custom
LDAP 1
LDAP n
SOA on your terms and our expertise
© 2008 IBM Corporation
WPSの担当者ディレクトリー・プロバイダーと、WASのユーザー・レジストリー
の関係を図で表しています。
V6.0.x で提供されていた「UserRegistry」「LDAP」「System」に加え、「VMM」
が選択可能になりました。統合リポジトリーに追加できるユーザー・レジストリ
ーとして、「ファイル」「LDAP」「DB」「カスタム」が使用可能です。
また、VMMを選択した場合は、代理人機能(次章参照)が使用可能になりま
す。もともと「代理人」と言ったプロパティーがないLDAP等のレジストリーでも
、VMMを通じて提供される「プロパティー拡張レジストリー(property extension
registry)」にその定義が保持されるため、代理人機能を使用することが可能
になります。
プロパティー拡張レジストリーの構成につきまして、詳細は下記を参照してく
ださい。
■ InfoCenter:担当者の代替の構成
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.we
bsphere.bpc.610.doc/doc/bpc/t4substiturion.html
7
Software
担当者ディレクトリー・プロバイダーにVMMを選択するメリット
複数のリポジトリーからのスタッフ照会が可能に
– 複数のリポジトリー(ファイル、LDAP 等)をまたがってスタッフ解決をしたい場合に有効
WIDのテスト環境で提供されるサンプル構成(VMMファイル・リポジトリーに基づく)を
使用した簡易なテストが可能に
– V6.0.x 環境では、スタッフ解決を伴うヒューマン・タスクをテストするためには、LDAPなどのリ
ポジトリーを構築する必要があった
• テスト環境にも、本番環境で使用するようなリポジトリーを構成する必要があった
– V6.1 では、ファイル・ベースのリポジトリーを使用したサンプル構成が提供され、テスト環境で
簡易的なヒューマン・タスクのテストが可能になった
• テスト・サーバーの管理コンソールからユーザーの追加や削除が可能
設定が簡単に
– V6.0.x 環境では、ユーザー・レジストリーにLDAPを使用していない場合でも、担当者割り当
て基準 等でLDAP担当者プロバイダーのみサポートしている機能を使用したい場合、LDAPデ
ィレクトリー・プロバイダーを選択、設定する必要があった
– V6.1では、ユーザー・レジストリーにLDAPを使用していない場合は、担当者ディレクトリー・プ
ロバイダーに VMMが設定されていればLDAP独自の属性(e-mai,manager等)でも取得可能
7
SOA on your terms and our expertise
© 2008 IBM Corporation
担当者ディレクトリー・プロバイダーとして、新規に提供されたVMMを選択す
るメリットです。
「統合リポジトリー」自体のメリットである、「複数のリポジトリーに対する論理
ビュー」の提供により、複数のリポジトリーをまたがってスタッフ解決ができる
ようになりました。
また、ヒューマン・タスクのスタッフ解決をテストしたい場合は、WIDのテスト環
境にもLDAPを構成するなど、本番環境と同等のレジストリーを構成する必要
がありましたが、VMMにより、簡易なテストが可能になりました。
さらに、WPS6.0.xまでのLDAPレジストリーのみサポートされていた下記の機
能も、VMMレジストリーで設定可能になっています。V6.0.x までは、LDAP固
有の属性を使用する下記のようなユーザー割り当て基準を使用したい場合
は、ユーザー・レジストリーとしては不要でも、ヒューマン・タスクのために
LDAPの構成が必須でした。VMMでは、これらの属性を取得可能なため、設
定がより簡単になりました。
・ユーザーのマネージャーを割り当てる
・ヒューマン・タスクのエスカレーション時のemail設定
..など
8
Software
担当者ディレクトリー・プロバイダーの設定(VMMの場合)
WID
WPS
ロールとユーザー割り当て基準の設定
使用する担当者ディレクトリー・プロバイダ
ーの指定(JNDI名)
8
担当者ディレクトリー・プロバイダーの構成(JNDI名、XSL変換ファイル 等)
SOA on your terms and our expertise
© 2008 IBM Corporation
担当者ディレクトリー・プロバイダーとしてVMMを使用する場合、開発時、
WIDでヒューマン・タスクに対して行う設定と、WPS の管理コンソールを使用
して行う設定があります。
WIDでは、ヒューマン・タスク毎に、使用する担当者ディレクトリー・プロバイダ
ーのJNDI名を指定します。デフォルトで、「bpe/staff/userregistoryconfiguration
」が選択されていますので、VMMを使用する場合は「
bpe/staff/samplevmmconfiguration」(もしくは、独自に設定したVMM構成)を
選択する必要があります。
WPSでは、管理コンソールにアクセスし、リソースの定義として、「担当者ディ
レクトリー・プロバイダー」を構成します。
詳細は、下記のInfoCenterを参照してください。
■ InfoCenter:Virtual Member Manager 担当者ディレクトリー・プロバイダー
の構成
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.we
bsphere.bpc.610.doc/doc/bpc/t4staff_vmm.html
9
Software
その他の設定(統合リポジトリー、担当者割り当てサービス)
■ 統合リポジトリー
統合リポジトリーの
リポジトリーの構成
■ 担当者割り
担当者割り当てサービスの
サービスの使用可能化
9
SOA on your terms and our expertise
© 2008 IBM Corporation
担当者ディレクトリー・プロバイダーとしてVMMを使用する場合、事前に統合
リポジトリーの構成をする必要があります。
管理コンソールにアクセスし、「管理、アプリケーション、およびインフラストラ
クチャーの保護」で、使用可能なレルム定義として「統合リポジトリー」を選択
し、使用するリポジトリーを登録します。デフォルトで構成されるファイル・ベー
スのリポジトリー以外のリポジトリーを統合リポジトリーに登録する場合は、ま
ず、「リポジトリーの管理」から外部リポジトリーを登録し、次に、登録したリポ
ジトリーをレルムに追加するという手順になります。詳細は、下記を参照してく
ださい。
■ InfoCenter:Managing the realm in a federated repository configuration
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphe
re.nd.multiplatform.doc/info/ae/ae/twim_managing_realm.html
また、担当者割り当てサービスを使用可能にするためには、管理コンソール
のメニューより、「サーバー」→「アプリケーション・サーバー」→「(サーバー名
)」を選択し、「ビジネス・インテグレーション」の下の「Business Process
Choreographer」を展開した下にある「担当者割り当てサービス」で、「サーバ
ー始動時にサービスを使用可能にする」のチェックボックスがONである必要
があります。設定を確認してください。
0
Software
(参考)統合リポジトリー設定方法(1/5)
1
2
10
3
SOA on your terms and our expertise
© 2008 IBM Corporation
ここでは、統合リポジトリーに、デフォルトのファイル・ベースのリポジトリーに
加え、LDAPを追加する手順を説明します。
1.管理コンソール(http://<hostname>:9060/ibm/console)にログインをします。(
①)
2.左のナビゲーション・ツリーから[セキュリティー]-[管理、アプリケーション、
およびインフラストラクチャーの保護]をクリックします。(②)
3.[使用可能なレルム定義]では[統合リポジトリー]を選択し、[構成]をクリック
します。(②)
4.[関連項目]-[リポジトリの管理]をクリックします。(③)
1
Software
(参考)統合リポジトリー設定方法(2/5)
4
5
6
11
SOA on your terms and our expertise
© 2008 IBM Corporation
5.リポジトリーを追加するため、[追加]をクリックします。(④)
6.下記のようにリポジトリーの情報を設定し、[OK]をクリックします。(⑤)
[リポジトリーID]…「<リポジトリーID(任意の値)>」
LDAPサーバー
[ディレクトリー・タイプ]…「IBM Tivoli Directory Server バージョン6」
[プライマリー・ホスト名]…「<Directory Serverのホスト名>」
セキュリティー
[BIND識別名]…「<管理者DN>」※ITDSインスタンスの管理者DN
[BINDパスワード]…「<パスワード>」
7.[保管]をクリックします。(⑥)
2
Software
(参考)統合リポジトリー設定方法(3/5)
7
8
12
SOA on your terms and our expertise
© 2008 IBM Corporation
8.再び[使用可能なレルム定義]では[統合リポジトリー]を選択し、[構成]をクリ
ックします。(⑦)
9.[ベース・エントリーをレルムに追加]をクリックします。(⑧)
3
Software
(参考)統合リポジトリー設定方法(4/5)
9
10
11
13
SOA on your terms and our expertise
© 2008 IBM Corporation
10.リポジトリーの追加を行うため、下記の設定をして[リポジトリーの追加]を
クリックします。(⑨)
[リポジトリー]…「<先ほど作成したリポジトリーID名>」
[レルム内でこの‥]…「<リポジトリー統合後のベース・エントリー名(任意の
値)>」
[このリポジトリー‥]…「<ベース・エントリーの識別名>」
11. [保管]をクリックします。(⑩)
12.設定を反映するため、サーバーの再起動を行います。(⑪)
サーバーの停止
<profile root>/bin/stopServer.sh <サーバー名> –user <WPS管理ユーザー>
-password <パスワード>
サーバーの起動
<profile root>/bin/startServer.sh <サーバー名>
4
Software
(参考)統合リポジトリー設定方法(5/5)
12
13
14
14
SOA on your terms and our expertise
© 2008 IBM Corporation
13.再び管理コンソール(http://<hostname>:9060/ibm/console)にログインをしま
す。(⑫)
14.左のナビゲーション・ツリーから[ユーザーおよびグループ]-[ユーザーの
管理]をクリック、[検索]をクリックします。(⑬)
15.統合リポジトリー内のユーザーを確認することが出来ます。(⑭)
5
Software
アプリケーション・セキュリティーとスタッフ解決(1/2)
アプリケーション・セキュリティーとスタッフ解決は、直接は関係しない
– ただし、スタッフ解決を使用したユーザー割り当てを行う場合は、
• アプリケーション・セキュリティーを有効化する必要がある
– 割り当てられたユーザーがタスクを処理する(リストを取得する、等)ために認証される必
要があるため
• アプリケーション・セキュリティーのリポジトリーとスタッフ解決のリポジトリーのデータに登録
されている情報は一致している必要がある
– スタッフ解決されたユーザーが正しく認証されるため
– 代理人機能(*)を使用する場合も、アプリケーション・セキュリティーの有効化は必須
(*) 次章参照
15
SOA on your terms and our expertise
© 2008 IBM Corporation
ここからは、アプリケーション・セキュリティーと、スタッフ解決について解説し
ます。
WAS V6.0 以前は、セキュリティーに関する設定は「グローバル・セキュリティ
ー」に統合されていましたが、WAS V6.1 から、WASの管理をセキュアーに保
つための「管理セキュリティー」と、アプリケーションをセキュアーに保つため
の「アプリケーション・セキュリティー」の設定に分かれました。
ヒューマン・タスクのスタッフ解決機能の動作は、この「アプリケーション・セキ
ュリティー」の有効/無効は直接は関係しません。ただし、スタッフ解決を使用
したユーザー割当を行う場合は、タスクを処理するためのワークリストを表示
するために、ユーザーの認証が必要となります。よって、アプリケーション・セ
キュリティーが無効の状態でスタッフ解決を実行することは、結果的には意味
がありません。また、WASのユーザー・レジストリー(アプリケーション・セキュ
リティーで使用するレジストリー)と、担当者ディレクトリー・プロバイダーで使
用するレジストリーは、別々に定義することも可能ですが、ユーザー・レジスト
リーの情報で認証されたユーザーが、ワークリストを表示し、自分に割り当て
られたタスクを処理するという流れを実現するためには、ユーザー・レジストリ
ーと担当者ディレクトリー・プロバイダーのレジストリーの内容が一致している
必要があります。
(次ページで解説します)
なお、代理人機能(次章で解説します)を使用する場合は、アプリケーション・
セキュリティーの有効化は必須です。
6
Software
アプリケーション・セキュリティーとスタッフ解決(2/2)
スタッフ解決
スタッフ解決
BPEL
自動審査
(Invoke)
一次審査
(Invoke)
照
ーの
ユーザ
ヒューマン
・タスク
担当者割当
サービス
ワーク
アイ
の作成 テ ム
アプリケーション・
アプリケーション・セキュリティー
ログイン
認証
ワークリスト
の表示
16
会
ユーザー・レ
ジストリー
認証ユーザーの
ワークリストの表示
担当者ディレク
トリー
BPEDB
2つのレジストリーの内容
2つのレジストリーの内容
が一致しない場合、ワー
が一致しない場合、ワー
クアイテムの保持ユーザ
クアイテムの保持ユーザ
ーと認証ユーザーが一致
ーと認証ユーザーが一致
せず、期待するワークリス
せず、期待するワークリス
トが表示されない
トが表示されない
アプリケーション・セキュリ
アプリケーション・セキュリ
ティーをONにしない場合、
ティーをONにしない場合、
特定のユーザーのワーク
特定のユーザーのワーク
リストが表示できない
リストが表示できない
SOA on your terms and our expertise
© 2008 IBM Corporation
WPS上でヒューマン・タスクが実行されると、担当者割り当てサービスは、「ユーザー割り当て
基準」「パラメーター」に対応するユーザーを、担当者ディレクトリー・プロバイダー経由で取得
し、該当ユーザーのワークアイテムを作成してBPEDBに格納します。
ユーザーは、BPCエクスプローラーなど、クライアント・アプリケーションを使用して、自身に割
り当てられたワークアイテムを表示します(ワークリストの表示)。この際、ログイン認証は、ア
プリケーション・セキュリティーの設定に従ってユーザー・レジストリーを使用して行われ、ワー
クリストは、この認証ユーザーの情報を元に表示されます。
例えば、担当者ディレクトリーのユーザーが、「USER0001」「USER0002」… のような体系で管
理されており、アプリケーション・セキュリティーのユーザーが「U01」「U02」…のような体系で
管理されているケースを考えてみましょう。(ヒューマン・タスクのパラメーターは、「USER000x
」で設定されているとします)
担当者ディレクトリー・プロバイダーによって解決されたスタッフのワークアイテムは「
USER000x」としてBPEDBに格納されます。一方、ユーザーは、認証のために「U0x」でログイ
ンします。ユーザー「U0x」は続いて、ワークリストを取得します。この際、内部的には、
BPEDBに対して「U0x」のワークアイテムが検索されることになります。ワークアイテムは「
USER000x」に対して作成されていますので、「U0x」に一致するワークアイテムは存在せず、
リストに表示されません。
また、ワークアイテムの所有者である「USER000x」でログインしようとしても、ユーザー・レジ
ストリーにそのユーザーが存在しないため、ログインすることが出来ません。
また、スタッフ解決を使用しても、アプリケーション・セキュリティーを無効にしていると、ログイ
ン認証がなされず、ワークリストの表示時には、BPEDBに対して「UNAUTHENTICATED」と
いうユーザーのワークアイテムが検索されることになります。結果的に、条件に一致するワー
クアイテムが存在せず、タスクの処理ができません。
このように、スタッフ解決を使用する場合は、アプリケーション・セキュリティーの有効化が必
須であり、さらに、2つのレジストリーの情報が一致している必要がある、ということがわかりま
す。
7
Software
(参考)BPCエクスプローラーを使用したテスト結果
1. 下記の定義のヒューマン・タスクを含むビジネス・プロセスを作成
– ロール :潜在的所有者
– スタッフ割当基準 :User Records by userID
– パラメーター :UserID = USER0001
2. BPCエクスプローラーからプロセスを起動
– アプリケーション・セキュリティーが「ON」のケースでは、「admin」でログイン
(*) プロセスを開始する際もBPCエクスプローラーの認証がないため、
タスクの開始者=管理者が「UNAUTHENTICATED」となる
3. 結果
アプリケーション・
アプリケーション・
セキュリティー
ON
スタッフ解決
スタッフ解決
管理者:admin
BPCエクスプローラー
エクスプローラー
のログイン
認証有り
BPCエクスプローラーに「USER0001」で
ログインし、ワークリストに表示されるタス
クが処理可能
認証無し
ログイン認証処理がないため、
「USER0001」のワークリストが表示され
ず、タスクの処理が出来ない
潜在的所有者:USER0001
OFF
管理者:
UNAUTHENTICATED(*)
潜在的所有者:USER0001
17
タスクの
タスクの処理
SOA on your terms and our expertise
© 2008 IBM Corporation
アプリケーション・セキュリティーの有効/無効(On/Off)と、スタッフ解決の関係
を、BPCエクスプローラーを使用してテストした結果です。
8
Software
ユーザー・レジストリーと担当者ディレクトリーの組合せ
ユーザー・レジスト
リー
担当者デ
ィレクトリ
ー
備考
1 統合リポジトリー
VMM
認証とスタッフ解決に同じリポジトリーが使用され、適切な処理が行われる
リポジトリーの構成情報の管理が統合リポジトリーに一元化される
代理人機能(
代理人機能(*)が使用可能
2 統合リポジトリー
User
Registry
認証とスタッフ解決に同じリポジトリーが使用され、適切な処理が行われる
リポジトリーの構成情報の管理が統合リポジトリーに一元化される
代理人機能(
代理人機能(*) は使用不可
3 LDAP or カスタム
or
User
Registry
V6.0.x と同等の設定、機能を提供
–V6.0.x のアプリケーションをそのまま使用したい場合に選択
or LDAP
認証とスタッフ解決に同じリポジトリーが使用され、適切な処理が行われる
ユーザー割り当て、エスカレーションなど担当者ディレクトリーにLDAPを選択した場合にのみ使用可
能な機能がある
代理人機能(
代理人機能(*)は使用不可
– 代理人機能以外は統合リポジトリー+担当者ディレクトリーVMMでも同等の機能的を提供する
–ユーザー・レジストリーと「担当者ディレクトリー・プロバイダー」の双方にLDAPの構成情報
(BaseDN、URLなど)を登録する必要がある → 管理が
管理が煩雑になる
煩雑になる可能性
になる可能性がある
可能性がある
ローカル
or カスタ
ム
or ローカ
ルOS
4 統合リポジトリー
(レルム内に
LDAP を追加)
18
LDAP
認証とスタッフ解決に同じリポジトリー(LDAP)を使用するため、適切な処理が行われる
–タスク処理の認証のために、レルム内のリポジトリーにLDAPの情報が登録されている必要が
ある(組み込みリポジトリー(ファイル)のみでは不可)
–「統合リポジトリー」と「担当者ディレクトリー・プロバイダー」の双方にLDAPの構成情報
(BaseDN、URLなど)を登録する必要がある → 管理が
管理が煩雑になる
煩雑になる可能性
になる可能性がある
可能性がある
担当者ディレクトリーをVMMにしても機能的には同等のため、この設定にする価値はない
SOA on your terms and our expertise
(*) 次章参照
© 2008 IBM Corporation
ここまでの内容をふまえ、ユーザー・レジストリーと担当者ディレクトリーの組
合せをまとめたものです。要件に応じて適切な設定を選択してください。
9
Software
第2章
代理人機能(Participant substitution)
19
SOA on your terms and our expertise
© 2008 IBM Corporation
0
Software
代理人機能
代理人機能とは
– 作業項目(ワークアイテム)が割り当てられるユーザーが「不在」と設定されている
場合、そのワークアイテムを、他ユーザーに割り当てる仕組み
(休暇、退職 などで)不在となる予定のユーザーにワークアイテムが作成され
る設定のヒューマン・タスクがある場合
– V6.0.x まで
• 作成されたワークアイテムを転送するなどの仕組を作りこむ必要があった
– V6.1 から
• Human Task Manager が設定に従って動的に再割当先を判断し、ワークアイテムを作成
– ただし、すでにワークアイテムが作成されてしまっている場合は、「不在」の設定をしてもそのワークア
イテムが再割当されるわけではない点に注意
担当者ディレクトリーとして、「VMM」を選択している場合のみ使用可能
20
SOA on your terms and our expertise
© 2008 IBM Corporation
ここからは、代理人に関する機能を解説します。
代理人機能とは、ワークアイテムが割り当てられるユーザーが「不在」と設定
されている場合に、そのワークアイテムを他ユーザーに割り当てる仕組みで
す。
V6.0.x までは、今後、不在になるユーザーがいたとしても、スタッフ解決の結
果を動的に変更する仕組みは提供されていませんでした。そのため、作成さ
れてしまうワークアイテムを処理するために、APIを使用した仕組みを作りこ
むなどの対応が必要でした。
V6.1 から提供された代理人機能を使用することにより、不在となるユーザー
が明確な場合は、そのワークアイテムを別ユーザーに動的に割り当てること
が可能になりました。
ただし、代理人機能は「スタッフ解決時」に動作する機能ですので、すでに作
成されてしまったワークアイテムを処理しないまま、ユーザーが不在となった
場合は、そのワークアイテムに対する動的な変更は実行されないため、何ら
かの作りこみが必要になります。
なお、この機能は、担当者ディレクトリーとして「VMM」を選択した場合のみ、
使用可能です。
1
Software
代理人機能の動き
USER0001
不在の設定
代理人の設定
不在チェック、置換ポリシー
の判断、代理人の解決
Human Task Manager
スタッフ解決
代理人
ワークアイテ
ムの作成
ヒューマン
・タスク
BPEL
自動審査
(Invoke)
21
一次審査
(Invoke)
SOA on your terms and our expertise
© 2008 IBM Corporation
代理人機能の動作概要です。
ユーザーは、不在が予定される場合は、BPCエクスプローラー、もしくはAPIを
使用したクライアント・アプリケーションを使用して、「不在」と「代理人」を設定
します。
その後、ヒューマン・タスクが実行されると、HumanTaskManagerは、設定に従
ってスタッフ解決を行い、さらに、その解決したユーザーの不在をチェックしま
す。ユーザーが不在の場合は、置換ポリシーに従って代理人を解決し、適切
なワークアイテムを作成します。
代理人機能を使用するためには、WIDで開発時に、ヒューマン・タスクに対し
て「置換ポリシー」を設定する必要があり、実行時には、ユーザーが「不在」を
設定する必要があります。次ページから、これらの設定を解説します。
2
Software
代理人機能を使用するための設定:置換ポリシー(WID)
ヒューマン・タスク毎に、WIDのヒューマン・
タスク・エディターで設定
各ポリシーの意味
– 置換なし(デフォルト値)
• ユーザーが不在の場合も代理人設定を使用しな
い(「不在」が、スタッフ解決に影響しない)
– 不在ユーザーを代替で置き換え
• ユーザーが不在の場合は、設定された代理人の
ワークアイテムが作成される
– 存在するユーザーを優先
• 「ユーザー割り当て基準」に一致する、不在ユー
ザー以外のワークアイテムが作成されるが、不在
ユーザーの代理人のワークアイテムは作られな
い
• 「ユーザー割り当て基準」に一致するユーザーが
すべて不在の場合は、デフォルトの担当者割り当
て(担当者割り当て基準を定義していない場合、
または担当者解決が失敗するかあるいは担当者
解決が結果を返さない場合 と同等の割り当て)
が実施される
• 不在ユーザーのワークアイテムは作りたくないが、
代理人に処理を委譲したくない場合に使用する
22
SOA on your terms and our expertise
© 2008 IBM Corporation
置換ポリシーとは、ユーザーが不在の場合に、どのようなポリシーでワークア
イテムを作成するかを定義する項目です。
置換ポリシーは、WIDで、ヒューマン・タスク毎に設定します。それぞれの置
換ポリシーの意味は、上記の通りです。
なお、置換ポリシーは、担当者割り当て基準を持つロールにのみ適用されま
す。つまり、タスクのオリジネーター、スターター、または所有者は、置換の対
象とはなりません。
また、「存在するユーザーを優先」で使用されるデフォルトの担当者割り当て
につきましては、下記をご参照ください。
■ InfoCenter:デフォルトの担当者割り当て
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.we
bsphere.bpc.610.doc/doc/bpc/cstaffdefaultusers.html
3
Software
代理人機能を使用するための設定:不在、代理人(WPS)
ユーザー毎に、サーバーに対して設定
– すべてのユーザーは、自身の不在と代理人の設定が可能
– 代理人設定は、管理者(TaskSystemAdministrator)のみが使用可能にすることも可能(P26
の設定)
• WIDでは、デフォルトではすべてのユーザーが代理人設定が可能
方法は、下記の二つ
– 「BPC エクスプローラー」を使用
– 「HumanTaskManager API(HTM API)」を使用して、アプリケーションを開発
• V6.1 から提供された新しいAPI
何れの方法でも、下記の操作が可能
– 自身の現在の不在設定、代理人設定の参照
– 自身の不在、代理人を設定
– 他ユーザーの現在の不在設定、代理人設定の参照
– 他ユーザーの不在、代理人を設定
23
SOA on your terms and our expertise
© 2008 IBM Corporation
ユーザーが不在となる場合、代理人機能をするためには、サーバーに対して
、そのユーザーの不在を設定する必要があります。
ユーザーの不在は、BPC エクスプローラーを使用するか、新しく提供された
代理人設定用のAPIを使用したクライアント・アプリケーションを開発して設定
します。何れの方法を選択しても、代理人に関して同等の操作が可能です。
4
Software
不在、代理人の設定:BPC エクスプローラー
本人の
本人の不在、
不在、代理人定義
他ユーザーの
ユーザーの不在、
不在、代理人定義
24
SOA on your terms and our expertise
© 2008 IBM Corporation
BPCエクスプローラーを使用した、代理人の設定です。
「代理人」ページでは、自身の不在設定と、不在時の代理人の設定を参照、
設定することが可能です。
「代理人の定義」ページでは、他ユーザーの不在設定と、不在時の代理人の
設定を参照、設定することが可能です。
これらの設定変更は即時に有効となり、サーバー再起動は不要です。
なお、不在設定をしてログオフしたユーザーが、次にログインしたとしても、自
動的に不在が解除されるわけではなく、明示的に不在解除を行う必要があり
ますので、注意してください。
5
Software
不在、代理人の設定:HTM API
public interface HumanTaskManagerService {
//ログオン
ログオン・
ログオン・ユーザーの
ユーザーの不在設定を
不在設定を参照する
参照する
boolean getAbsence()
//指定
指定した
指定したユーザー
したユーザーの
ユーザーの不在設定を
不在設定を参照する
参照する
boolean getAbsence(String userId)
//ログオン
ログオン・
ログオン・ユーザーの
ユーザーの代理人設定を
代理人設定を参照する
参照する
String[] getSubstitutes()
//指定
指定した
指定したユーザー
したユーザーの
ユーザーの代理人設定を
代理人設定を参照する
参照する
String[] getSubstitutes(String userId)
//ログオン
ログオン・
ユーザーの不在設定を
不在設定を行う
ログオン・ユーザーの
void setAbsence(boolean value)
//指定
指定した
指定したユーザー
したユーザーの
ユーザーの不在設定を
不在設定を行う
void setAbsence(String userId, boolean value)
//ログオン
ログオン・
ログオン・ユーザーの
ユーザーの代理人を
代理人を設定する
設定する
void setSubstitutes(String[] substituteIds)
//指定
指定した
指定したユーザー
したユーザーの
ユーザーの代理人を
代理人を設定する
設定する
void setSubstitutes(String userId, String[] substituteIds)
}
25
SOA on your terms and our expertise
© 2008 IBM Corporation
代理人に関する設定を行うアプリケーションを開発する際には、上記のHTM
APIを使用することが可能です。
詳細は、下記のJavaDocを参照してください。
■ JavaDoc
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/index.jsp?topic=/c
om.ibm.websphere.wbpmcore.javadoc.610.doc/web/apidocs/com/ibm/task/api/
HumanTaskManager.html
6
Software
代理人機能を使用するための設定:機能の使用可能化
管理コンソールから設定
– アプリケーション・セキュリティーの有効化
– 機能の使用可能化
• サーバー → アプリケーション・サーバー →<server名> → ( ビジネス・インテグレーション
> Business Process Choreographer) Human Task Manager
26
SOA on your terms and our expertise
© 2008 IBM Corporation
代理人機能を使用するためには、サーバーのアプリケーション・セキュリティ
ーを有効化し、Human Task Managerの設定として、代理人機能を使用可能
にする必要があります。
「代替管理を管理者に制限」オプションを選択すると、HumanTaskManagerの
セキュリティー・ロールである「TaskSystemAdministrator」に定義されたユーザ
ーのみが、代理人に関する設定をすることが可能となります。
WIDのデフォルトでは、このオプションは選択されていないため、どのユーザ
ーでも代理人の設定が可能です。
WPSでは、このオプションは構成によってデフォルト値が異なる場合があるの
で、必ず確認してください。
7
Software
第3章
ユーザー割り当て基準のテスト
27
SOA on your terms and our expertise
© 2008 IBM Corporation
8
Software
ユーザー割り当て基準のテスト機能
ヒューマン・タスクの「ユーザー割り当て基準」に一致するユーザーを、レジストリーか
ら検索するテストを行う機能
– WIDのテスト・サーバーのリポジトリーに対して実施
• 組み込みの統合リポジトリー(ファイル・ベース)を使用した簡易的なテストが可能
• 本番と同等のリポジトリーを使用したい場合は、テスト・サーバーに追加することも可能
– パラメーターを変数に指定していた場合、変数に値を代入することでテストが可能
– 担当者ディレクトリーに「VMM」を選択していた場合は、「置換ポリシー」の設定も反映される
アプリケーションをサーバー上で実行することなく、下記が確認可能
– ユーザー割り当て基準とパラメーターの組合せが正しく設定されていること
• 例)「Users」を使用する場合は「固有名(「uid=admin,o=defaultWIMFileBasedRealm」 等)」を指定する
必要があるが、誤ってID(「admin」 等)を指定していた場合は、固有名が無効というエラーがコンソール
に表示される
0000004d StaffPluginUt W CWWBS0457W: VMM エンティティーが見つかりませんでした。受け取った VMM メッセージは
'CWWBS0458E: VMM エンティティーが見つかりませんでした。受け取った VMM メッセージは 'CWWIM1011E 固有名 ‘admin' は
無効です。' です。' です。
– (VMMを使用している場合)置換ポリシーが意図したとおりに動作すること
28
SOA on your terms and our expertise
© 2008 IBM Corporation
ここからは、ユーザー割り当て基準のテスト機能を解説します。
V6.0.x までは、ユーザー割り当て基準のテストを実施したい場合は、テスト環
境にユーザー・レジストリーを構成するか、本番環境でアプリケーションを稼
動させる必要がありました。
V6.1 で提供されたこのテスト機能を使用することにより、テスト環境で簡易的
なテストが可能になりました。
9
Software
(参考)User ID を使用するユーザー割り当て基準の比較
Users by user ID
– ユーザー・レジストリー内に、該当ユーザーが登録されていることをチェック
チェックしない
チェックしない
• レジストリー内に該当ユーザーが存在しなくても、パラメーター にセットされた「user ID」を使用したスタッ
フ解決を実行する
Users
– ユーザー・レジストリー内に、該当ユーザーが登録されていることをチェック
チェックする
チェックする
– プラグイン・プロバイダーの実装によってパラメーター「UserID」の指定方法が異なる。
– 例.User Registry Staff Plug-in Providerの場合、“bdaniel”のような短縮名で指定する。VMM
の場合、 ”uid=bdaniel,o=defaultWIMFileBasedRealm” のような固有名で指定する、など
User Records by user ID
NEW!
– V6.1 から提供されたユーザー割り当て基準(VMM、LDAPでのみ使用可能)
– ユーザー・レジストリー内に、該当ユーザーが登録されていることをチェック
チェックする
チェックする
– パラメーターの「UserID」は、「ユーザーID」のみで指定
• 「bdaniel」など
29
SOA on your terms and our expertise
© 2008 IBM Corporation
0
Software
テストの実行方法
1.
テスト・サーバーを開始
2.
(本番のリポジトリーでテストする場合)管理コンソールを起動し、リポジトリーを構成
3.
(置換ポリシーをテストする場合)BPCエクスプローラーを起動し、代理人と不在を設定
4.
テストを実行したいヒューマン・タスクをエディターで開き、「ロール」を選択
5.
プロパティー・ビューの「テスト」ボタンを押下
6.
(変数を使用していた場合)値を代入(*)
結果を確認
7.
エラーが表示された場合は、コンソールでエラー・メッセージを確認
(*) WID のFixPack1 適用前
の環境では、値が代入でき
る変数はヒントで表示される
もののみ(右図)でしたが、
FP1 で修正されています。
30
ヒントとして
ヒントとして表
として表
示される変数
される変数
SOA on your terms and our expertise
© 2008 IBM Corporation
テスト機能の使用手順です。
スタッフ解決の結果として、本番環境で使用されるレジストリーに登録された
ユーザーが必要な場合は、テスト・サーバーのリポジトリーに本番環境のリポ
ジトリーを追加するか、デフォルトのファイル・ベース リポジトリーにユーザー
情報を登録する必要がある点に注意してください。
1
Software
テスト実行例(設定)
個人ディレクトリー
– VMM
置換ポリシー
– 不在ユーザーを代替で置き換え
ロール
– 潜在的所有者
ユーザー割り当て基準
– Users
パラメーター
– Name : %htm.task.originator%
– AlternativeName1 : uid=admin,o=defaultWIMFileBasedRealm
– AlternativeName2 : uid=bdaniel,o=defaultWIMFileBasedRealm
31
SOA on your terms and our expertise
© 2008 IBM Corporation
上記のような設定をしたヒューマン・タスクをテストします。
「テスト」ボタンは、ヒューマン・タスク・エディターの、「ユーザー割り当て基準」
の右にあります。
2
Software
テスト実行例(結果)
uid=jjames,o=defaultWIMFileBasedRealm
① 通常ケース
00000058 SystemOut
00000058 SystemOut
00000058 SystemOut
O Substitution: user: bdaniel found to be present, no substitution is done
O Substitution: user: admin found to be present, no substitution is done
O Substitution: user: jjames found to be present, no substitution is done
代理人設定が動作した結果
②代理人と不在をBPCエ
クスプローラーから設定し、
テストしたケース
00000050 SystemOut
00000050 SystemOut
00000050 SystemOut
32
O Substitution: user: bdaniel found to be present, no substitution is done
O Substitution: user: admin found to be present, no substitution is done
O Substitution: replaced user: jjames by substitute: dedwards
SOA on your terms and our expertise
© 2008 IBM Corporation
WIDにデフォルトで登録されているユーザーを使用したテストの実行例です。
「テスト」ボタンを押すと、変数で指定した「%htm.task.originator%」に対して値
を代入することができます。
コンソールに出力されるメッセージもあわせて参照することで、代理人設定が
動作したことも確認できます。
3
Software
【補足】 WID テスト環境のセキュリティー設定
33
SOA on your terms and our expertise
© 2008 IBM Corporation
4
Software
WID テスト環境のセキュリティー設定 (1/4)
管理セキュリティー、アプリケーシ
ョン・セキュリティー がON
– 使用可能なレルム定義として、「統
合リポジトリー」が構成済み
• デフォルトのファイル・ベースのリポジ
トリーが登録済み
– 一次管理ユーザーは「admin」、パ
スワードは「admin」
34
SOA on your terms and our expertise
© 2008 IBM Corporation
5
Software
WID テスト環境のセキュリティー設定 (2/4)
下記のユーザーが登録済み(「admin」以外のパスワードはすべて、「wid」)
ユーザーID
ユーザー
ラストネーム
ファーストネーム
admin
admin
admin
bdaniel
Daniel
Bonnie
Bonnie.Daniel@ibm.
com
uid=bdaniel,o=defaultWIMFileBasedReal
m
dcampbell
Campbell
David
David.Campbell@ib
m.com
uid=dcampbell,o=defaultWIMFileBasedR
ealm
dedwards
Edwards
Doug
Doug.Edwards@ib
m.com
uid=dedwards,o=defaultWIMFileBasedR
ealm
jjames
James
Jeffrey
Jeffrey.James@ibm.
com
uid=jjames,o=defaultWIMFileBasedReal
m
lcarlesberg
Carlesberg
Linda
Linda.Carlesberg@i
bm.com
uid=lcarlesberg,o=defaultWIMFileBased
Realm
mburnnet
Burnnet
Mary
Mary.Burnnet@ibm.
com
uid=mburnnet,o=defaultWIMFileBasedR
ealm
mcharles
Charles
Mary
Mary.Charles@ibm.
com
uid=mcharles,o=defaultWIMFileBasedR
e
Edsards
Ron
[email protected]
uid=redwards,o=defaultWIMFileBasedR
ealm
redwards
35
Eメール
メール
固有名
uid=admin,o=defaultWIMFileBasedReal
m
SOA on your terms and our expertise bm
© 2008 IBM Corporation
6
Software
WID テスト環境のセキュリティー設定 (3/4)
下記のグループが登録済み
グループ名
グループ名
説明
固有名
d1
department 1 employees
cn=Home Entertainment,o=defaultWIMFileBasedRealm
d2
department 2 employees
cn=Widget Division,o=defaultWIMFileBasedRealm
managers
all managers
cn=managers,o=defaultWIMFileBasedRealm
36
SOA on your terms and our expertise
© 2008 IBM Corporation
7
Software
WID テスト環境のセキュリティー設定 (4/4)
セキュリティー・ロールとユーザーのマップ
– BPE Container
ロール
マップされた
マップされたユーザー
されたユーザー
BPEAPIUser
全認証者
BPESystemAdministrator
admin
BPESystemMonitor
admin
WebClientUser
全認証者
JMSAPIUser
全認証者
– Task Container
ロール
37
マップされた
マップされたユーザー
されたユーザー
TaskAPIUser
全認証者
TaskSystemAdministrator
admin
TaskSystemMonitor
admin
EscalationUser
全認証者
SOA on your terms and our expertise
© 2008 IBM Corporation
8
Software
参考資料
WebSphere Integration Developer InfoCenter
– http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.wbit.
610.help.nav.doc/topics/welcome.html
WebSphere Process Server 6.1 InfoCenter
– http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r1mx/topic/com.ibm.web
sphere.wps.610.doc/welcome_wps.html
WebSphere Application Server V6.1 セキュリティー・ガイド
– http://www06.ibm.com/jp/software/websphere/developer/was/wv61/guide/security.html
38
SOA on your terms and our expertise
© 2008 IBM Corporation
Fly UP