Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド 11g リリース1(11.1.1.7) B55916-08 |
|
前 |
次 |
この章では、ヒューマン・タスク・サービス・コンポーネントとヒューマン・ワークフロー・サービス・エンジンの構成方法(メッセージやアクション可能なアドレスの通知モードの構成方法を含む)について説明します。また、アクション可能な電子メール・アカウント名などのタスク・サービス・プロパティ、およびOracle Internet Directory、Microsoft Active Directory、Oracle iPlanetなどの代替認証プロバイダの構成方法についても説明します。
この章では、次の項目について説明します。
デモ・ユーザー・コミュニティというユーザーとグループの組織階層のインストールと使用の詳細は、付録A「データベースへのデモ・ユーザー・コミュニティのインストール」を参照してください。
ヒューマン・ワークフローのチューニングとパフォーマンス・プロパティの詳細は、『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』を参照してください。
ヒューマン・ワークフロー通知プロパティを構成できます。これには、メッセージに対する通知モードの設定やアクション可能なアドレスの設定などがあります。このプロパティは、タスクの状態の変化をユーザーに通知するために使用されます。ワークフロー通知では、次の3つのタイプのアドレスを使用できます。
送信元アドレス: 通知の送信用。
アクション可能なアドレス: アクション可能なレスポンスの受信用。
返信先アドレス: 返信通知の受信用。
ヒューマン・ワークフロー通知プロパティを構成する手順は、次のとおりです。
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... | ナビゲータのSOAフォルダから... |
---|---|
|
|
「ワークフロー通知プロパティ」ページが表示されます。
通知を送受信するために、Oracle User Messaging Serviceを構成します。構成時に、ヒューマン・ワークフローで使用するアドレスを指定します。
「「メッセージング・ドライバ」ページに移動」をクリックします。
「関連ドライバ」ページが表示されます。
「ローカル」タブの「ドライバの構成」列で、構成するドライバを選択します。この例では、「ユーザー・メッセージング電子メール・ドライバ」を選択します。
すると、選択したメッセージング・サービス・ドライバを構成するためのページが表示されます。
手順4で選択したメッセージング・サービス・ドライバに応じて、次の項を参照してください。
選択したドライバ | 参照先 |
---|---|
メッセージング拡張 |
注意: このドライバは「ローカル」タブからは選択できませんが、構成可能です。 |
電子メール |
|
SMPP |
|
XMPP |
|
VoiceXML |
|
ワークリスト |
|
プロキシ |
|
たとえば、電子メール・ドライバを選択した場合は、次のようなプロパティが構成用に表示されます。
受信IMAPおよび送信SMTPの電子メール・サーバー。
送信サーバーのユーザー名およびパスワード。
送信者アドレスおよびデフォルト送信者アドレスのリスト。(これらのプロパティに指定するアドレスは、「ワークフロー通知プロパティ」ページの「電子メール: 送信者アドレス」と「電子メール : アクション可能なアドレス」フィールドに指定したアドレスと一致している必要があります。)
不適切な電子メールのレスポンスを処理するには、受信メールを処理するように電子メール・ドライバを構成する必要があります。これによって、ヒューマン・ワークフローの参加者は通知を送受信できます。メッセージング・ドライバは、様々なメッセージング・トランスポートをサポートしています。
ドライバの構成が完了したら、「適用」をクリックします。
「ワークフロー通知プロパティ」ページに戻ります。
通知サービスのモードを指定します。設定可能な値は、次のとおりです。
すべて: 電子メール、ショート・メッセージ・サービス(SMS)、インスタント・メッセージ(IM)およびボイスの各チャネルが構成され、通知は任意の使用チャネルを介して送信されます。
電子メール: 通知メッセージを送信するために電子メール・チャネルのみが構成されます。
なし: 通知メッセージ送信するためのチャネルは構成されません。これがデフォルトの設定です。
通知チャネルの値を指定します。
「適用」をクリックします。
システムMBeanブラウザで拡張通知プロパティを構成するには、「詳細ワークフロー通知構成プロパティ」をクリックします。表示されるプロパティの一部を次に示します。各プロパティには説明が記載されています。
「RetryNotificationMessageThrottle」: 通知の再試行サイクル時に処理可能な電子メール通知メッセージの数。詳細は、第21.8項「電子メール通知メッセージの数の構成」を参照してください。
使用環境に適した変更を行います。
送信メッセージが適切な宛先に到着していることのテストを含む、ヒューマン・ワークフローにおける電子メール経由の受信および送信通知の管理の詳細は、第23.5項「送信通知および受信電子メール通知の管理」を参照してください。
通知とユーザー・メッセージング・サービスの詳細は、次のドキュメントを参照してください。
『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』のOracle User Messaging Serviceの使用に関する項
本番用のアドレスではなくテスト・アドレスにすべての通知を送信するように、Oracle Human Workflow通知サービスを構成できます。これを行うには、Oracle Enterprise ManagerのシステムMBeanブラウザを使用します。
テスト・アドレスに通知を送信するように通知サービスを構成する手順は次のとおりです。
Oracle Enterprise ManagerのシステムMBeanブラウザにナビゲートします。これを行うには、次の手順を実行します。
SOAインフラストラクチャのメニューから... | ナビゲータのSOAフォルダから... |
---|---|
|
|
「HWFMailerConfig」 Mbeanを検索します。これを行うには、「システムMBeanブラウザ」ナビゲータ・ペインで、「検索」アイコンをクリックします。「検索」リストで「MBean名」を選択し、リストの右側のテキスト・ボックスにHWFMailerConfig
と入力します。「検索」矢印をクリックします。
対応する情報が右のペインに表示されます。
「操作」ページを選択します。
テスト・アドレスを設定する手順は次のとおりです。
「操作」ページで、「addTestNotificationAddress」を選択します。右側のペインに「操作: addTestNotificationAddress」ページが表示されます。
「パラメータ」表の「チャネル」行の「値」列に、それを経由して通知を送信するチャネルを指定します(例: 電子メール、SMS、FAX、IM、ボイス、ページャ)。
「パラメータ」表の「testNotificationAddress」行の「値」列に、テスト受信者のアドレス(例: testAddress@yourDomain.com
)を入力します。
「呼出し」をクリックします。
テスト・アドレスを削除する手順は次のとおりです。
「操作」ページで、「removeTestNotificationAddress」を選択します。右側のペインに「操作: removeTestNotificationAddress」ページが表示されます。
「パラメータ」表の「チャネル」行の「値」列に、削除する通知用チャネルを指定します(例: 電子メール、SMS、FAX、IM、ボイス、ページャ)。
「呼出し」をクリックします。
アクション可能な電子メール・アカウント名の割当て、ワークフロー・セッションのタイムアウトとカスタム・クラスパスURLのプロパティ値の指定、割当てサービスの動的割当てとタスク・エスカレーション関数の構成、およびヒューマン・ワークフロー・プロパティの追加設定を実行できます。
Dynamic Assignment Functionでは、特定のユーザーまたはグループが、グループから、あるいはユーザー・リストまたはグループ・リストから選択されます。特定のDynamic Assignment Functionに固有の基準に基づいて選択されます。
ヒューマン・ワークフロー・タスク・サービス・プロパティを構成する手順は、次のとおりです。
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... | ナビゲータのSOAフォルダから... |
---|---|
|
|
「ワークフロー・タスク・サービス・プロパティ」ページの上部には、「アクション可能な電子メール・アカウント」のフィールドと自動的に定義されたDynamic Assignment Functionが表示されます。
次の詳細を入力します。
関数 | 説明 |
---|---|
アクション可能な電子メール・アカウント |
使用するアクション可能な受信電子メール・アカウントを入力します。 デフォルトのアカウント名は、「デフォルト」で、これは、第21.1項「ヒューマン・ワークフロー通知プロパティの構成」で構成したアカウントです。別のアカウント名をこのフィールドに指定する場合は、第21.9項「複数の送信アドレスの構成」の説明に従ってアカウントを作成し、構成してください。 |
ワークフロー・サービス・セッション・タイムアウト |
Oracle BPM Worklistにログインしたユーザーが、セッションが失効して再度ログインが必要になるまでの、非アクティブの状態でいることができる時間の長さを入力します。この値は、 |
URLクラスパスを入力します。これは、ワークフロー・サービスが、カスタム動的割当てとタスク・エスカレーション関数、カスタム・コールバックおよびシステム・リソース・バンドル クラスパスには任意の有効なURLを指定できます(ローカル・ファイル・パスまたはリモートURL)。クラスパスにはディレクトリまたはJARファイルのいずれかを指定できます。URLでディレクトリを指定する場合は、最後にスラッシュ(「 |
「動的割当てとタスク・エスカレーション関数」セクションに移動します。
次の表に、Dynamic Assignment Functionの定義を示します。独自の関数を作成してワークフロー・サービスに登録することもできます。
関数 | タイプ | 説明 |
---|---|---|
ROUND_ROBIN |
動的割当て |
この関数は、各ユーザーまたはグループを順に選択します。この関数では、初期化パラメータ |
LEAST_BUSY |
動的割当て |
この関数は、現在割り当てられているタスク数が最も少ないユーザーまたはグループを選択します。 |
MANAGERS_MANAGER |
タスク・エスカレーション |
この関数は、タスクのマネージャのマネージャを取得します。 |
MOST_PRODUCTIVE |
動的割当て |
この関数は、一定期間(デフォルトでは過去7日間)に完了したタスク数が最大のユーザー、またはグループを取得します。この関数は初期化パラメータ |
関数をクリックして、「パラメータ」セクションに、その関数のパラメータと値を表示します。
「追加」をクリックして、関数を追加します。次の項目を指定するためのプロンプトが表示されます。
関数名
クラスパス
関数のパラメータ名
関数のパラメータ値
このページでは、1つの関数に複数のプロパティを追加できません。複数のプロパティを追加するには、システムMBeanブラウザを使用します。このブラウザを使用するには、「SOAインフラストラクチャ」メニューから、「管理」→「システムMBeanブラウザ」の順に選択します。
「OK」をクリックします。
関数のパラメータ値を更新するには、「動的割当てとタスク・エスカレーション関数」表で関数を選択します。
編集するパラメータ値が表示されます。
値を更新します。
「拡張」セクションを開きます。
「拡張」セクションには、次のプロパティが表示されます。
プロパティ | 説明 |
---|---|
タスクを要請する電子メールでは、Oracle BPM Worklistへのリンクが、このプロパティから読み込まれます。 この要素はURLを識別します。カスタムのOracle BPM Worklistを作成する場合は、この要素を構成すると役に立ちます。このURLにある |
|
タスクは、前の承認者または前の割当て先にプッシュバックできます。当初の割当て先は、タスクの再割当てやエスカレートを行っている可能性があるため、承認者である必要はありません。この要素に対する可能な値は、INITIAL_ASSIGNEESおよびAPPROVERです。 |
|
このプロパティは、HTTPサーブレット・リクエストのユーザーを、タスク問合せサービス・メソッド |
|
タスクがグループ、アプリケーション・ロールまたは複数ユーザーに割り当てられると、ユーザーはタスクを実行する前に、そのタスクを獲得する必要があります。獲得されたタスクを他のユーザーが実行することはできません。獲得したが操作しないタスクは、最終的には自動的にリリースされ、他のユーザーが獲得できます。これによって、獲得したタスクが未実行のまま放置されることを防止します。同時に、他のユーザーによるタスクの実行を防止します。タスク・オート・リリースを使用すると、ユーザーがタスクを獲得してから、システムが自動的にそのタスクをリリースして他のユーザーに再度開放するまでの経過時間を構成できます。オート・リリースまでの経過期間は、デフォルトの経過時間として、また指定タスクの有効期間に対する割合として構成できます。オート・リリースまでの経過期間はまた、タスクの優先度に応じて様々に構成できます。 たとえば、優先度2のタスクに対するタスク・オート・リリース経過期間を50%に設定するとします。このタスクのデフォルトの経過期間は12時間です。優先度2のタスクが2日後に失効するように設定すると、このタスクは1日後(失効経過期間の50%)に自動的にリリースされます。このタスクに失効日を設定しない場合、タスクは12時間後(デフォルトのオート・リリース経過期間)に自動的にリリースされます。 |
使用環境に適した変更を行います。
「適用」をクリックします。
システムMBeanブラウザで拡張タスク・サービス・プロパティを構成するには、「詳細ワークフロー・タスクサービス構成プロパティ」をクリックします。表示される拡張プロパティのリストは、第21.1項「ヒューマン・ワークフロー通知プロパティの構成」の手順11を参照してください。
使用環境に適した変更を行います。
タスク・サービスと割当てサービスの詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。
Oracle HTTP Server(OHS)からタスク・フォームに添付を追加する場合は、場所として/ADFAttachmenthelper
をOHS構成に含める必要があります。たとえば、instance_home
/config/OHS/
ohs_instance
の下にあるOHSのmod_wl_ohs.config
ファイルに次の内容を追加します。
<Location /ADFAttachmentHelper> SetHandler weblogic-handler PathTrim /weblogic ErrorPage http:/WEBLOGIC_HOME:WEBLOGIC_PORT/ </Location>
Oracle Human Workflow通知用にOracle Advanced Queuingを構成するには、Oracle Enterprise Manager Fusion Middleware ControlのHWFMailer
構成のマネージドBeanプロパティUseAQ
をTRUE
に設定し、SOAサーバーを再起動します。サーバーを再起動すると、新しい通知メッセージがOracle Advanced Queuingにエンキューされます。JMSキューに保留中のメッセージは、通知再試行スレッドによってOracle Advanced Queuingにエンキューされます。
デフォルトの通知サービス・プロバイダのかわりに、カスタム通知サービスの実装をプラグインして使用できます。カスタム通知サービスは、すべてのチャネルまたは選択した特定のチャネルに対してプラグインできます。たとえば、この通知サービスはデフォルトのSMS通知サービスのかわりに、既存のSMS実装にプラグインできます。
通知サービスをプラグインするには、次のタスクのいずれかを実行します。
インタフェースoracle.bpel.services.notification.ICustomNotificationService
を実装します。
抽象クラスoracle.bpel.services.notification.AbstractCustomNotificationServiceImpl
を拡張します。
このインタフェースには、次のチャネル用のメソッドがあります。
電子メール
ボイス
SMS
インスタント・メッセージ(IM)
プラグインした通知サービスによって、1つ以上のチャネルのデフォルト・プロバイダを上書きできます。チャネルのサブセットに対するデフォルト実装が、カスタム通知サービスによって上書きされているときは、他のチャネル(上書きされていないチャネル)に対応するメソッドが通知サービスでコールされることはありません。これらのメソッドが返すのは、NULL値のみです。また、この実装によって、次の抽象クラスを拡張できます。
oracle.bpel.services.notification.AbstractCustomNotificationServiceImpl
このクラスは、各チャネルに対して空の実装を提供します。この場合、実装で拡張されるのは適切なチャネルのメソッドのみです。
実装とその依存クラスは、Oracle WebLogic Serverのクラスパスで使用可能であることが必要です。
実装したプラガブル通知サービスは、システムMBeanブラウザで登録します。
プラガブル通知サービスを登録する手順は、次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlにログインします。
ナビゲータで、「SOA」フォルダを開きます。
「soa-infra」を右クリックし、「管理」→「システムMBeanブラウザ」の順に選択します。
システムMBeanブラウザがページの右側に表示されます。
「アプリケーション定義のMBean」→「oracle.as.soainfra.config」→「サーバー: server_name」→「HWFMailerConfig」→「human-workflow」の順に開きます。
ページの右側で、「CustomNSDriverPropertyNames」プロパティをクリックします。
「CustomNSDriverPropertyNames」に表示される、「すべて」、「ボイス」、「電子メール」、「FAX」、「ページャ」、「SMS」および「IM」プロパティの値を書き留めます。
「戻る」をクリックします。
「操作」タブをクリックします。
「setCustomNSDriverPropertyValue」をクリックします。
「propertyName」の「値」フィールドに、「CustomNSDriverPropertyNames」ページで書き留めた「すべて」、「ボイス」、「電子メール」、「FAX」、「ページャ」、「SMS」および「IM」プロパティの値のいずれかを入力します。次の詳細に注意してください。
電子メール・チャネルのみのデフォルト実装を上書きする場合は、「propertyName」の「値」フィールドに「電子メール」の値を使用し、「propertyValue」の「値」フィールドには実施する実装の完全なクラス名を使用します。
他のチャネルの上書きは、電子メール・チャネルの場合と同様に構成します。
「propertyName」の「値」フィールドに「すべて」プロパティの値を使用することは、指定の全チャネルへの実装を意味します。
「propertyValue」の「値」フィールドで、実装の完全なクラス名を指定します。
「呼出し」をクリックします。
Oracle WebLogic Serverを再起動します。
すべてのOracle BPM Worklistタスクに対してオート・リリース・タイマーが有効であるためにデータベースやJVMでオーバーヘッドが発生している場合は、タイマーをグローバルに無効にできます。
Oracle BPM Worklistタスクに対してオート・リリース・タイマーをグローバルに無効にする手順は、次のとおりです。
「soa-infra」を右クリックし、「管理」→「システムMBeanブラウザ」の順に選択します。
システムMBeanブラウザがページの右側に表示されます。
「アプリケーション定義のMBean」→「oracle.as.soainfra.config」→「サーバー: server_name」→「WorkflowConfig」→「human-workflow」→「WorkflowConfig.TaskAutoReleaseConfiguration」の順に開きます。
変更するタスクの優先度を選択します。タスク・インスタンスごとに優先度があります。
Priority[1]
Priority[2]
Priority[3]
Priority[4]
Priority[5]
「属性」タブで、「DefaultDuration」をクリックします。
「値」フィールドに、P0D
と入力します(0日を示します)。デフォルト値はP1D
(1日)です。
「適用」をクリックします。
オート・リリースを無効にする残りの優先度について、ステップ3から6を実行します。
完了すると、変更した優先度を指定して新規作成するタスク・インスタンスでは、オート・リリースが無効になります。
通知の再試行サイクル時に処理可能な電子メール通知メッセージの数は、システムMBeanブラウザのRetryNotificationMessageThrottleプロパティを使用して制御できます。このプロパティによって、キュー内のメッセージのオーバーロードを防ぎ、通知メッセージ・ペイロードのメモリー・サイズを縮小できます。
電子メール通知メッセージの数を構成する手順は、次のとおりです。
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... | ナビゲータのSOAフォルダから... |
---|---|
|
|
「詳細ワークフロー通知構成プロパティ」をクリックします。
「RetryNotificationMessageThrottle」をクリックします。
「値」フィールドに値を入力します。デフォルトは200000
メッセージです。
「適用」をクリックします。
一部のプロセスでは、電子メールの送信元アドレスに基づいて電子メール通知を区別することが必要な場合があります。たとえば、人事管理のBPELプロセスでは、HR@yourcompany.com
と設定された送信元アドレスを使用して電子メールを送信し、財務のBPELプロセスでは、finance@yourcompany.com
と設定された送信元アドレスを使用して電子メールを送信します。
複数の送信アドレスを構成する手順は、次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlにログインします。
ナビゲータで、「SOA」フォルダを開きます。
「soa-infra」を右クリックし、「管理」→「システムMBeanブラウザ」の順に選択します。
システムMBeanブラウザがページの右側に表示されます。
「アプリケーション定義のMBean」→「oracle.as.soainfra.config」→「サーバー: server_name」→「HWFMailerConfig」→「human-workflow」の順に開きます。
「属性」タブの下にある、「ASNSDrivers」属性の値を書き留めます。デフォルトでは、「デフォルト」の値のみが使用可能です。
「戻る」をクリックします。
「操作」タブをクリックします。
「setASNSDriver」をクリックします。
「propertyName」に値(この例ではEmailFromAddress
)を入力します。
「propertyValue」に値(この例ではHR@yourcompany.com
)を入力します。
「driverName」に値(この例ではHR
)を入力します。
「呼出し」をクリックします。
必要な送信者アドレス数と同数のアカウントを追加します。
「propertyName」に値(この例ではEmailFromAddress
)を入力します。
「propertyValue」に値(この例ではfinance@yourdomain.com
)を入力します。
「driverName」に値(この例ではFinance
)を入力します。
「呼出し」をクリックします。
「ASNSDriver」属性には前述の手順で作成したすべてのアカウントが表示され、「getASNSDriverAddresses」操作には各ドライバで使用されるアドレスが表示されます。詳細は、第27章「Oracle User Messaging Serviceの構成」を参照してください。
Oracle WebLogic Server管理コンソールを使用して、Oracle User Messaging Serviceの複数の電子メール・ドライバを送信者アドレスごとに1つずつインストールします。
送信電子メールの送信用に必須の送信者アドレスを使用するように、電子メール・ドライバを構成します。
設計時にOracle JDeveloperで、人事管理のBPELプロセスの電子メール・アクティビティを構成する際にアカウント名にHR
を使用し、財務のBPELプロセスの電子メール・アクティビティを構成する際にアカウント名にFinance
を使用します。
Oracle SOA Suiteは、信頼性のある通知をサポートしています。アウトバウンド通知では、一意の通知IDを使用して通知メッセージが作成され、そのメッセージと一意のIDはデハイドレーション・ストアに格納されます。次に、この一意のIDがJMSキューにエンキューされ、トランザクションがコミットされます。このキューをリスニングしているメッセージドリブンBean(MDB)は、メッセージをデキューしてユーザーに通知を送信します。通知に失敗すると、その通知は3回再試行されます。すべての再試行に失敗すると、この通知はエラー発生としてマークされます。
デフォルトでは、アイデンティティ・サービスは、Oracle WebLogic Serverの埋込みLDAPサーバーをデフォルトの認証プロバイダとして使用します。ただし、デフォルトの認証者とともに、Oracle Internet Directory、Microsoft Active DirectoryまたはOracle iPlanetなどの代替認証プロバイダを使用するようにOracle WebLogicを構成できます。
注意: Oracle Virtual Directoryプラグインの構成と使用の詳細は、Oracle Fusion Middleware Oracle Virtual Directory管理者ガイドのOracle Virtual Directoryプラグインの理解に関する項を参照してください。 |
この項では、Oracle WebLogic管理コンソールまたはOracle Directory Services Managerを使用して認証プロバイダを追加し、その認証プロバイダのユーザーとグループを作成する方法を説明します。
複数のLDAP認証プロバイダの構成の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのアイデンティティ・ストア・サービスの構成に関する項を参照してください。
この項の内容は、次のとおりです。
デモ・ユーザー・コミュニティというユーザーとグループの組織階層のインストールと使用の詳細は、付録A「データベースへのデモ・ユーザー・コミュニティのインストール」を参照してください。
注意: Oracle Fusion Middlewareは、ユーザーとロールのAPIを有効化してカスタム・アイデンティティ・ストアと対話するプロバイダをサポートします。 詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の「ユーザーおよびロールAPIを使用した開発」を参照してください。 |
認証プロバイダは、Oracle WebLogic Server管理コンソールを使用してセキュリティ・レルムに追加できます。
認証プロバイダを追加する手順は、次のとおりです。
Oracle WebLogic Server管理コンソールにログインします。
「ドメイン構造」ペインで「セキュリティ・レルム」をクリックし、リスト内のレルム名(「myrealm」など)をクリックします。
「プロバイダ」→「認証」の順にクリックします。
「認証プロバイダ」ページが表示されます。
「新規」をクリックして、新しい認証プロバイダを追加します。
「新しい認証プロバイダの作成」ページが表示されます。
「名前」フィールドにプロバイダの名前を入力し、「タイプ」ドロップダウン・リストを使用して認証タイプを選択して、「OK」をクリックします。
たとえば、Oracle Internet Directoryを使用してユーザー認証する場合は、名前として「OIDAuthenticator
」を入力し、タイプとして「OracleInternetDirectoryAuthenticator」を選択します。
同様に、名前を入力して、リストから「ActiveDirectoryAuthenticator」、「iPlanetAuthenticator」、「openLDAPAuthenticator」または「NovellAuthenticator」を選択すると、対応する認証者を指定できます。
注意: Oracle Internet Directoryを認証プロバイダとして使用する場合は、Oracle Directory Services Managerを使用して、「orclsslinteropmode」属性を「 |
「プロバイダ」→「認証」ページで、作成した認証者をクリックします。
認証プロバイダの設定が表示されます。
「制御フラグ」ドロップダウン・リストから「SUFFICIENT」を選択し、「保存」をクリックします。
これによって、この認証者を使用してユーザーが正常に認証された場合、WebLogicは認証を受け入れ、追加の認証者を続けて呼び出さないことが指定されます。認証が失敗した場合、Oracle WebLogic Serverは、リストの次の認証者を使用してユーザーの認証を試行します。
「制御フラグ」を「SUFFICIENT」に設定すると、後続のすべての認証でも「制御フラグ」が「SUFFICIENT」に設定されます。同様に、デフォルトの認証者の「制御フラグ」も「SUFFICIENT」に設定されます。
「プロバイダ固有」をクリックし、認証サーバーの詳細を入力します。
認証プロバイダのプロバイダ固有情報を入力し、「取得したユーザー名をプリンシパルとして使用する」チェック・ボックスを選択して、「保存」をクリックします。
次の情報を指定する必要があります。残りのフィールドはデフォルト設定を使用します。
フィールド | 説明 |
---|---|
ホスト |
認証者サーバーが稼働しているホスト名またはIPアドレス。 |
ポート |
認証者サーバーが稼働しているポート番号。 |
プリンシパル |
サーバーへの接続時にOracle WebLogic Serverが使用する認証者サーバー・ユーザーの識別名(DN)。 |
資格証明 |
認証者サーバーへの接続に使用する資格証明(通常はパスワード)。 |
ユーザー・ベースDN |
ユーザーが含まれているLDAPディレクトリ内のツリーのベース識別名(DN)。 |
グループ・ベースDN |
グループが含まれているLDAPディレクトリ内のツリーのベース識別名(DN)。 |
取得したユーザー名をプリンシパルとして使用する |
LDAPサーバーから取得したユーザー名をサブジェクトのプリンシパルとして使用するかどうかを指定します。 |
ユーザー名属性 |
ユーザー名を指定するLDAPユーザー・オブジェクト・クラスの属性(例: |
注意: 「すべてのユーザーのフィルタ」、「名前指定によるユーザー・フィルタ」および「ユーザー名属性」の各フィールドには、同じユーザー名属性を使用する必要があります。 |
「セキュリティ・レルム」→「プロバイダ」→「認証」の順にクリックして、認証プロバイダのリストに戻ります。
「並べ替え」をクリックします。
「認証プロバイダの並べ替え」ページが表示されます。
新しい認証プロバイダを選択し、「上へ」矢印をクリックしてリストの最上位にそのプロバイダを移動し、「OK」をクリックします。
並べ替え後は、「DefaultAuthenticator」がリストの最下位に表示されます。このアクションによって、通常LDAPディレクトリ内に存在しないが、サーバーを起動するために認証が必要なweblogic
でのログインを処理できるようになります。
複数の認証プロバイダが構成されている場合、認証は、制御フラグの設定に従って認証者リストをフォールスルーします。ただし、Javaポートレット仕様(JPS)では、プロバイダ・リストの最初のエントリに対してのみ認可が提供されます。
ログイン・ユーザー(ユーザー属性)として電子メール・アドレスを使用するように、Oracle WebLogic Server管理コンソールで認証プロバイダの設定を変更できます。次の手順を実行する必要があります。
Oracle WebLogic Server管理コンソールにログインします。
「ドメイン構造」ペインで、「セキュリティ・レルム」を選択します。「セキュリティ・レルムのサマリー」ページが表示され、使用可能なレルムがリストされます。
リストで、変更するレルムの名前をクリックします。そのレルムの「設定」タブが表示されます。
「プロバイダ」→「認証」を選択します。
「認証」タブで、変更する認証プロバイダを選択します。その認証プロバイダの「設定」タブが表示されます。
「構成」→「プロバイダ固有」の順に選択して、次のフィールドを更新します。
すべてのユーザーのフィルタ: 値を(&(mail=)(objectclass=person)
に設定します。
名前指定によるユーザー・フィルタ: 値を(&(mail=%u)(objectclass=person))
に設定します。
ユーザー名属性: 値をmail
に設定します。
注意: 注意: 「すべてのユーザーのフィルタ」、「名前指定によるユーザー・フィルタ」および「ユーザー名属性」の各フィールドには、同じユーザー名属性を使用する必要があります。 |
「保存」をクリックします。
認証プロバイダのユーザーとグループは、Oracle WebLogic Server管理コンソールまたはOracle Directory Services Managerを使用して作成できます。
Oracle WebLogic Server管理コンソールを使用すると、特定のプロバイダのユーザーとグループを作成したり、ユーザーとグループのメンバーシップを定義できます。
WebLogicコンソールを使用してユーザーを作成する手順は、次のとおりです。
Oracle WebLogicコンソールにログインします。
「ドメイン構造」ペインで「セキュリティ・レルム」をクリックし、リスト内のレルム名(「myrealm」など)をクリックします。
「ユーザーとグループ」→「ユーザー」の順にクリックします。
「ユーザー」ページが表示されます。
「新規」をクリックして、新しいユーザーを追加します。「新しいユーザーの作成」ページが表示されます。
ユーザーに関する必要な情報を入力し、「OK」をクリックします。
次の情報を指定する必要があります。
フィールド | 説明 |
---|---|
名前 |
(必須)新しいユーザーの名前。 |
説明 |
新しいユーザーの説明。 |
プロバイダ |
ユーザーのプロバイダ。 |
パスワード |
新しいユーザーのログイン名に関連付けられているパスワード。 |
パスワードの確認 |
パスワードの確認。 |
指定したプロバイダの新しいユーザーが作成され、「ユーザー」ページが表示されます。必要に応じて、ユーザーのグループ・メンバーシップを構成できます。
ユーザーのグループ・メンバーシップを指定するには、リストにある新規に作成したユーザーをクリックします。新しいユーザーの設定ページが表示されます。
「グループ」をクリックして、ユーザーのグループ・メンバーシップを指定します。
「使用可能」リストでグループを選択し、右矢印をクリックして「選択済み」リストに移動します。
[Ctrl]キーを押しながらグループをクリックすると、複数のグループを選択して移動できます。
「保存」をクリックします。
WebLogicコンソールを使用してグループを作成する手順は、次のとおりです。
「ユーザーとグループ」→「グループ」の順にクリックします。
「グループ」ページが表示されます。
「新規」をクリックして、新しいグループを追加します。「新しいグループの作成」ページが表示されます。
グループに関する必要な情報を入力し、「OK」をクリックします。
次の情報を指定する必要があります。
フィールド | 説明 |
---|---|
名前 |
(必須)新しいグループの名前。 |
説明 |
新しいグループの説明。 |
プロバイダ |
グループのプロバイダ。 |
指定したプロバイダの新しいグループが作成され、「グループ」ページが表示されます。必要に応じて、グループのグループ・メンバーシップを構成できます。
グループのグループ・メンバーシップ(親グループ)を指定するには、リストにある新規に作成したグループをクリックします。新しいグループの設定ページが表示されます。
「メンバーシップ」をクリックして、グループを他のグループに追加します。
「使用可能」リストで親グループを選択し、右矢印をクリックして「選択済み」リストに移動します。
[Ctrl]キーを押しながらグループをクリックすると、複数のグループを選択して移動できます。
「保存」をクリックします。
Oracle Internet Directoryを使用するユーザーとグループは、Oracle Directory Services Managerを介して作成できます。
Oracle Directory Services ManagerからOracle Internet Directoryに接続する手順は、次のとおりです。
Webブラウザを使用して次のURLに移動し、Oracle Directory Services Managerを起動します。
http://host_name:port/odsm/faces/odsm.jspx
ここで、host_name
とport
は、Oracle Internet Directoryが稼働しているホスト名と管理対象サーバーのポート番号です。
「ディレクトリに接続」リンクをクリックし、ドロップダウン・メニューで「新規接続の作成」を選択します。「新規接続」ダイアログが表示されます。
ディレクトリ・タイプとして「OID」を選択し、必須フィールドに値を入力して、「接続」をクリックします。
次の情報を指定できます。
フィールド | 説明 |
---|---|
名前 |
接続の名前。 |
サーバー |
(必須)Oracle Internet Directoryが稼働しているシステムのホスト名またはIPアドレス。 |
ポート |
(必須)Oracle Internet Directoryが稼働しているシステムのポート番号。 |
SSL有効 |
Secure Sockets Layer(SSL)通信を有効にする場合に選択します。 |
ユーザー名 |
(必須)Oracle Internet Directoryへのログインに使用するユーザー名。 |
パスワード |
(必須)ユーザー名に関連付けられているパスワード。 |
開始ページ |
Oracle Internet Directoryへのログイン後の開始ページ。 |
Oracle Directory Services Managerの「ホーム」ページが表示されます。
「データ・ブラウザ」タブをクリックします。このページは、エントリを作成および削除するために使用できます。
ドメインを作成する手順は、次のとおりです。
「データ・ツリー」ペインで、「エントリを新規作成します。」ボタンをクリックします。新規エントリの作成ウィザードの「エントリ・プロパティ」ページが表示されます。
「追加」ボタンをクリックし、ドメインに必要なオブジェクト・クラスを追加します。「オブジェクト・クラスの追加」ダイアログが表示されます。
オブジェクト・クラスの名前を入力します。適切なオブジェクト・クラスが「名前」リストに表示された場合は、そのオブジェクト・クラスを選択して「OK」をクリックします。
ステップ2と3を繰り返して、ドメインに必要なすべてのオブジェクト・クラスを追加します。通常、top、domainおよびorclContainerがドメインに必要なオブジェクト・クラスです。
「参照」をクリックし、ドメインの親を選択します。「識別名(DN)パスの選択」ダイアログが表示されます。
ドメインの親を選択し、「選択」をクリックします。適切な親ドメインを選択することで、エントリの階層を作成できます。
「新規エントリの作成」ダイアログで、「次へ」をクリックします。新規エントリの作成ウィザードの「必須プロパティ」ページが表示されます。
必須フィールドに対する値を入力および選択し、「次へ」をクリックします。
次の情報を指定できます。
フィールド | 説明 |
---|---|
dc |
(必須)ドメイン・コンポーネント。 |
相対識別名 |
(必須)ユーザーの相対識別名。 |
新規エントリの作成ウィザードの「ステータス」ページが表示されます。
新規ドメインのステータスを検証し、「終了」をクリックして、新規ドメインを作成します。
ユーザーを作成する手順は、次のとおりです。
「データ・ツリー」ペインで、「エントリを新規作成します。」ボタンをクリックします。新規エントリの作成ウィザードの「エントリ・プロパティ」ページが表示されます。
「追加」ボタンをクリックし、ユーザーに必要なオブジェクト・クラスを追加します。「オブジェクト・クラスの追加」ダイアログが表示されます。
オブジェクト・クラスの名前を入力します。適切なオブジェクト・クラスが「名前」リストに表示された場合は、そのオブジェクト・クラスを選択して「OK」をクリックします。
ステップ2と3を繰り返して、ユーザーに必要なすべてのオブジェクト・クラスを追加します。通常、top、person、inetorgperson、organizationalPersonおよびorcluserがユーザーに必要なオブジェクト・クラスです。
「参照」をクリックし、ユーザーの親を選択します。「識別名(DN)パスの選択」ダイアログが表示されます。
ユーザーの親を選択し、「選択」をクリックします。
「新規エントリの作成」ダイアログで、「次へ」をクリックします。新規エントリの作成ウィザードの「必須プロパティ」ページが表示されます。
必須フィールドに対する値を入力および選択し、「次へ」をクリックします。
次の情報を指定できます。
フィールド | 説明 |
---|---|
cn |
(必須)一般名。 |
sn |
(必須)姓。 |
相対識別名 |
(必須)ユーザーの相対識別名。 |
新規エントリの作成ウィザードの「ステータス」ページが表示されます。
新規ユーザーのステータスを検証し、「終了」をクリックして、新規ユーザーを作成します。
「データ・ツリー」ペインで、新規に作成したユーザーのエントリをクリックします。そのユーザーの「個人」ページが表示されます。
ユーザーに関する詳細を入力し、「適用」をクリックします。
グループを作成する手順は、次のとおりです。
「データ・ツリー」ペインで、「エントリを新規作成します。」ボタンをクリックします。新規エントリの作成ウィザードの「エントリ・プロパティ」ページが表示されます。
「追加」ボタンをクリックし、グループに必要なオブジェクト・クラスを追加します。「オブジェクト・クラスの追加」ダイアログが表示されます。
オブジェクト・クラスの名前を入力します。適切なオブジェクト・クラスが「名前」リストに表示された場合は、そのオブジェクト・クラスを選択して「OK」をクリックします。
ステップ2と3を繰り返して、グループに必要なすべてのオブジェクト・クラスを追加します。通常、top、groupOfUniqueNamesおよびorclGroupがグループに必要なオブジェクト・クラスです。
「参照」をクリックし、グループの親を選択します。「識別名(DN)パスの選択」ダイアログが表示されます。
グループの親を選択し、「選択」をクリックします。
「新規エントリの作成」ダイアログで、「次へ」をクリックします。新規エントリの作成ウィザードの「必須プロパティ」ページが表示されます。
必須フィールドに対する値を入力および選択し、「次へ」をクリックします。
次の情報を指定できます。
フィールド | 説明 |
---|---|
cn |
(必須)一般名。 |
相対識別名 |
(必須)グループの相対識別名。 |
新規エントリの作成ウィザードの「ステータス」ページが表示されます。
新規グループのステータスを検証し、「終了」をクリックして、新規グループを作成します。
「データ・ツリー」ペインで、新規に作成したグループのエントリをクリックします。そのグループの「グループ」ページが表示されます。
グループに関する詳細を指定し、「適用」をクリックします。
エントリを削除する手順は、次のとおりです。
「データ・ツリー」ペインで、エントリを選択します。
「データ・ツリー」ペインで、このエントリを削除ボタンをクリックします。
Oracle Internet Directoryを認証プロバイダとして使用する場合は、Oracle Directory Services Managerを使用して、「orclsslinteropmode」属性を「0
」(ゼロ)に設定する必要があります。
ディレクトリ・サービスを構成する手順は、次のとおりです。
Oracle Directory Services Managerを起動し、ドロップダウン・リストを使用してOracle Internet Directory接続を選択します。
「データ・ブラウザ」タブをクリックします。
「cn=subconfigsubentry」→「cn=osdldapd」→「cn=oid1」の各ノードを順に開きます。
「属性」ページで、「orclsslinteropmode」属性を0
に設定します。
「適用」ボタンをクリックします。
アイデンティティ・プロバイダをカスタマイズする(自社ソリューションに格納されているユーザーとロールを処理する)には、次のURLを参照してください。
http://www.oracle.com/technetwork/middleware/id-mgmt/overview/index.html
この項では、LDAPツールを使用してユーザー、グループおよびアプリケーションの各ロールをシードするために必要となる手順の概要について説明します。
タスクを作成する場合は、タスクに参加し、作業を行う参加者を割り当てます。参加者は実行時にOracle BPM Worklistからタスクに対してアクション(休暇リクエストの承認、購買オーダーの拒否、ヘルプ・デスク・リクエストへのフィードバックの提供など)を実行できます。参加者には次の3つのタイプがあります。
ユーザー
グループ
アプリケーション・ロール
詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。
パスワード資格証明には、Oracle WebLogic Server管理コンソールからドメインの「セキュリティ」→「組込みLDAP」の順に選択することによって、アクセスできます。
デフォルトのパスワード資格証明を変更する手順については、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の第9章、組込みLDAPサーバーの管理に関する項を参照してください。
LDAPブラウザを介してユーザーまたはグループをシードするには、次の手順を実行します。
LDAPブラウザを起動します(例: openLdapブラウザ、ldapbrowser、jXplorerなど)。起動方法は、ブラウザのドキュメントを参照してください。
サーバーが実行されているホスト名とポート番号、およびログインする管理ユーザーの資格証明を指定して、LDAPサーバーに接続します。
組込みLDAPの場合:
管理対象サーバーのデフォルトのポート番号は7001
です。
管理資格証明のユーザー名はcn=admin
です。
管理資格証明のパスワードは、第21.12.1項「組込みLDAPサーバーのデフォルト・パスワードの変更」で設定したものです。
OIDmの場合:
デフォルトのポート番号は3060
です。
管理ユーザー名はcn=orcladmin
です。
管理パスワードはLDAPサーバーのパスワードです。
ブラウザを介してユーザーまたはグループをシードするには、次の手順を実行します。
ユーザーまたはグループを追加する親を選択します。
「編集」メニューを選択し、適切なオプションを選択して、新しいエントリを追加します。
エントリに必要な属性値をすべて入力します。
LDIFファイルを介してユーザーまたはグループをシードするには、次の手順を実行します。
ユーザーまたはグループをシードするドメインを選択します。
「LDIF」メニューを選択し、LDIFファイルのインポートを選択します。
LDIFファイルのインポート・ダイアログで、LDIFファイルを参照および選択して、「インポート」をクリックします。
同様に、LDAPサーバーにシードされたユーザーまたはグループは、「LDIF」メニューから「エクスポート」オプションを選択することによって、LDIFファイルにエクスポートできます。
ユーザーまたはグループに属性を追加するには、次の手順を実行します。
新しい属性を追加するエントリを選択します。
右クリックしてオプションを選択し、新しい属性を追加します。
「属性の追加」ダイアログで、属性の名前と値を指定します。
追加できるのは、LDAPサーバーのスキーマに定義されている属性のみです。
ユーザーまたはグループの属性を削除するには、次の手順を実行します。
新しい属性を削除するエントリを選択します。
属性のリストから属性を選択して削除します。
WebLogic Scripting Tool (WLST)を使用してアプリケーション・ロールをシードする手順の詳細は、Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンスの第4章「インフラストラクチャ・セキュリティ・カスタムWLSTコマンド」を参照してください。
この項では、Oracle Enterprise Manager Fusion Middleware Controlでアプリケーション・ロールを管理する方法について説明します。
注意: 管理者以外のユーザーがOracle SOAコンポーザにアクセスできるようにするには、次の手順を実行します。このことは、「アプリケーション・ロールの編集」ページで、ユーザーまたはグループにSOADesignerロールを割り当てることによって実行します。ユーザーはOracle WebLogic Serverレルムに存在する必要があります。 |
Oracle Enterprise Manager Fusion Middleware Controlでアプリケーション・ロールを管理するには、次の手順を実行します。
ナビゲータの「WebLogicドメイン」→「Farm_Domain_name」の順に選択し、該当するOracle WebLogic Serverを選択します。
ドメイン名を右クリックして、「セキュリティ」→「アプリケーション・ロール」の順に選択します。
アプリケーション・ロールを作成するには、次の手順を実行します。
「アプリケーション・ロール」ページで「作成」オプションを選択します。
「アプリケーション・ロールの作成」ページが表示されます。
「アプリケーション」リストで、ロールを作成するアプリケーションの名前(server_name/soa-infra)を選択します。
アプリケーション・ロールのロール名、表示名および説明を入力します。
「ロール」セクションで「ロールの追加」、および「ユーザー」セクションで「ユーザーの追加」を選択して、メンバーを追加します。
「OK」をクリックして、アプリケーション・ロールを作成します。
アプリケーション・ロールを編集するには、次の手順を実行します。
「アプリケーション・ロール」ページの「検索」セクションの「検索するアプリケーション名の選択」リストで、該当するアプリケーション(soa_server1/soa-infraなど)を選択します。
「ロール名」リストの右側にある「検索」アイコンをクリックします。
このアクションにより、そのアプリケーションに作成されているすべてのアプリケーション・ロールが一覧表示されます。
編集するアプリケーション・ロールを選択します(たとえば、SOADesignerを選択します)。
「編集」をクリックします。
「アプリケーション・ロールの編集」ページが表示されます。
アプリケーション・ロールとグループを「ロール」セクションに追加し、ユーザーを「ユーザー」セクションに追加します(たとえば、Oracle SOAコンポーザへのアクセスを提供するユーザーにSOADesignerを割り当てます)。ユーザーはOracle WebLogic Serverレルム内に定義されている必要があります。
「OK」をクリックします。
アプリケーション・ロールを削除するには、次の手順を実行します。
「アプリケーション・ロール」ページの「検索」セクションの「検索するアプリケーション名の選択」リストで、該当するアプリケーションを選択します。
「ロール名」リストの右側にある「検索」アイコンをクリックします。
このアクションにより、そのアプリケーションに作成されているすべてのアプリケーション・ロールが一覧表示されます。
削除するアプリケーション・ロールを選択します。
「削除」ボタンをクリックして、アプリケーション・ロールを削除します。
「確認」ダイアログで「はい」をクリックします。
デフォルトでは、ヒューマン・タスクのユーザー名のみが大文字/小文字を区別しません。この動作は、システムMBeansブラウザのユーザーに対するcaseSensitiveプロパティの値によって制御され、デフォルトでfalse
に設定されています。ヒューマン・タスクのグループ名は、ユーザー・ディレクトリにシードされる名前と同じである必要があります。ただし、ヒューマン・タスクのグループ名で大文字/小文字を区別しないようにする場合、caseSensitiveGroupsプロパティをfalse
に設定する必要があります。
ヒューマン・タスクのグループ名について大文字/小文字を区別する動作を有効にするには、次の手順を実行します。
「soa-infra」を右クリックし、「管理」→「システムMBeanブラウザ」の順に選択します。
システムMBeanブラウザがページの右側に表示されます。
「アプリケーション定義のMBean」→「oracle.as.soainfra.config」→「サーバー: server_name」→「WorkflowIdentityConfig」→「human-workflow」→「WorkflowIdentityConfig.PropertyType」→「caseSensitiveGroups」の順に開きます。
「操作」タブをクリックします。
「setValue」をクリックします。
「値」フィールドに、false
と入力します。
「呼出し」をクリックします。
ポリシー・セットには複数のポリシー参照を含めるできるため、ポリシー・セットを使用すると、ある範囲に含まれる同じタイプのエンドポイントに対して、ポリシーをグローバルにアタッチできます。ポリシー・セットを使用してポリシーをグローバルにアタッチすることによって、開発者、アセンブラまたはデプロイヤなどの複数のユーザーが、アタッチするポリシーを明示的に指定しなかった状況において、すべてのサブジェクトが確実に保護されるようにできます。ポリシー・セットを使用してアタッチされるポリシーは、外部的にアタッチされたと見なされます。
たとえば、開発者が注釈内にポリシーを指定しなかった場合、または、デプロイメント・ディスクリプタにポリシー参照を含めなかった場合、デプロイヤはポリシーをアタッチする必要があり、このようにしないと、潜在的なセキュリティ・リスクが発生します。タイプ別のサブジェクトのセットに対してポリシーをグローバルにアタッチすることによって、管理者はデプロイメントに関係なく(かつデプロイメント前に)、すべてのサブジェクトがデフォルトで保護されるようにできます。たとえば、管理者はあるドメイン内のすべてのWebサービス・エンドポイントに対してセキュリティ・ポリシーをアタッチするポリシー・セットを定義できます。この場合、ドメインに追加されるすべての新規サービスには、ポリシー・セットに定義されたセキュリティ構成が自動的に継承されます。
ポリシー・セットを使用してポリシーをグローバルにアタッチする方法の詳細は、『Oracle Fusion Middleware Webサービスのためのセキュリティおよび管理者ガイド』を参照してください。