この章では、SOAコンポジット・アプリケーションの設計時にポリシーを管理する方法について説明します。
項目は次のとおりです。
Oracle Fusion Middlewareでは、ポリシー・ベースのモデルを使用してWebサービスを組織全体で管理および保護します。 ポリシーによって、メッセージ配信にセキュリティが適用されます。 ポリシーは、開発者が設計時環境で管理することも、システム管理者が実行時環境で管理することもできます。
ポリシーは1つ以上のアサーションで構成されます。ポリシー・アサーションは、特定のアクションを実行するポリシーの最小単位です。 ポリシー・アサーションはリクエスト・メッセージおよびレスポンス・メッセージに対して実行され、同じアサーション・セットが両方のタイプのメッセージに対して実行されます。 アサーションはポリシーに表示されている順序で実行されます。
表50-1に、サポートされるポリシー・カテゴリを示します。
表50-1 サポートされるポリシー・カテゴリ
カテゴリ | 説明 |
---|---|
メッセージ転送最適化メカニズム(MTOM) |
添付ファイルがMTOM形式であることが保証されます。この形式を使用すると、Webサービス間でバイナリ・データを送信できます。これにより、ワイヤ上の転送サイズを減らすことができます。 |
信頼性 |
WS-Reliable Messagingプロトコルをサポートします。これにより、エンドツーエンドのメッセージ配信が保証されます。 |
アドレッシング |
Simple Object Access Protocol(SOAP)メッセージに、WS-Addressing仕様に準拠するWS-Addressingヘッダーが含まれていることを検証します。トランスポート・レベルのデータはXMLメッセージに含まれており、ネットワーク・レベルのトランスポートに依存せずに情報を伝達します。 |
セキュリティ |
WS-Security 1.0および1.1の標準を実装します。 これらの標準により、ユーザーの認証と認可、アイデンティティ伝播およびメッセージ保護(メッセージ整合性およびメッセージ機密性)が実施されます。 |
管理 |
リクエスト、レスポンスおよびフォルト・メッセージをメッセージ・ログに記録します。管理ポリシーにはカスタム・ポリシーを含めることもできます。 |
各カテゴリ内には、添付できるポリシー・タイプが1つ以上あります。 たとえば、「信頼性」カテゴリを選択した場合は、次のタイプを選択できます。
oracle/wsrm10_policy
WS-Reliable Messagingプロトコルのバージョン1.0をサポートします。
oracle/wsrm11_policy
WS-Reliable Messagingプロトコルのバージョン1.1をサポートします。
使用可能なポリシーおよび各自の環境で使用するポリシーの詳細は、『Oracle Fusion Middleware Web Servicesセキュリティおよび管理者ガイド』を参照してください。
SOAコンポジット・アプリケーションのサービス・バインディング・コンポーネント、サービス・コンポーネントおよび参照バインディング・コンポーネントとの間で、ポリシーを添付したり、ポリシーの添付を解除できます。設計時環境でセキュリティをテストするために、Oracle JDeveloperを使用してポリシーを添付します。 アプリケーションを本番環境にデプロイする準備が整った場合は、Oracle Enterprise Manager Fusion Middleware Controlコンソールで実行時ポリシーを添付したり、ポリシーの添付を解除できます。
ポリシーの実行時管理の詳細は、『Oracle Fusion Middleware Oracle SOA Suite管理者ガイド』を参照してください。
ポリシーをサービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントに添付する手順は、次のとおりです。
SOAコンポジット・エディタで、サービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントを右クリックします。
「WSポリシーの構成」を選択します。
SOAコンポジット・アプリケーションのインタフェース定義に応じて、オプションの追加メニューが表示される場合があります。
選択したサービスまたは参照が同期のBPELプロセス・サービス・コンポーネントまたはOracle Mediatorサービス・コンポーネントとインタフェースしている場合は、リクエスト・メッセージとレスポンス・メッセージの両方に対して単一のポリシーが使用されます。 「SOA WSポリシーの構成」ダイアログが即時に表示されます。 手順4に進みます。
サービスまたは参照が非同期のBPELプロセス・サービス・コンポーネントまたはOracle Mediatorサービス・コンポーネントとインタフェースしている場合は、リクエスト・メッセージとレスポンス・メッセージに対して個別のポリシーを構成する必要があります。 コールバックのポリシーは、サービスからクライアントに送信されるレスポンスに使用されます。 追加のメニューが表示されます。 手順3に進みます。
使用するバインディングのタイプを選択します。
リクエスト対象:
バインドするサービス・コンポーネントのリクエスト・バインディングを選択します。選択できるリクエスト・バインディングは1つのみです。 このアクションにより、バインディング・コンポーネントとサービス・コンポーネント間の通信が可能になります。
「公開されたサービス」スイムレーンでリクエスト・バインディングがサービスに対して構成されると、そのサービスはサーバーとして機能します。「外部参照」スイムレーンでリクエスト・バインディングが参照に対して構成されると、その参照はクライアントとして機能します。
コールバック対象: (非同期プロセスとの相互作用が必要な場合のみ)
バインドするサービス・コンポーネントのコールバック・バインディングを選択します。 このアクションにより、バインディング・コンポーネントとサービス・コンポーネント間のメッセージ通信が可能になります。選択できるコールバック・バインディングは1つのみです。
「公開されたサービス」スイムレーンでコールバック・バインディングがサービスに対して構成されると、そのサービスはクライアントとして機能します。「外部参照」スイムレーンでコールバック・バインディングが参照に対して構成されると、その参照はサーバーとして機能します。
図50-1に示す「SOA WSポリシーの構成」ダイアログが表示されます。 この例では、サービス・バインディング・コンポーネントに対して「リクエスト対象」オプションが選択されています。 「コールバック対象」を選択した場合も、同じタイプのポリシー・カテゴリが使用可能です。
「追加」アイコンをクリックして、次のポリシー・カテゴリを表示します。 この例では、添付に対して「セキュリティ」が選択されています。
MTOM
信頼性
アドレッシング
セキュリティ
管理
図50-2に示すダイアログが表示されます。
カーソルをポリシー名の上に置くと、ポリシー機能の説明が表示されます。
添付するポリシーのタイプを選択します。
「OK」をクリックします。
図50-3に示す「SOA WSポリシーの構成」ダイアログに戻ります。 添付されたセキュリティ・ポリシーが「セキュリティ」セクションに表示されます。
必要に応じて、さらにポリシーを追加します。
ポリシーを一時的に無効にするには、添付されたポリシーの名前の左にあるチェック・ボックスの選択を解除します。 このアクションでは、ポリシーの添付は解除されません。
ポリシーの添付を解除するには、「削除」アイコンをクリックします。
完了後に、「SOA WSポリシーの構成」ダイアログで「OK」をクリックします。
SOAコンポジット・エディタに戻ります。
ポリシーをサービス・コンポーネントに添付する手順は、次のとおりです。
サービス・コンポーネントを右クリックします。
「コンポーネントWSポリシーの構成」を選択します。
図50-4に示す「SOA WSポリシーの構成」ダイアログが表示されます。
添付するポリシーのタイプの「追加」アイコンをクリックします。
セキュリティ
管理
選択したタイプに対応するダイアログが表示されます。
添付するポリシーのタイプを選択します。
「OK」をクリックします。
必要に応じて、さらにポリシーを追加します。
完了後に、「SOA WSポリシーの構成」ダイアログで「OK」をクリックします。
Oracle Enterprise Manager Fusion Middleware Controlコンソールで実行時にポリシーを添付する方法については、『Oracle Fusion Middleware Oracle SOA Suite管理者ガイド』を参照してください。