6 Fusion Middleware ControlによるWebサービス・ポリシーの管理
Webサービス・ポリシーおよびWebサービスのサービス品質(QoS)を管理するためにOracle Web Services Manager (OWSM)でポリシーがどのように使用されるかの詳細は、『Oracle Web Services Managerの理解』のOWSMポリシー・フレームワークの概要を参照してください。次の項では、Fusion Middleware Controlを使用したWebサービス・ポリシーの管理について説明します。
6.1 Webサービス・ポリシー管理の概要
12cリリースでは、OWSMで配信された事前定義済ドキュメントは、ポリシーおよびアサーション・テンプレートを含め、読取り専用です。これが新規インストールの場合、OWSMとともにインストールされるすべてのドキュメントが読取り専用です。事前定義済のポリシーまたはアサーション・テンプレートを変更するには、そのクローンを作成し、クローン・バージョンを必要に応じて変更します。
既存のOWSM環境にインストールする場合、または以前のリリースからアップグレードする場合、環境に合せてカスタマイズしていない事前定義済ドキュメントは読取り専用のバージョンに置換され、新規の事前定義済読取り専用ドキュメントが追加されます。ただし、カスタマイズされた既存の事前定義済ドキュメント、およびリポジトリのユーザー作成のカスタム・ポリシーは上書きされません。
注意:
最新のポリシーを常にすべて取得できるように、変更した事前定義ドキュメントはクローニングし、ポリシー・アタッチメントは移行することをお薦めします。詳細は、「OWSMリポジトリのアップグレード」を参照してください。
6.2 Webサービス・ポリシーの管理
Webサービス・ポリシーの管理ページから、特定のポリシーまたはポリシーのタイプの検索、ポリシーの表示、新規ポリシーの作成、カスタム・ポリシーの編集、カスタム・ポリシーの削除、カスタム・ポリシーからOWSMリポジトリへのインポートおよびエクスポートまたはOWSMリポジトリからカスタム・ポリシーへのインポートおよびエクスポートを実行できます。
トピック:
6.2.1 「WSMポリシー」ページへの移動
Webサービス・ポリシーを管理するには、「WSMポリシー」ページを使用します。このページから、特定のポリシーまたはポリシーのタイプの検索、ポリシーの表示、新規ポリシーの作成、カスタム・ポリシーの編集、カスタム・ポリシーの削除、ポリシーからOWSMリポジトリへのインポートおよびエクスポートまたはOWSMリポジトリからポリシーへのインポートおよびエクスポートを実行できます。
6.2.2 「WSMポリシー」ページでのポリシーの検索
ポリシーの検索は、「WSMポリシー」ページで拡張検索機能、例による問合せフィルタ、または検索の精度を上げるためにその2つの組合せを使用して実行できます。
ポリシーの検索の詳細は、次の項を参照してください。
6.2.3 Webサービス・ポリシーの詳細の表示
Webサービス・ポリシーの詳細を表示するには、「WSMポリシー」ページを使用します。
Oracleからの事前定義済ポリシーは読取り専用であり、変更できません。これらのポリシーは読取り専用モードで表示されます。ユーザーが作成したポリシーは読取り専用ではなく、「Webサービス・ポリシーの編集」の説明に従って編集できます。
Webサービス・ポリシーの詳細を表示するには、次の手順を実行します。
6.2.4 Webサービス・ポリシーの作成および編集
Webサービス・ポリシーを作成および編集するには、WSMポリシーの詳細ページを使用します。
トピック:
6.2.4.1 新しいWebサービス・ポリシーの作成
1つ以上のアサーション・テンプレートを使用して新しいポリシーを作成するには、次の手順に従ってください。
次の手順を実行して、新しいWebサービス・ポリシーを作成します。
6.2.4.2 Webサービス・ポリシーのクローンの作成
既存のWebサービス・ポリシーをクローニングして新規のポリシーを作成できます。たとえば、読取り専用の事前定義済ポリシーのいずれかのコピーを作成し、それを必要に応じて編集できます。作成したポリシーのコピーを作成することもできます。ポリシーを作成すると、アサーションの追加や削除、既存のアサーションの変更など、その他のユーザーが作成したポリシーと同じように扱うことができます。
Webサービス・ポリシーのクローンを作成するには、次の手順を実行します。
6.2.4.3 カスタム・ポリシーの作成
カスタム・アサーションを使用してカスタム・ポリシーを作成できます。
カスタム・アサーションとポリシーの両方を作成する方法の手順と詳細は、『Oracle Web Services Manager拡張可能アプリケーションの開発』のカスタム・アサーションの作成に関する項を参照してください。
6.2.4.4 Webサービス・ポリシーの編集
ユーザーが作成したポリシーは、このトピックの説明に従って編集できます。
注意:
OWSMで提供される事前定義済のポリシーは読取り専用であり、編集できません。事前定義済ポリシーを編集するには、そのクローンを作成し、クローン・バージョンを編集できます。
ポリシーに対する変更内容は、ポリシー変更の次の調査間隔で反映されます。
データベースに基づくメタデータ・リポジトリを使用している場合は、ポリシーへの変更を保存するたびに新しいバージョンが作成され、古いバージョンが保持されます。ポリシーのバージョニングの詳細は、「Webサービス・ポリシーのバージョニング」を参照してください。
Webサービス・ポリシーを編集するには、次の手順を実行します。
6.2.5 OWSMポリシーでのローカルの最適化の使用(SOAコンポジット)
OWSMでは、コンポジットからコンポジットを起動できるようにするOracle SOA Suiteのローカルの最適化機能がサポートされています。この機能では、一方のコンポジットの参照で同じコンテナで実行しているもう一方のコンポジットにバインディングするWebサービスを指定します。ローカルの最適化により、実行時のHTTPスタックおよびSOAPと正規化されたメッセージの変換を回避できるようになります。ポリシーがWebサービス・バインディングにアタッチされている場合は、ローカルの最適化が使用されているとポリシーを呼び出すことができません。
トピック:
SOAのローカルの最適化機能の詳細は、Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理のローカルの最適化の構成に関する項を参照してください。
6.2.5.1 OWSMポリシーでのデフォルトのローカル最適化設定の表示
デフォルトで、OWSMの各事前定義済ポリシーにはローカルの最適化プロパティが含まれています。ローカルの最適化プロパティのデフォルト設定は、各ポリシーの「一般」タブに表示されます。Fusion Middleware Controlを使用した、ローカルの最適化プロパティ設定を含めたポリシーの詳細の表示手順は、「Webサービス・ポリシーの詳細の表示」を参照してください。
ローカルの最適化プロパティには3つの設定があります。
-
on
: アタッチされたポリシーでローカルの最適化が有効で、ポリシーは実行時に適用されません。 -
off
: ローカルの最適化は無効で、ポリシーは実行時に適用されます。リクエストは通常のWS/SOAP/HTTPプロセスに従って処理されます。 -
check-identity
: JAASサブジェクトが現在のスレッドにすでに存在し、認証がすでに成功したことを示している場合にのみローカルの最適化が使用されます。JAASサブジェクトがスレッドに存在しない場合、リクエストは通常のWS/SOAP/HTTPプロセスを使用します。
6.2.5.2 ローカルの最適化を使用する場合のコントロール
ローカルの最適化機能をコントロールするには次の2通りの方法があり、それぞれが異なるスコープを持ちます。
-
コンポジット・レベルで、
composite.xml
ファイルのバインディング・セクションにoracle.webservices.local.optimization
プロパティを追加する方法。サポートされている値は次のとおりです。-
true
: (デフォルト値)。ローカルの最適化は、アタッチされたポリシーで使用するよう構成されている場合に使用されます。ローカルの最適化プロパティ設定の詳細は、「OWSMポリシーでのデフォルトのローカル最適化設定の表示」を参照してください。最適化が使用される場合、ポリシーは適用されません。 -
false
: ポリシーにおけるローカルの最適化プロパティの構成に関係なく、ローカルの最適化は使用されません。この設定ではポリシーが強制的に適用されます。
コンポジット・レベルのプロパティは、ポリシー・レベルの構成とは無関係です。つまり、ポリシーが添付されているかどうかに関係なく最適化を無効にする場合は、コンポジット・レベルのプロパティを
false
に設定します。詳細は、Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理のコンポジット間呼出しでのポリシー・アタッチメントおよびローカルの最適化に関する項を参照してください。
-
-
ポリシー・レベルで、ポリシーに対してローカルの最適化プロパティを構成する方法。ローカルの最適化プロパティの選択可能な設定は、「OWSMポリシーでのデフォルトのローカル最適化設定の表示」を参照してください。ポリシー・レベルのプロパティは、コンポジット・レベルのプロパティによってオーバーライドされる場合を除いて、ポリシーが使用されるときには必ず最適化をコントロールします。
注意:
Oracleからの事前定義済ポリシーは読取り専用であり、変更できません。事前定義済のポリシーのクローンを作成する場合、ローカルの最適化設定は変更しないことをお薦めします。そうした場合、ポリシーが起動されず、予期せぬ動作が発生する恐れがあります。ただし、新しいポリシーを作成する場合は、使用環境に合せてこのプロパティを設定できます。
ポリシーがWebサービスにアタッチされている場合は、ローカルの最適化が使用されているとポリシーが起動されないことがあります。したがって、新規ポリシーを作成するたびに、ローカルの最適化を使用するかどうかを決定する必要があります。
6.2.6 WSDLからのクライアント・ポリシーの生成
Webサービスを構成したら、WebサービスWSDLを使用して、そのサービスのコールに必要なパラメータと互換性のあるクライアント・ポリシーを生成できます。ポリシーで通知されるアサーションのみを使用して、クライアント・ポリシーと等価のクライアント・アサーションを生成できます。
注意:
クライアント・ポリシーの生成には、標準WSDLではなく、Oracle WSDLを使用する必要があります。WebサービスのURLは、?wsdlではなく?orawsdlで追加する必要があります。ポリシーを生成すると、クライアント・ポリシーがサービス・ポリシーと連携する可能性が高くなります。
クライアント・ポリシーを生成すると、そのポリシーには、通知されたサービス・アサーションに一致するペアであるクライアント・アサーションが移入されます。たとえば、WSDLのサービス・ポリシーにoracle/ wss_http_token_service_templateが含まれている場合、生成されたクライアント・ポリシーには対応するoracle/wss_http_token_client_templateが移入されます。
ポリシーを編集する前に、最初にそれを保存する必要があります。ポリシーに必要な変更を行った後で、「WSMポリシー」ページからアクセスできます。
また、生成された不要なポリシーは削除できます。たとえば、すでに存在するMTOMや信頼できるメッセージング・ポリシーの複製の削除が必要な場合があります。
Webサービス・クライアントのポリシーを作成するには、次の手順を実行します。
ポリシーを保存すると、「WSMポリシー」ページに移動して、ポリシーのリストでポリシーを検索できます。
6.2.7 ポリシーへのアサーションの追加
ポリシーの作成または編集中にユーザーが作成したポリシーにアサーションを追加できます。OWSMで提供される事前定義済ポリシーにアサーションを追加することはできません。事前定義済のポリシーは読取り専用であり、編集できません。
各ポリシーに含めることができるアサーションは、MTOMアタッチメントおよび信頼できるメッセージングの各カテゴリから1つのみです。ポリシーには、セキュリティ・カテゴリに属するアサーションをいくつでも含めることができますが、アサーションの組合せが有効であることが必要です。有効なアサーションの詳細は、「Webサービス・ポリシーの検証」を参照してください。
ポリシーにアサーションを追加するには、次の手順を実行します。
6.2.8 ポリシーへのORグループの追加
1つ以上のアサーションを含むORグループを作成して、1つのポリシーで複数のタイプのセキュリティ・トークンを使用するようにできます。クライアントは、ORグループに定義されている任意のポリシーを実行できます。
詳細は、『Oracle Web Services Managerの理解』の複数のポリシー代替(ORグループ)の定義に関する項を参照してください。
ポリシーに追加できるORグループは1つのみです。ORグループを追加したら「ORグループ」オプションは灰色表示されます。
ORグループは、「ポリシーの詳細」ページから追加します。
ポリシーにORグループを追加するには、次の手順を実行します。
6.2.9 Webサービス・ポリシーのインポート
ユーザーが作成した1つ以上のポリシーをOWSMリポジトリにインポートするには、この項の手順に従ってください。ポリシーをインポートすると、Webサービスへのアタッチや変更を行うことができます。
Webサービス・ポリシーのインポートの詳細は、「ポリシーのインポートとエクスポートの異なるメカニズムの理解」を参照してください。
注意:
インポートするポリシー名は、リポジトリに存在しないものであることが必要です。
ポリシー名とファイル名は異なることに注意してください。ポリシー名はポリシー・コンテンツの名前属性によって指定されますが、ファイル名はポリシー・ファイルの名前です。2つの名前を一致させると便利ですが、必須ではありません。
ポリシーの名前に接頭辞「oracle_」を付けることはできません。そうしないと、そのポリシーを使用しようとしたときに例外が返されます。
1つ以上のWebサービス・ポリシーをインポートするには、次の手順を実行します。
6.2.10 Webサービス・ポリシーのエクスポート
ポリシーをエクスポートし、開発環境から本番環境にポリシーをコピーしたり、単にポリシーを別のツールやアプリケーションで表示したりできます。
「Webサービス・ポリシーの作成および編集」の手順に従って作成したWebサービス・ポリシーをエクスポートできます。事前定義済のポリシーはエクスポートできません。これは同じ読取り専用バージョンのポリシーがターゲット環境に存在するからです。ポリシーをエクスポートすると、別のリポジトリへのインポート、Webサービスへのアタッチ、変更などを行えます。
Webサービス・ポリシーのエクスポートの詳細は、「ポリシーのインポートとエクスポートの異なるメカニズムの理解」を参照してください。
OWSMリポジトリからポリシーをエクスポートするには、次の手順に従います。
6.2.11 Webサービス・ポリシーのバージョニング
ユーザーが作成したポリシーへの変更を保存するたびに、ポリシーの新しいバージョンが自動的に作成され、バージョン番号が増加されます。これらの変更履歴はポリシー・マネージャにより維持され、以前のバージョンに戻すことができます。
注意:
Oracleの事前定義済のポリシーは読取り専用であり変更できないため、バージョン制御は適用されません。
ポリシーのバージョニングでは、データベース・ベースのOWSMリポジトリを使用する必要があります。ファイルベースのリポジトリを使用している場合、バージョン情報は維持されず表示されません。
リポジトリにすでに存在する名前でドキュメントを再作成(既存のドキュメントのインポート、または新しいドキュメントの作成による)すると、バージョン番号が増分されます。
たとえば、ロギングを含むバージョンと含まないバージョンなど、2つの異なるバージョンのポリシーを作成し、交互に切り替えると便利です。別の例として、oracle/binding_authorization_denyall_policy
ポリシーなどのポリシーを、選択したロールと組み合せて使用して、Webサービスへのアクセスを一時的に禁止することが必要になる場合があります。
バージョニング機能を使用すると、複数のバージョンのポリシーを必要になるたびに再作成することなく再利用できます。
また、「ポリシー・バージョンの履歴」表からポリシーを選択し、「削除」をクリックすると、アクティブなポリシーを除く、任意のバージョンのポリシーを削除できます。
「ポリシー・バージョンの履歴」ページから、ポリシーを編集することはできません。ポリシーの編集は、「ポリシーの詳細」ページで行う必要があります。
次の項では、バージョニングについてより詳細に説明します。
6.2.11.1 Webサービス・ポリシーのバージョン履歴の表示
「ポリシー・バージョンの履歴」ページからWebサービス・ポリシーのバージョン履歴を表示できます。このページには「ポリシーの詳細」ページからアクセスできます。
ポリシーのバージョン履歴を表示するには、次の手順を実行します。
6.2.11.3 Webサービス・ポリシーのバージョンの削除
以前のバージョンのポリシーを削除するには、次の手順に従います。アクティブなポリシー・バージョンを除く、すべてのバージョンを削除することができます。アクティブなバージョンを含むすべてのバージョンのポリシーを削除するには、「Webサービス・ポリシーの削除」を参照してください。
Webサービス・ポリシーのバージョンを削除するには、次の手順を実行します。
6.2.12 Webサービス・ポリシーの削除
ポリシーを削除する前に、ポリシーがポリシー・サブジェクトにアタッチされていないことを確認することをお薦めします。サブジェクトにアタッチされたポリシーの削除を試行すると、警告が表示されます。アタッチされたポリシーは削除できます。ただし、ポリシーが添付されているサブジェクトが次に起動されたときに、Webサービス・リクエストが失敗します。
注意:
ユーザーが作成したポリシーのみ削除できます。OWSMで配信された事前定義済のポリシーは読取り専用であり、編集または削除できません。
ポリシーを削除すると、アクティブなポリシーおよび以前のバージョンのすべてのポリシーが削除されます。アクティブなポリシー・バージョンを保持し、以前のバージョンのポリシーのみを削除するには、「Webサービス・ポリシーのバージョンの削除」を参照してください。
ユーザーが作成したWebサービス・ポリシーを削除するには、次の手順を実行します。
6.3 Webサービス・ポリシーの検証
Webサービス・ポリシーで許可されているポリシー・アサーションのタイプと数には制限があります。ポリシーに含めることができるのは、単一のカテゴリに属するアサーションのみです。そのため、同じポリシー内で、セキュリティ・アサーションとMTOMアサーションを結合することはできません。ポリシー・タイプはアサーションのカテゴリで決定されます。したがって、セキュリティ・アサーションを含むポリシーはセキュリティ・ポリシーであり、管理アサーションを含むポリシーは管理ポリシーです。セキュリティ・アサーションは、さらにサブカテゴリ(認証、ロギング、メッセージ保護(msg-protection)および認可)に分類されます。
ポリシーに含めることのできるアサーションの数とタイプには制限があります。制限事項は次のとおりです。
-
MTOMおよび信頼できるメッセージング・ポリシーに含めることができるのは1つのアサーションのみです。
-
セキュリティ・ポリシーには複数のセキュリティ・アサーションを含めることができますが、ポリシー、暗号化、署名、および認証で許可されるのは次のサブカテゴリから1つのアサーションのみです。
-
認証とメッセージ保護の両方が含まれるアサーションもあります。たとえば、
oracle/wss11_username_token_with_message_protection_service_policy
を表示すると、図6-6で示すように、2つ目のアサーションはsecurity/authenticationとsecurity/msg-protectionの2つのカテゴリに分類されていることがわかります。 -
セキュリティ・ポリシーには、security_log_templateアサーションをいくつでも含めることができます。たとえば、事前定義済のセキュリティ・ポリシーを表示すると、2つのロギング・アサーションが含まれています。
認証およびメッセージ保護に1つ目のポリシーを、認可に2つ目のポリシーを作成することをお薦めします。認証と認可の両方のアサーションを含むポリシーを作成する場合は、認証アサーションを認可アサーションより先に指定する必要があります。
新規ポリシーを作成するか、ユーザーが作成したポリシーを編集する場合は、検証プロセスによって、ポリシーがこれらの要件に一致することを確認します。ポリシーの作成中に検証が失敗すると、ポリシーは作成されますが無効とマークされます。
ポリシーを検証する手順は次のとおりです。
6.4 ポリシー・アサーション・テンプレートの管理
OWSMには、ポリシーの作成に使用することが可能な一連の事前定義済アサーション・テンプレートがあります。事前定義済アサーション・テンプレートは読取り専用で、変更できませんが、必要に応じて特定の要件を満たすために、それらのクローンを作成して、新規アサーション・テンプレートを作成できます。
詳細は、『Oracle Web Services Managerの理解』のポリシー・アサーションを使用したポリシーの作成に関する項を参照してください。
非標準のセキュリティ・トークンのサポートなど、必要な機能がそのまま使用できる状態で提供されない場合、OWSMでは、カスタム・ポリシー・アサーションを定義できます。詳細は、カスタム・アサーションの作成を参照してください。
「ポリシーへのアサーションの追加」の説明に従って、ユーザーが作成したポリシーに1つ以上のアサーションを追加できます。OWSMで提供される事前定義済のポリシーにアサーションを追加することはできません。これらのポリシーは読取り専用であり、変更できないためです。アサーションはポリシーに表示されている順序で実行されます。
事前定義済アサーション・テンプレートの詳細は、「Oracle Web Services Managerの事前定義済アサーション・テンプレート」を参照してください。
次の項では、ポリシー・アサーション・テンプレートの管理の詳細を説明しています。
6.4.1 「アサーション・テンプレート」ページへの移動について
アサーション・テンプレートは、「アサーション・テンプレート」ページからドメイン・レベルで管理できます。このページから、アサーション・テンプレートのコピー、編集、削除、インポートおよびエクスポートを実行できます。
6.4.2 「アサーション・テンプレート」ページの検索オプションの理解
アサーション・テンプレートの検索は、拡張検索機能、例による問合せフィルタを使用して、または検索の精度を上げるためにその2つの組合せを使用して、「アサーション・テンプレート」ページで実行できます。
詳細は次の項を参照してください。
6.4.2.1 拡張検索を使用したアサーション・テンプレートの検索
「アサーション・テンプレート」ページで、適切な検索条件を指定することによって、戻されるアサーション・テンプレート数を削減できます。これを行うには、次の手順を実行します。
6.4.3 アサーション・テンプレートの詳細の表示
アサーション・テンプレートの詳細を表示するには、次の手順に従います。Oracleからの事前定義済のアサーション・テンプレートは読取り専用であり、変更できません。これらのアサーション・テンプレートは読取り専用モードで表示されます。ユーザーが作成したアサーション・テンプレートは読取り専用ではなく、編集できます。
アサーション・テンプレートの詳細を表示するには、次の手順を実行します。
6.4.4 アサーション・テンプレートの命名規則
アサーション・テンプレートに名前を付ける際には、事前定義済ポリシーに名前を付ける時に使用するのと同じ命名規則が使用されます。
事前定義済アサーション・テンプレートは、oracle/wss10_message_protection_service_template
など、oracle/
というディレクトリ名で始まり、最後の接尾辞_template
で識別されます。
推奨されている命名規則に従うことと、作成したアサーション・テンプレートは、事前定義済のアサーション・テンプレートが存在するoracleディレクトリと別のディレクトリに保存することをお薦めします。ルート・レベルのアサーション・テンプレートは、ディレクトリ(oracle以外)またはサブディレクトリに構成できます。
事前定義済ポリシーの命名規則の詳細は、『Oracle Web Services Managerの理解』のポリシーの推奨命名規則に関する項を参照してください。
6.4.5 アサーション・テンプレートのクローンの作成
ベースとして既存のテンプレートを使用して、新しいアサーション・テンプレートを作成できます。必要な動作に最も一致するアサーション・テンプレートを選択し、「類似作成」機能を使用して、そのコピーを作成し、新しい動作を取得するために必要な変更を行います。
Webサービス・ポリシーのクローンを作成するには、次の手順を実行します。
6.4.6 アサーション・テンプレートの編集
次の手順に記載のとおり、ユーザーが作成したアサーション・テンプレートは編集できます。
注意:
OWSMで提供される事前定義済のアサーション・テンプレートは読取り専用であり、編集できません。事前定義済テンプレートを編集するには、そのクローンを作成し、クローン・バージョンを編集できます。
アサーション・テンプレートを編集するには、次の手順を実行します。
6.4.7 アサーション・テンプレートの構成プロパティの編集
事前定義済アサーション・テンプレートのいずれかのクローンを作成している場合は、環境に一致するように構成プロパティを変更できます。たとえば、アサーション・テンプレート内で構成できるプロパティには、csf-key
、saml.issuer.name
、keystore.recipient.alias
、role
などが含まれます。
注意:
事前定義済アサーション・テンプレートの構成プロパティは変更できません。これらは読取り専用で、変更できないためです。
アサーション・テンプレートのクローンの作成時、またはクローンを作成したアサーション・テンプレートの編集時には、各プロパティの次の設定を構成できます。
-
説明: プロパティの説明。
-
値: 現在の値。
-
デフォルト: デフォルト値。この値は、「値」フィールドが設定されていない場合に使用されます。
-
「タイプ」は次のいずれかです。
-
定数: プロパティはオーバーライドできません。
-
必須: プロパティは必須であり、オーバーライドできます。この値は、「値」プロパティに値が設定されている必要があるか、または空白のままにすることができるかを決定します。
-
オプション: プロパティはオプションであり、オーバーライドできます。
-
次の手順を実行して、プロパティを構成します。
6.4.8 アサーション・テンプレートのエクスポート
作成した1つ以上のアサーション・テンプレートをエクスポートできます。事前定義済のアサーション・テンプレートはエクスポートできません。これは同じ読取り専用バージョンのテンプレートがターゲット環境に存在するからです。アサーション・テンプレートをエクスポートした後で、必要に応じてこれらのテンプレートを新規ディレクトリにコピーしたり、別のリポジトリにインポートしたりできます。
1つ以上のアサーション・テンプレートのエクスポートについては、アサーション・テンプレートのクローンの作成で説明されています。
1つ以上のアサーション・テンプレートをエクスポートするには、次の手順を実行します。
6.4.9 アサーション・テンプレートのインポート
ユーザーが作成した1つ以上のアサーション・テンプレートを含むzipアーカイブをインポートするには、この項の手順に従ってください。この機能と「エクスポート」を組み合せて使用することで、異なるリポジトリ間で1つ以上のアサーション・テンプレートを移動できます。アサーション・テンプレートがインポートされたら、それをWebサービス・ポリシーに追加し、変更できます。
アサーション・テンプレートをインポートするには、次の手順を実行します。
6.5 ポリシーとアサーションの管理
ポリシーまたはポリシー内のアサーションを有効または無効にできます。
次の項では、ポリシーまたはポリシー内のアサーションを有効化または無効化するための異なる方法について説明します。
6.5.1 全ポリシー・サブジェクトのポリシーの有効化または無効化
ポリシーを作成すると、検証エラーが発生した場合を除き、デフォルトで有効化されます。ユーザーが作成したポリシーは、「ポリシーの詳細」ページからグローバルに有効化または無効化できます。ポリシーは中央の1つの場所から有効化または無効化でき、アタッチされているすべてのポリシー・サブジェクトに対して有効化または無効化されます。
注意:
すべてのポリシー・サブジェクトに対してOracleからの事前定義済ポリシーを無効化することはできません。これらのポリシーは、読取り専用であり、変更できません。ただし、個々のサブジェクトへのポリシー参照は無効化できます。詳細は、「Fusion Middleware Controlを使用した直接アタッチされたポリシーの有効化または無効化」を参照してください。
「ポリシーの詳細」ページからポリシーを無効化すると、ポリシーはポリシー・サブジェクトにアタッチされたままになりますが、無効化されます。ポリシーに、Webサービスへのすべてのリクエストが失敗する原因となる問題があることが検出された場合は、一時的にポリシーを無効化する必要があります。問題を修正すると、ポリシーをグローバルに有効化できます。
また、すべてのポリシー・サブジェクトではなく、特定のポリシー・サブジェクトのポリシーを選択的に有効化または無効化することもできます。詳細は、「Fusion Middleware Controlを使用した直接アタッチされたポリシーの有効化または無効化」を参照してください。
すべてのポリシー・サブジェクトに対してユーザーが作成したWebサービス・ポリシーを有効化または無効化するには、次の手順を実行します。
6.5.2 ポリシー内のアサーションの有効化または無効化
ポリシー内に含まれている1つ以上のアサーションを有効または無効にできます。これにより、実行されるアサーションに対してより詳細のレベルの制御が提供されます。
注意:
Oracleからの事前定義済ポリシーのアサーションを無効化することはできません。これらのポリシーは、読取り専用であり、変更できません。事前定義済ポリシーのアサーションを無効化するには、そのクローンを作成してからクローン・バージョンを編集する必要があります。
たとえば、読取り専用の事前定義済Webサービス・セキュリティ・ポリシーのいずれかに基づいたポリシーを作成した場合、プライマリ・セキュリティ・アサーションが実行される前後にSOAPメッセージ全体を取得するために、セキュリティ・ログ・アサーション・テンプレート(oracle/security_log_template
)のインスタンスが含まれます。デフォルトでは、ロギング・アサーションは実行されません。SOAPメッセージがメッセージ・ログに記録されるようにするには、有効にする必要があります。ロギング・アサーションは、デバッグおよび監査にのみ有効化することをお薦めします。ロギングの詳細は、『Webサービスの管理』のログを使用した問題の診断に関する項を参照してください。
ポリシー内の1つ以上のアサーションを有効または無効にするには、次の手順を実行します。
6.6 ポリシーの使用状況分析
この項で説明されているポリシーの使用状況機能では、データベース・ベースのOWSMリポジトリを使用する必要があります。データベース・ベースのリポジトリを使用していない場合は、ポリシーの使用状況に関する情報は利用できません。
ポリシーはドメイン・レベルで作成および管理されます。ポリシーを一元管理することにより、ポリシーを再利用し、複数のポリシー・サブジェクトに添付できるようになります。ポリシーの変更(ポリシーの編集または削除など)は、ポリシーが添付されているすべてのポリシー・サブジェクトに影響します。そのため、ポリシーを変更する前に使用状況分析を行い、どのサブジェクトで特定のポリシーが使用されているかを確認することをお薦めします。
注意:
使用状況分析では、どのポリシー・サブジェクトに影響があるかが識別されるのみで、変更の影響は明確になりません。各ポリシー・サブジェクトで変更内容を評価し、続行するかどうかを決定する必要があります。
使用状況分析を実行するには、次の手順を実行します。
次のことに注意してください。
-
ポリシーの使用状況数には、有効化されたポリシー参照と無効化されたポリシー参照の両方が含まれます。ポリシー参照の無効化の詳細は、「Fusion Middleware Controlを使用した直接アタッチされたポリシーの有効化または無効化」および「すべてのポリシー・サブジェクトに対するポリシーの有効化または無効化」を参照してください。
-
正確なポリシー使用状況数を表示するには、ADF DCクライアントを起動する必要があります。
6.7 ポリシー・アサーションの通知について
WSDLファイル内のポリシー・アサーションの通知を有効にできます。
次のいずれかのタスクを実行する際、WSDLファイル内でポリシー・アサーションの通知を有効にするには、図6-8に示すように、「アサーション」タブの「通知済」オプションを選択します。
-
アサーション・テンプレートの作成または編集。「Webサービス・ポリシーの作成および編集」を参照してください。
-
ポリシーへのアサーションまたはORグループの追加。次を参照してください:
注意:
WADLファイルでのポリシー・アサーションの通知はサポートされていません。関連づけられたポリシーがRESTful Webサービスにアタッチされている場合は、「通知済」オプションは効果がありません。
6.8 WS-PolicyおよびWS-SecurityPolicyのバージョンの通知について
標準WSDL(?wsdl
)ファイルの場合、WS-PolicyおよびWS-SecurityPolicyで異なるバージョンの組合せをパブリッシュできます。
たとえば、http://localhost:8080/abc?wsdl&wsp=1.5&wssp=1.2は、次のポリシー・バージョンがパブリッシュされたWSDLが返されます: WS-Policy 1.5およびWS-SecurityPolicy 1.2。
注意:
Oracle WSDL(?orawsdl)の場合、WS-PolicyおよびWS-SecurityPolicyで異なるバージョンの組合せを通知できません。?orawsdlの場合、ポリシーは次のバージョンのみでアドバタイズされます: WS-Policy 1.2およびWS-SecurityPolicy 1.1 (Oracle拡張機能付き)。
表6-1は、有効なバージョンの組合せをリストしています。
表6-1 ポリシー通知
バージョンの組合せ | 説明 |
---|---|
?wsdl |
WS-Policy 1.2およびWS-SecurityPolicy 1.1 |
?wsdl&wsp=1.5 |
WS-Policyバージョン1.5およびWS-SecurityPolicy 1.3 |
?wsdl&wssp=1.2 |
WS-Policyバージョン1.5およびWS-SecurityPolicy 1.2 |
?wsdl&wssp=1.3 |
WS-Policyバージョン1.5およびWS-SecurityPolicy 1.3 |
?wsdl&wsp=1.5&wssp=1.2 |
WS-Policy 1.5およびWS-SecurityPolicy 1.2 |
?wsdl&wsp=1.5&wssp=1.3 |
WS-Policy 1.5およびWS-SecurityPolicy 1.3 |
?wsdl&wsp=1.2&wssp=1.2 |
WS-Policy 1.2およびWS-SecurityPolicy 1.2 |