SecurityPEP ノードを使用することにより、入力ノードから出力または要求ノードまでの間のメッセージ・フロー内の任意の点で、メッセージ・フロー・セキュリティー・マネージャーを起動できます。
次の図は、メッセージ・フローの例を示して、メッセージ・フロー内でセキュリティーの無効な (または関連付けられたセキュリティー・プロファイルがない) 入力ノードが入力メッセージを受け取り、後に SecurityPEP ノードによって処理されるときに生じる一連のイベントの概要を示しています。

以下のステップは、セキュリティーの無効な (または関連付けられたセキュリティー・プロファイルがない) 入力ノードにメッセージが到達したときに起きる一連のイベントを説明しています。 番号は、前掲の図中の番号と対応しています。
- 入力ノードから出力または要求ノードまでの間のメッセージ・フロー内の任意の点で、SecurityPEP ノードを使用できます。 SecurityPEP ノードにより、以下の状態のときに、セキュリティーをメッセージ・フロー内で適用できます。
- メッセージ・フローの入力ノードでセキュリティーが有効でないとき (例えば、FileInput、TCPIPClientInput、SAPInput、および JMSInput ノード)。
- メッセージ・フローの入力ノードでセキュリティーが有効であり、認証操作を行うように構成することが可能ですが、メッセージ・フローで起動中のビジネス機能が認識される前にいくつかのルーティングまたはフィルター操作を行う必要があるため、許可はメッセージ・フロー・ロジックのより後方で行う必要があるとき。
- メッセージ・フローに複数の出力または要求ノードが含まれているために、各ノードの前に特定の ID マッピングを実行して、伝搬のために適切なセキュリティー・トークンを取得する必要があるとき。
SecurityPEP ノードに伝搬するメッセージ・ツリーには、プロパティー・ツリー ID フィールドが含まれています。 セキュリティーの有効な入力ノード (または以前の SecurityPEP ノード) が ID トークンを既に抽出していて、いくつかのセキュリティー操作を実行している可能性がある場合を除いて、これらのフィールドは空です。
- メッセージが SecurityPEP ノードに着信するとき、ノードに関連付けられたセキュリティー・プロファイルの存在は、メッセージ・フロー・セキュリティーが構成されているかどうかを示します。 ブローカーのセキュリティー・マネージャーがプロファイルを読み取るために呼び出されます。プロファイルでは、メッセージの ID で実行される伝搬、認証、許可、およびマッピングの組み合わせが指定されます。 これにより、使用する外部セキュリティー・プロバイダー (ポリシー決定ポイントまたは PDP とも呼ばれる) も指定されます。
mqsicreateconfigurableservice コマンドを使用するか、WebSphere® Message
Broker Explorer にあるエディターを使用して、セキュリティー・プロファイルを作成できます。 次いでブローカー・アーカイブ・エディターを使用して、個別のノードまたはメッセージ・フロー全体に対してセキュリティー・プロファイルを構成します。 セキュリティー・プロファイルをメッセージ・フローに関連付ける場合、セキュリティー・プロファイルは、メッセージ・フロー内のセキュリティーの有効なすべての入力、出力、および SecurityPEP ノードに適用されます。 ただし、個別のノードに関連付けられたセキュリティー・プロファイルが、メッセージ・フローに関連付けられたセキュリティー・プロファイルに優先します。 ノードに ID の伝搬を設定するため、およびセキュリティーを明示的に設定しないための、事前定義されたセキュリティー・プロファイルが提供されています。
- セキュリティー・プロファイルが SecurityPEP ノードまたはメッセージ・フローに関連付けられている場合、ノードはメッセージ・ツリーからノード構成に基づいて ID 情報を抽出し、「プロパティー」フォルダー内のソース ID エレメントを設定します。 ノードがトークン・タイプとして Current token を設定している場合、マップ済み ID プロパティー・フィールドの既存の ID トークンが使用されます (存在する場合)。
マップ済み ID プロパティー・フィールドに ID トークンがない場合は、ソース ID プロパティー・フィールドのトークンが使用されます。 セキュリティー・トークンを正常に抽出できない場合は、セキュリティー例外が出されて、Failure ターミナル (接続されている場合) に伝搬されます。
- 認証がセキュリティー・プロファイル内で指定されている場合、セキュリティー・マネージャーは構成されたセキュリティー・プロバイダーを呼び出して、ID を認証します。 これに失敗すると、セキュリティー例外がノードに戻されます。 Message Broker によって認証用にサポートされるセキュリティー・プロバイダーは、LDAP、WS-Trust v1.3 準拠のセキュリティー・トークン・サーバー (TFIM V6.2 など)、および TFIM V6.1 です。
認証の結果を格納するためのセキュリティー・キャッシュが用意されています。これにより、メッセージ・フローに届く後続の (同じ資格情報を持つ) メッセージは、キャッシュされた結果を使用して実行されます (キャッシュの有効期限が切れていない場合)。
- ID マッピングがセキュリティー・プロファイル内で指定されている場合、セキュリティー・マネージャーは構成されたセキュリティー・プロバイダーを呼び出して、ID を代替 ID にマップします。 これに失敗すると、セキュリティー例外がノードに戻されます。 そうでない場合、マップ済み ID 情報が「プロパティー」フォルダー内のマップ済み ID エレメントに設定されます。
Message Broker によって ID マッピング用にサポートされるセキュリティー・プロバイダーは、WS-Trust V1.3 準拠のセキュリティー・トークン・サーバー (TFIM V6.2 など)、および TFIM V6.1 です。
ID マッピングの結果を格納するためのセキュリティー・キャッシュが用意されています。
- 許可がセキュリティー・プロファイル内で指定されている場合、セキュリティー・マネージャーは構成されたセキュリティー・プロバイダーを呼び出して、ID (マップされたものまたはソース) がこのメッセージ・フローへのアクセス権を持つことを許可します。
これに失敗すると、セキュリティー例外がノードに戻されます。
Message Broker によって許可用にサポートされるセキュリティー・プロバイダーは、LDAP、WS-Trust V1.3 準拠のセキュリティー・トークン・サーバー (TFIM V6.2 など)、および TFIM V6.1 です。
許可の結果を格納するためのセキュリティー・キャッシュが用意されています。
- すべてのセキュリティー処理が完了したとき、またはメッセージ・フロー・セキュリティー・マネージャーがセキュリティー例外を出したときに、制御は SecurityPEP ノードに戻ります。
セキュリティー例外が SecurityPEP ノードに戻されると、例外は Failure ターミナル (接続されている場合) に伝搬されるか、またはリカバリー可能例外として先行ノードに戻されます。 SecurityPEP ノードがその Out ターミナルに伝搬するのは、関連付けられたセキュリティー・プロファイルで構成されたすべての操作が正常に完了した場合だけです。
- 値の取り込まれた「プロパティー」フォルダーと、そのソースおよびマップ済み ID 情報を含むメッセージは、メッセージ・フローに伝搬されます。
- メッセージ・フローを開発するとき、アプリケーション処理 (例えば、ID ベースのルーティングまたは ID ベースの内容構築など) に「プロパティー」フォルダー内の ID フィールドを使用できます。 トークンの伝搬をサポートしない出力または要求ノードからアウトバウンド・メッセージに ID を伝搬する場合、計算ノード (Compute、JavaCompute、PHPCompute、または Mapping ノードを含む) を使用して、ID トークンを必要なトランスポート・ヘッダーまたはメッセージ本体の場所に移動できます。
- メッセージが出力ノードに着信すると、ノードと関連付けられたセキュリティー・プロファイルが、メッセージの送信時に「プロパティー」フォルダーから ID を取り出して伝搬するかどうかを指示できます。 特定のトランスポート・ノードだけが、トランスポートのデフォルトのトークンを伝搬できます。
他のすべてのトークン・タイプは、上述のように、計算ノードで処理する必要があります。