プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理
12c (12.2.1.2)
E82680-02
目次へ移動
目次

前
次

16 Oracle Web Services Managerでの問題の診断

Oracle Web Services Manager (OWSM)を使用して、一般的な問題(鍵と資格証明、証明書、ポリシー・アクセス、アサーション、その他のセキュリティの問題など)を診断および修正できます。WLSTを使用して問題を診断することもできます。

トピック:

16.1 OWSMポリシー・マネージャのページを使用したポリシー・マネージャの問題の診断

OWSMポリシー・マネージャはすべてのOWSMポリシーを管理しており、OWSMポリシー・フレームワークを使用するためには、稼働している必要があります。Oracle Enterprise Manager Fusion Middleware ControlのOWSMポリシー・マネージャのページで、ポリシー・マネージャの現在の状態を確認し、そのレスポンス時間、負荷およびその他のデータを確認できます。

OWSMポリシー・マネージャが使用できない場合、ADFおよびWebCenterのサービスとクライアントのポリシー・アタッチメントに加えた変更はOWSMリポジトリに保存されません。

OWSMポリシー・マネージャのページを表示するには:

  1. ターゲット・ナビゲーション・ペインで、「アプリケーションのデプロイ」を開きます。
  2. 「アプリケーションのデプロイ」の下にある「内部アプリケーション」を開きます。
  3. 「wsm-pm」を開き、「wsm-pm」アプリケーションを選択します。

    OWSMポリシー・マネージャのホームページが表示されます。

    図16-1 OWSMポリシー・マネージャのページ



ポリシー・マネージャのページでは、次のタスクを1つ以上実行できます。

  • ページの「一般」領域で、ポリシー・マネージャの現在の状態を確認し、デプロイ先のサーバーを識別します。

  • ページの「レスポンスと負荷」セクションで、レスポンス時間と現在の負荷を表示します。この情報を表形式で表示するには、「表ビュー」をクリックします。

  • ページの「エントリ・ポイント」セクションで、ポリシー・マネージャへの接続を検証します。これを行うには、「Webモジュール」表内で、wsm-pmに対応する「テスト・ポイント」のURLをクリックします。ポリシー・マネージャの検証ページで、ポリシー・マネージャの検証をクリックします。

注意:

Webブラウザで次のURLを使用してバリデータ・ページにアクセスすることもできます。

http://host:port/wsm-pm/validator

このURLで、hostおよびportは、ポリシー・マネージャが実行されているホストおよびポート番号を表します。

ポリシー・マネージャへの接続に失敗すると、エラー・メッセージが表示されます。ポリシー・マネージャへの接続が成功すると、ポリシー・マネージャのバリデータ・ページには次の情報が表示されます。

  • ポリシー・マネージャのステータス。

  • OWSMリポジトリ内のOWSMポリシーの合計数。

  • OWSMリポジトリ内のすべてのOWSMポリシーの名前、最新バージョンおよび説明。

  • リポジトリ内のOWSMアサーション・テンプレートの合計数。

  • OWSMリポジトリ内のすべてのOWSMアサーション・テンプレートの名前、最新バージョンおよび説明。

  • リポジトリの作成日およびビルド・ラベル。

OWSMリポジトリの詳細は、Oracle Web Services Managerリポジトリの管理を参照してください。

16.2 Oracle Web Services Managerでの一般的な問題の概要

OWSMを使用しているときに一般的な問題が発生することがあります。この項では、それらの問題および考えられる解決策について説明します。

次のトピックが含まれています:

16.2.1 ポリシー・マネージャの一般的な接続の問題の概要

ポリシー・マネージャの一般的な接続の問題が発生することがあります。この項は、それらの問題を診断および解決するために役立ちます。

次のトピックが含まれています:

16.2.1.1 ポリシー・マネージャの一般的な接続の問題の理解

この項では、ポリシー・マネージャの一般的な接続の問題について説明します。

ポリシー・マネージャへの接続が失敗すると、次の1つ以上のエラー・メッセージが表示されます。

  • WSM-06157: リポジトリ・データベースが正しく構成されていないか稼働していません。

  • WSM-06160: ポリシー・マネージャ・アプリケーションがデプロイされていないか稼働していません。

  • WSM-06161: ポリシー・マネージャ・アプリケーションがデプロイされていません。

  • WSM-06162: ポリシー・マネージャが稼働していないか正しく構成されていません。

  • WSM-06159: 資格証明の問題が原因でポリシー・マネージャに接続できません。

  • WSM-02120 : ポリシー・アクセス・サービスに接続できません。

ポリシー・マネージャへの接続の問題は、一般的に次の原因によって発生します。

  • ポリシー・マネージャが停止しています。

    ポリシー・マネージャが停止しているかどうかは、次のようにして判断できます。

    • OWSMポリシー・マネージャのページを使用したポリシー・マネージャの問題の診断に示されている、OWSMポリシー・マネージャのホーム・ページの「一般」領域で、ポリシー・マネージャの状態がShutdownとして表示されます。

    • 図16-2に示されているように、Fusion Middleware Controlのドメインのホームページ上のwsm-pm内部アプリケーションの状態が「停止中」です。ドメインのホーム・ページにアクセスするには、ページの左隅にある「WebLogicドメイン」メニューから「ホーム」を選択します。

      図16-2 OWSMポリシー・マネージャの停止(「ファーム」ページ)

      図16-2の説明が続きます
      「図16-2 OWSMポリシー・マネージャの停止(「ファーム」ページ)」の説明
    • Fusion Middleware ControlでOWSMのポリシー管理ページへのアクセスを試みると、エラー・ダイアログ・ボックスが表示されます。このエラー情報は、『Webサービスの管理』のサンプル・ログの確認に関する項に記載されているように、診断ログ・ファイルにも書き込まれます。

  • ドメインがSSLを使用した自動検出を使用するように構成されています。

    OWSMは自動検出機能をサポートしており、この機能を使用してOWSMポリシー・マネージャを検索し、接続します。ドメインがSSLを使用した自動検出を使用するように構成されている場合、自動検出ロジックでは、SSL対応サーバーへの検出を常に試みます。安全な接続を保持するために、自動検出ロジックは、SSL対応サーバーが停止中であっても、非SSLサーバー上のポリシー・マネージャへの接続は試みません。したがって、稼働中のポリシー・マネージャがあっても、それがSSLに対応していないサーバーで稼働している場合は無視され、エラー・メッセージが表示されます。

  • ポリシー・マネージャへのアクセスで必要な資格証明が無効または認可されません。

  • リポジトリが正しく構成されていない可能性があります。

  • ポリシー・マネージャおよびエージェントのクロスコンポーネント・ワイヤリングが最新でない可能性があります。

16.2.1.2 ポリシー・マネージャの接続の問題の解決

この項の情報を使用すると、ポリシー・マネージャの最も一般的な接続の問題を修正できます。

次の情報を使用して問題を修正します。

  • ポリシー・マネージャが停止している場合は、『Oracle Fusion Middlewareの管理』のアプリケーションの起動と停止に関する項で説明されているように、wsm-pmアプリケーションを再起動します。

  • ドメインがSSLを使用した自動検出を使用するように構成されている場合:

  • ポリシー・マネージャへのアクセスを試みると資格証明の問題が発生する場合は、ユーザー・アカウントを確認します。デフォルトでは、OWSMランタイムはOracleSystemUserアカウントを使用します。デフォルトのユーザー・アカウントを使用していない場合は、「デフォルト・ユーザーの変更について」の説明に従って、構成を変更する必要があります。

  • リポジトリ構成に関する問題がある場合:

    • データベースとMDSスキーマが正しくセットアップされていることを確認します。この構成は、インストール・プロセスの一環として行われます。詳細は、『Oracle Fusion Middleware Infrastructureのインストールと構成』のデータベース・スキーマの作成に関する項を参照してください。

    • JDBC構成が正しいことを確認します。JDBC構成は、Fusion Middleware構成ウィザードを使用してドメインを作成するときに定義されます。詳細は、『Oracle Fusion Middleware Infrastructureのインストールと構成』のWebLogicドメインの構成に関する項を参照してください。

  • クロスコンポーネント・ワイヤリングに関する問題がある場合:

    • OWSMポリシー・マネージャに対応するサービス表エントリに正しいURLが含まれていることを確認します。

    • OWSMエージェント・フックとOWSMポリシー・マネージャの間のワイヤリングがwired状態であることを確認します。

詳細は、以下のトピックを参照してください。

16.2.2 アプリケーションがWebサービスを呼び出した後のキーストアまたは資格証明ストアのエラーの概要

アプリケーションがWebサービスを呼び出した後にキーストアまたは資格証明ストアのエラーを引き起こす一般的な問題を診断および解決するための情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.2.1 キーストアまたは資格証明ストアの一般的なエラーの理解

この項では、キーストアまたは資格証明ストアの一般的な問題について説明します。

アプリケーションがWebサービスを呼び出した後に、キーストアまたは資格証明ストアの問題が発生した場合は、次のようなエラー・メッセージが表示されます。

  • WSM-00056: キー<alias_name>は取得されません

  • WSM-00256: プロパティ"Keystore Sign Alias"は設定されていません

  • WSM-0024: KSSキーストアからキーを読み取れません

  • WSM-00340: KSSキーストアにキーが存在しません

キーストアおよび資格証明ストアのエラーは、一般的に次の問題によって発生します。

  • JKSキーストアの場合:

    • OWSMキーストア構成内の署名鍵または暗号化鍵の別名が、OWSMキーストアに存在しません。

    • 署名鍵、暗号化鍵またはOWSMキーストア・パスワードが、OWSMのキーストア・ファイルとキーストア構成の間で同期していません。つまり、少なくとも1つのパスワードの値が両方の場所で一致していません。

    • 署名鍵が設定されていません。

    • 資格証明ストアに欠落しているキーがあります。

  • KSSキーストアの場合:

    • キーストアが初期化されていないか、必要な権限が付与されていません。

    • キーストアにキーが存在しません。ドメイン構成の「メッセージ・セキュリティ」画面に入力したキーが、キーストア内で見つかりません。

16.2.2.2 キーストアおよび資格証明ストアの問題の解決

OWSMキーストア構成内の署名鍵および暗号化鍵の別名が、OWSMキーストアに存在することを確認できます。パスワードが同期されていることを確認することもできます。

次の情報を使用して、キーストアおよび資格証明ストアの問題を修正できます。

  • OWSMキーストア構成内の署名鍵および暗号化鍵の別名が、OWSMキーストア・ファイルに存在することを次のように確認します。

    1. Fusion Middleware Controlを使用して、「OWSMキーストアの構成」の手順を実行して、OWSMキーストア構成内の署名鍵および暗号化鍵の別名を識別します

    2. 手順1で識別した別名がOWSMキーストア・ファイルに存在することを確認します。

      JKSキーストアの場合:

      「秘密鍵の生成およびJavaキーストアの作成」の手順4に従って、OWSMキーストア・ファイルでkeytool -listコマンドを使用します。keytoolユーティリティの使用方法の詳細は、次のURLにあるドキュメントkeytool - 鍵および証明書の管理ツールを参照してください。

      http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

      注意:

      前述のURLでドキュメントが見つからない場合は、Java SEテクニカル・ドキュメントの検索Webページで検索してアクセスできます。

      http://download.oracle.com/javase/search.html

      • 各別名が、資格証明ストア内のキーストア・ファイルとOWSMキーストア構成で同期していることを確認します。同期していない場合は、「OWSMキーストアの構成」の手順に従って、OWSMキーストア構成内の別名を編集できます。OWSMキーストア・ファイル内の別名は、keytool -changealiasコマンドを使用して編集できます。

        注意:

        別名を編集する前に、この操作が他のWebサービスに影響を及ぼさないことを確認します。

      • 署名鍵または暗号化鍵の別名がOWSMキーストア・ファイルに存在しない場合は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従って追加します。

      KSSキーストアの場合:

      Fusion Middleware Controlを使用して、キーストアの内容を管理し、別名が一致することを確認します。詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のキーストア・サービスを使用したキーと証明書の管理に関する項を参照してください。

  • パスワードが同期されていることを次のように確認します。

    JKSキーストアの場合、署名鍵、暗号化鍵およびOWSMキーストア・ファイルのパスワードが、OWSMのキーストア・ファイルとキーストア構成の間でそれぞれ同期していることを確認するには、次の手順に従います。

    1. keytoolを使用して、OWSMキーストア・ファイル内のパスワードを再設定します。パスワードは表示されないため、両方の場所でそれぞれ同じパスワード値を設定するには、パスワードの再設定が唯一の方法です。

      • keytool -storepasswdコマンドを使用して、OWSMキーストア・ファイルのパスワードを再設定します。

      • keytool -keypasswdコマンドを使用して、署名鍵パスワードおよび暗号化鍵パスワードを再設定します。

    2. Fusion Middleware Controlを使用して、「OWSMキーストアの構成」の説明に従って、OWSMキーストア構成内のパスワードを手順1で設定した値にそれぞれ再設定します

16.2.3 アプリケーションがWebサービスを呼び出した後の信頼証明書エラーの概要

アプリケーションがWebサービスを呼び出した後に発生する信頼証明書エラーを診断および解決するために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.3.1 信頼証明書エラーの理解

通常、信頼証明書エラーは、Webサービスがその証明書をWeb Services Description Language (WSDL)で通知し、クライアントがその証明書または発行者を信頼するよう適切に構成されていない可能性がある場合に発生します。

アプリケーションがWebサービスを呼び出した後に、信頼証明書の問題が発生した場合は、次のエラー・メッセージが表示されます。

WSM-00138: 証明書へのパスは例外のため無効です

16.2.3.2 信頼証明書の問題の解決

クライアントの信頼証明書の構成およびkeystore.recipient.aliasプロパティの値を確認することによって、信頼証明書の問題を解決できます。

WSDLで通知されるWebサービスの証明書または発行者を信頼するようクライアントが構成されていることを確認するには:

  1. クライアント・キーストアに、Webサービスの証明書またはその発行者の証明書があることを確認します。

    KSSキーストアの場合は、Fusion Middleware Controlを使用して、クライアント・キーストア内の証明書を識別します。詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のキーストア・サービスを使用したキーと証明書の管理に関する項を参照してください。

    JKSキーストアの場合は、keytool –listコマンドを使用して、クライアント・キーストア内の証明書を識別します。いずれかの証明書がクライアント・キーストアに不足している場合は、keytool –importcertコマンドを使用してそれを追加します。keytoolの使用の詳細は、Java SEテクニカル・ドキュメントWebサイトにあるkeytool - キーおよび証明書管理ツールのドキュメントを参照してください。このドキュメントには次のURLでアクセスできます。

    http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

  2. 証明書がサービスのWSDLでパブリッシュされていない場合は、クライアント・ポリシーのオーバーライド・プロパティkeystore.recipient.aliasの値が、OWSMキーストア・ファイル内の証明書の別名に一致することを確認します。

    詳細は、「ポリシー構成のオーバーライドの概要」を参照してください。

16.2.4 アイデンティティ伝搬時のSAMLアサーション・エラーのトラブルシューティングについて

アイデンティティ伝搬時に発生したSAMLアサーションの問題をトラブルシューティングするために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.4.1 SAMLアサーションの一般的な問題の理解

異なるアプリケーションを呼び出すことによって、アプリケーションがユーザーのアイデンティティを伝搬しようとしたときに問題が発生した場合は、InvalidSecurityTokenFailedAuthenticationおよびSAML assertion issuer関連のエラーが表示されます。

SAMLアサーションのエラーは、一般的に次の問題によって発生します。

  • SAMLトークンのSAML発行者名が構成されていないか、構成が正しくありません。

  • subject.precedence構成オーバーライドの設定が正しくありません。

16.2.4.2 SAMLアサーションの問題のトラブルシューティング

SAML発行者名の構成およびsubject.precedence構成のオーバーライドに関する問題をトラブルシューティングできます。

次の情報を使用すると、最も一般的なポリシー・マネージャの接続の問題をトラブルシューティングできます。

  • SAML発行者名の構成のトラブルシューティングを行うには:

    クライアントが使用しているSAML発行者名が、Oracle WebLogic Serverドメイン内で構成されている発行者に含まれていることを確認します。これを行うには、「Fusion Middleware Controlを使用した信頼できるSAML発行者およびDNリスト」に記載されている手順を実行します。

    クライアントが使用しているSAML発行者名が、Oracle WebLogic Serverドメイン内の発行者として構成されていない場合、saml.issuer.nameオーバーライドを、ドメイン内で構成されている発行者の1つに更新することによって、クライアントの発行者名を変更することをお薦めします。

    クライアントの発行者名を変更できない場合は、「Fusion Middleware Controlを使用した信頼できるSAML発行者およびDNリスト」の手順を実行することによって、発行者名をOracle WebLogic Serverドメインに追加できます。

  • subject.precedence構成オーバーライドのトラブルシューティングを行うには:

    1. 現在のクライアント・ポリシー内のsubject.precedenceオーバーライド値をfalseに設定して、アイデンティティを異なるユーザーに変更します。デフォルトでは、subject.precedenceオーバーライドはtrueに設定されます。

    2. サービスに送信するユーザーのユーザー名およびパスワードが含まれるクライアント・ポリシーで、資格証明ストア・フレームワークの適切なキー・オーバーライドを設定します。このユーザーのエントリが資格証明ストア・フレームワークに存在しない場合は、それを追加する必要があります。詳細は、資格証明ストアを構成するための鍵およびユーザー資格証明の追加を参照してください。

    3. 「アイデンティティ切替えのためのSAML Webサービス・クライアントの構成について」の手順を実行することによって、クライアント・アプリケーションに対して適切なWebサービス・アイデンティティ権限が設定されていることを確認します。

16.2.5 アプリケーションがWebサービスを呼び出した後のポリシー・アクセスの問題の概要

アプリケーションがWebサービスを呼び出した後に発生したポリシー・アクセス・エラーの原因である問題を診断および解決するために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.5.1 ポリシー・アクセスの一般的な問題の理解

アプリケーションがWebサービスを呼び出した後に発生するポリシー・アクセスの問題は、通常、ポリシー・マネージャが停止している、ポリシーがリポジトリに存在しないなどの問題によって発生します。

アプリケーションがWebサービスを呼び出そうとした後にポリシー・アクセスの問題が発生した場合は、次のようなエラー・メッセージが表示されます。

  • WSM-06156: ポリシーURIが欠落しているか、空か、無効な文字が含まれています。

  • WSM-06158: 参照されたポリシーがリポジトリ内にありません。

  • WSM-02017: ドキュメントはリポジトリに見つかりませんでした。

アプリケーションがWebサービスを呼び出した後に発生するポリシー・アクセスの問題は、通常、次の問題によって発生します。

  • ポリシー・マネージャが停止しています。

  • ポリシーURIが欠落しているか、ポリシー名のスペルミスです。

  • ポリシーがリポジトリ内にありません。

  • キャッシュの遅延が原因で、ポリシー・アタッチメントが有効ではありません。

16.2.5.2 ポリシー・アクセスの一般的な問題の解決

この項の手順を使用すると、ポリシー・アクセスの一般的な問題を解決できます。

次の情報を使用すると、ポリシー・アクセスの最も一般的な問題を修正できます。

  1. OWSMポリシー・マネージャのページを使用したポリシー・マネージャの問題の診断およびポリシー・マネージャの一般的な接続の問題の概要の説明に従って、ポリシー・マネージャが稼働していることを確認します。
  2. mds-owsmデータソース接続がアクセス可能で、使用可能であることを確認します。詳細は、『Oracle Fusion Middlewareの管理』のデータ・ソースの理解と管理に関する項を参照してください。
  3. ポリシー・マネージャのバリデータ・ページを使用してリポジトリのコンテンツを表示することによって、OWSMリポジトリにポリシーがあることを確認します。バリデータ・ページへのアクセスおよびリポジトリ・コンテンツの表示の詳細は、OWSMポリシー・マネージャのページを使用したポリシー・マネージャの問題の診断を参照してください。
  4. リポジトリにポリシーがある場合、ポリシーURIがリポジトリ内のポリシーURIと一致することを確認します。
  5. ポリシーがOWSMリポジトリにない場合、次のいずれかの操作を行います。
    • 事前定義済ポリシーの場合:

      • upgradeWSMRepository()コマンドを使用して、リポジトリが最新のすべての事前定義済ポリシーでアップグレードされていることを確認します。詳細は、『インフラストラクチャ・コンポーネントのためのWLSTコマンド・リファレンス』のupgradeWSMRepositoryに関する項を参照してください。

      • 「OWSMリポジトリの再構築」の説明に従って、resetWSMRepositoryコマンドを使用してリポジトリのコンテンツをリセットします。

    • カスタム・ポリシーの場合:

  6. ユーザーが、適切な権限が付与されたロールに属することを確認します。ロールまたは権限を変更するには、「ユーザーのグループまたはロールの変更」を参照してください。
  7. ポリシー・アクセッサおよびキャッシュ遅延を確認します。

    ポリシー・アタッチメントが有効になるまでにかかる時間は、OWSMポリシー・アクセッサおよびポリシー・キャッシュのプロパティ設定で決まります。デフォルトでは、この遅延は最大で11分です。遅延を縮小するには、必要に応じて、次のキャッシュ・プロパティ設定を調整できます。

    • 「初期キャッシュ・リフレッシュ」、デフォルトは600000ミリ秒(10分)

    • 「キャッシュ・リフレッシュ時間」、デフォルトは600000ミリ秒(10分)

    これらのプロパティの調整の詳細は、次の各項を参照してください。

16.2.6 資格証明ストアのユーザーへのアクセスに関する問題の概要

OWSMが資格証明ストアでユーザーを見つけることを妨げている問題を診断および解決するために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.6.1 ユーザー・アクセスの一般的な問題の理解

通常、ユーザー・アクセスの問題は、OWSMによって使用されるマップにユーザーがリストされていない、エントリのCSFキーが資格証明ストアに存在しない、資格証明マップoracle.wsm.securityが資格証明ストアに存在しないなどの問題によって発生します。

OWSMが資格証明ストアのユーザーにアクセスできない場合は、次のようなエラーが表示されます。

WSM-00015: The user name is missing

ユーザー・アクセスの問題は、一般的に次の問題によって発生します。

  • 資格証明マップoracle.wsm.securityが資格証明ストアに存在しません。

  • OWSMが使用するマップにユーザーがリストされていません。

  • エントリのCSFキーが資格証明ストアに存在しません。

16.2.6.2 ユーザー・アクセスの問題の解決

資格証明マップoracle.wsm.securityが資格証明ストアに存在することを確認できます。アプリケーションが他の資格証明マップを使用している場合は、ユーザーがこのマップに複製されていることを確認します。

次の情報を使用すると、ユーザー・アクセスの一般的な問題を修正できます。

資格証明マップoracle.wsm.securityが資格証明ストアに存在することを確認します。OWSMは、この資格証明ストア・マップからのみ読み取ります。

資格証明マップoracle.wsm.securityが資格証明ストアに存在することを確認するには、資格証明ストアを構成するための鍵およびユーザー資格証明の追加の手順を参照してください。

アプリケーションがoracle.wsm.security以外の資格証明マップを使用する場合は、OWSMがアクセスする必要があるユーザーがoracle.wsm.security資格証明マップに複製されていることを確認します。

16.2.7 アプリケーションがWebサービスを呼び出した後のユーザー認可の一般的な問題の概要

アプリケーションがWebサービスを呼び出した後に発生したユーザー認可の問題の原因である問題を診断および解決するために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.7.1 ユーザー認可の一般的な問題の理解

システムがユーザーの認可に失敗すると、アクセス拒否エラーが表示されます。

エラー・メッセージは次のようになります。

java.security.AccessControlException: access denied (oracle.wsm.security.WSFunctionPermission

一般に、ユーザーの認可に失敗しても実際には問題ではなく、むしろ意図的な動作です。つまり、システムは、ユーザーが試みたアクションについて、ユーザーを認可できませんでした。

16.2.7.2 ユーザー認可の問題の解決

コール元サーバーの診断ログで認可エラーを確認して、それを解決できます。

次の手順を使用すると、このユーザー認可の問題をデバッグできます。

  1. コール元サーバーの診断ログで認証エラーを確認します。次のようなエラーが表示されます。
    2011-01-06T22:15:43.691-08:00] [SalesServer_2] [ERROR] [] [oracle.jbo.server.svc.ServicePermissionCheckInterceptor_w2f8f5_Impl] 
    [tid: [ACTIVE].ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'] 
    [userId: FMW_APPS_CRM_SELFSERVICE_ADF_APPID] 
    [ecid: 004aIPwzJDGE8TQRyaI7T00001WJ00EJ8f,0:1:3:1:11:0x5f5e189:6:1] 
    [WEBSERVICE_PORT.name: PartnerServiceSoapHttpPort] [APP: SalesApp#V2.0] 
    [J2EE_MODULE.name: partnerCenterCorePublicModel]
    [WEBSERVICE.name: PartnerService] [J2EE_APP.name: SalesApp_V2.0] 
    [URI: /partnerCenterCorePublicModel/PartnerService] [[
    java.security.AccessControlException: access denied (oracle.wsm.security.WSFunctionPermission 
    http://xmlns.oracle.com/apps/partnerMgmt/partnerCenter/PartnerService#updatePartner invoke)
                    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
                    at java.security.AccessController.checkPermission(AccessController.java:546)
                    at oracle.jbo.server.svc.ServicePermissionCheckInterceptor.checkPermission(ServicePermissionCheckInterceptor.java:103)
                    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    
  2. ログ内の次の情報に注意を払います。これらは、前述の例では太字で示されています。これが、アプリケーション用に構成したものと一致していることを確認します。ストライプ名の構成方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のサーブレット・フィルタおよびEJBインターセプタの構成に関する項を参照してください。
    • アプリケーション・ストライプ名。前述のログではSalesApp#V2.0です。

    • リソース名(このログでは、http://xmlns.oracle.com/apps/partnerMgmt/partnerCenter/PartnerService#updatePartner)およびアクション(このログではinvoke)で構成される権限付与。

    どちらの情報も、権限付与の中で正しく指定されている必要があります。詳細は、「認可権限の決定」を参照してください。

  3. アプリケーションがLDAPベースのオーセンティケータを使用しており、すべてのロールをLDAPに格納している場合は、「デフォルト・ユーザーの変更について」の説明に従って、OWSMがユーザーおよびロールにアクセスできることを確認します。

16.2.8 アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラーの概要

アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラーの原因である可能性がある問題を診断および解決するために役立つ情報が必要な場合があります。

この項では、次の項目について説明します。

16.2.8.1 タイムスタンプ・エラーまたはclockSkewエラーの原因の理解

通常、タイムスタンプの検証またはclockSkewエラーは、サーバーとクライアントのクロックが同じタイムゾーンに変更された後に、時間の差が5分を超えた場合に発生します。

アプリケーションがWebサービスを呼び出した後にタイムスタンプの問題が発生した場合は、次のようなエラーが表示されます。

WSM-00060: Error validating timestamp

この問題は、次のようなタイムスタンプ検証または時間差エラーとして出現します。

Caused By: FAULT CODE: InvalidSecurityToken FAULT MESSAGE: Found invalid condition "on or after" in SAML assertion.
Current Time:Fri Feb 11 22:16:42 IST 2011, clockSkew:300000 milli seconds, NotOnOrAfter Time:Fri Feb 11 14:21:42 IST 2011.

16.2.8.2 タイムスタンプ・エラーまたはclockSkewエラーの解決

クライアントまたはサーバーのクロックを変更して、両方を正しい時間に設定し、その差が5分以内になるようにできます。

次のいずれかの方法でクライアントまたはサーバーのクロックを変更します。

16.2.9 アプリケーションがWebサービスを呼び出した後の複数認証セキュリティ・ポリシー・エラーの概要

アプリケーションがWebサービスを呼び出した後に、複数認証セキュリティ・ポリシー・エラーが発生することがあります。この項の情報は、このエラーを診断および解決するために役立ちます。

この項では、次の項目について説明します。

16.2.9.1 一般的な複数認証セキュリティ・ポリシー・エラーの理解

通常、複数認証ポリシー・エラーは、1つ以上の認証ポリシーがサブジェクトにアタッチされている場合に発生します。2つのポリシー・セットがあり、それぞれが、Webサービスなど、同じリソース・タイプに認証ポリシーをアタッチする場合に、この状況が発生します。

たとえば、ドメインのOWSMリポジトリに2つのポリシー・セットが定義されており、一方はポリシー・スコープをDomain("domain_name")として定義し、他方はDomain ("*")として定義しているものとします。

アプリケーションがWebサービスを呼び出した後に、複数認証セキュリティ・ポリシーの問題が発生した場合は、複数ポリシー・エラー(WSM-01823)がログに表示されます。たとえば、このエラーは複数の認証ポリシーがサブジェクトに添付されている場合に発生します。

次のリストは、このシナリオの例を示しています。

wls:/base_domain/serverConfig> displayWSMPolicySet('default-domain-ws-domain_gpa')

   Policy Set Details:
   -------------------
   Display Name:                default-domain-ws-domain_gpa
   Type of Resources:   SOAP Web Service
   Scope of Resources:  DOMAIN("base_domain")
   Description:         Global policy attachments for Web Service Endpoint resources.
   Enabled:             true
   Policy Reference:    URI=oracle/wss11_saml_or_username_token_with_message_protection_service_policy, category=security, enabled=true

wls:/base_domain/serverConfig> displayWSMPolicySet('default-domain-ws-domain')

   Policy Set Details:
   -------------------
   Display Name:                default-domain-ws-domain
   Type of Resources:   SOAP Web Service
   Scope of Resources:  DOMAIN("*")
   Description:         Global policy attachments for Web Service Endpoint resources.
   Enabled:             true
   Policy Reference:    URI=oracle/wss_saml_or_username_token_service_policy, category=security, enabled=true

この例では、異なる名前の2つのポリシー・セットがあり、そこに含まれる異なる認証ポリシーがドメイン上の同じリソース・タイプを指しています。

注意:

サブジェクトにアタッチされている認証ポリシーが、構成オーバーライドを含めて、お互いの完全な複製の場合、ポリシー・アタッチメントは複製として表示され、構成は有効です。

16.2.9.2 複数認証セキュリティ・ポリシー・エラーの解決

認証ポリシーのアタッチを試みている複数のポリシー・セットがあるかどうかを確認し、それらのいずれかを削除するか、無効にすることによって、競合を解決できます。

認証ポリシーのアタッチを試みている複数のポリシー・セットがあるかどうかを確認するには、次の手順を使用します。

  1. listWSMPolicySets()コマンドを使用して、ドメイン内のポリシー・セットのリストを表示します。このコマンドの詳細は、「ポリシー・セットのリストの表示」を参照してください。
  2. detail引数をtrueに設定した状態でlistWSMPolicySubjectsコマンドを使用して、ドメイン内のすべてのアプリケーションおよびコンポジットに関するエンドポイント(ポート)とポリシーの詳細、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを表示します。

    例のシナリオで定義されているポリシー・セットを使用すると、listWSMPolicySubjects(detail=true)コマンドからの出力は、次のようになります。2つのポリシーは重複しており、それらが関連するポリシー・セットは太字のテキストで示されます。

    wls:/base_domain/serverConfig> listWSMPolicySubjects(detail=true)
     
    Application: /WLS/base_domain/jaxwsejb30ws
     
      Assembly: #jaxwsejb
     
        Subject: WS-Service({http://www.oracle.com/jaxws/tests/concrete}WsdlConcreteService#WsdlConcretePort)
     
            URI="oracle/mex_request_processing_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/mtom_encode_fault_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/max_request_size_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                    Property name="max.request.size", value="-1"
            URI="oracle/request_processing_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/soap_request_processing_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/ws_logging_level_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                    Property name="logging.level", value=""
            URI="oracle/test_page_processing_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/wsdl_request_processing_service_policy", category=wsconfig, policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                    Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
            URI="oracle/wss11_saml_or_username_token_with_message_protection_service_policy", 
    category=security, policy-status=enabled; source=global policy set "default-domain-ws-domain_gpa", scope="DOMAIN('base_domain')"; reference-status=enabled; effective=true
            URI="oracle/wss_saml_or_username_token_service_policy",
     category=security, policy-status=enabled; source=global policy set "default-domain-ws-domain", scope="DOMAIN('*')";
    reference-status=enabled; effective=true
     
            The policy subject is invalid in this context because of the following error:
                    WSM-01827 : Attaching multiple policies of category "security/authentication" is not supported. 
    Policies in list [ "oracle/wss11_saml_or_username_token_with_message_protection_service_policy" ]
     already have the category, current policy "oracle/wss_saml_or_username_token_service_policy" also has that category.
    
  3. 競合が見つかった場合は、次のいずれかを行います。

16.3 WLSTを使用したポリシー・アタッチメントに関する問題の概要

WLSTコマンドを使用して、ポリシー・アタッチメントの問題を診断します。

この項では、次の項目について説明します。

16.3.1 listWSMPolicySubjectsコマンドを使用したポリシー・アタッチメントの問題の特定の理解

直接アタッチされたポリシーと、ポリシー・セットを使用してグローバルにアタッチされたポリシーが競合しないことを確認するには、WLSTコマンドのlistWSMPolicySubjects (detail="true")を使用します。

このコマンドは、エンドポイントの構成、各エンドポイントにアタッチされた有効なポリシー・セット、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを含めて、ドメイン内のWebサービスまたはWebサービス・クライアントのリストを表示します。このコマンドの使用の詳細は、『Webサービスの管理』のWLSTを使用したドメイン内のWebサービスの表示に関する項を参照してください。

注意:

エンドポイントは、(直接またはポリシー・セットを使用して外部で)アタッチされたポリシーで認証、認可またはメッセージ保護の操作が強制される場合にセキュアであると判断されます。

ポリシー・セットを使用してグローバルにアタッチされたポリシーが構成に含まれる場合、次のコマンドを使用してポリシー・セットに関する情報を表示できます。

Fusion Middleware Controlを使用してエンドポイントで有効なポリシーを表示するには、「Fusion Middleware Controlを使用したWebサービスにアタッチされたポリシーの表示」を参照してください。

エンドポイントがセキュアで、構成が有効かどうかについての判断の詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。

16.3.2 グローバル添付ポリシーおよび直接添付ポリシーが含まれる、構成のサンプル出力の表示

listWSMPolicySubjects(detail=true)コマンドを使用して、有効な構成を表示します。グローバルにアタッチされたポリシーまたは直接アタッチされたポリシーの優先度を指定できるため(reference.priority構成オーバーライドを使用)、effectiveフィールドには、直接アタッチされたポリシーがエンドポイントで有効かどうかが示されます。

グローバルにアタッチされたポリシーおよび直接アタッチされたポリシーは太字で示されています。

注意:

エンドポイント管理を簡単にするために、エンドポイントで有効かどうかにかかわらず、すべての直接アタッチされたポリシーが出力に表示されます。対照的に、グローバルにアタッチされているポリシーは、そのエンドポイントに対して有効なもののみが表示されます。

Application: /WLS/base_domain/jaxwsejb30ws
 
  Assembly: #jaxwsejb
 
    Subject: WS-Service({http://www.oracle.com/jaxws/tests/concrete}WsdlConcreteService#WsdlConcretePort)
 
        URI="oracle/wss_saml_or_username_token_service_policy", category=security, policy-status=enabled; 
source=global policy set "default-domain-ws-domain", scope="DOMAIN('*')";
reference-status=enabled; effective=true
                Property name="reference.priority", value="10"
        URI="oracle/mex_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/mtom_encode_fault_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/max_request_size_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                Property name="max.request.size", value="-1"
        URI="oracle/request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/soap_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/ws_logging_level_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                Property name="logging.level", value=""
        URI="oracle/test_page_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/wsdl_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/wss10_saml20_token_with_message_protection_service_policy", category=security, policy-status=enabled; source=local policy set; reference-status=enabled; effective=false
                Property name="local.policy.reference.source", value="LOCAL_ATTACHMENT"
 
        The policy subject is secure in this context.

16.3.3 直接添付ポリシーのみが含まれる、有効な構成のサンプル出力の表示

listWSMPolicySubjects(detail=true)コマンドを使用して、有効な構成を表示します。

次の例は、このコマンドからのサンプル出力を示しており、直接アタッチされたポリシーが太字で表示されています。

Application: /WLS/base_domain/jaxwsejb30ws
 
  Assembly: #jaxwsejb
 
    Subject: WS-Service({http://www.oracle.com/jaxws/tests/concrete}WsdlConcreteService#WsdlConcretePort)
 
        URI="oracle/mex_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/mtom_encode_fault_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/max_request_size_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                Property name="max.request.size", value="-1"
        URI="oracle/request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/soap_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/ws_logging_level_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
                Property name="logging.level", value=""
        URI="oracle/test_page_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/wsdl_request_processing_service_policy", category=wsconfig,
 policy-status=enabled; source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="IMPLIED_FEATURE"
        URI="oracle/wss10_saml20_token_with_message_protection_service_policy", category=security, policy-status=enabled; 
source=local policy set; reference-status=enabled; effective=true
                Property name="local.policy.reference.source", value="ANNOTATION"
 
        The policy subject is secure in this context.

16.4 WLSTを使用したドメイン構成に関する問題の診断について

WLSTコマンドを使用して、ドメインの構成の問題を診断します。

この項では、次の項目について説明します。

16.4.1 checkWSMStatusコマンドを使用したドメイン構成の問題の特定の理解

ドメインの構成に関して問題がないことを確認するには、checkWSMStatus WLSTコマンドを使用します。checkWSMStatusコマンドは、ポリシー・マネージャ(wsm-pm)、エージェント(agent)、資格証明ストアとキーストアの構成(credstore)、OAuth2の構成(oauth2)およびポリシー・マネージャの履歴(pmHistory)のステータスを戻します。コンポーネントのステータスは、まとめて確認することも、個別に確認することもできます。

このコマンドは、WSMで保護されているWebサービスのプロビジョニングの後に実行できます。最初の呼出しの後まで待機する必要はありません。

注意:

checkWSMStatusコマンドが正しく機能するためには、ポリシー・マネージャ(wsm-pm)アプリケーションがデプロイされ、実行されている必要があります。

このコマンドの引数の詳細は、インフラストラクチャ・コンポーネントのためのWLSTコマンド・リファレンスのcheckWSMStatusコマンドに関する項を参照してください。

16.4.2 ステータスを表示するcheckWSMStatusの出力の表示

checkWSMStatusコマンドは、ドメインの資格証明ストアとキー、ポリシー・マネージャおよび強制エージェントのステータスを戻します。

次の例は、ドメインbase_domainの場合でこれを示しています。

wls:/base_domain/serverConfig> checkWSMStatus(verbose='true')
Health check for server "EXAMPLESERVER":
 
Credential Store Configuration:
 
PASSED.
        Message(s):
             keystore.pass.csf.key : Property is configured and its value is "keystore-csf-key".
                 Description: The "keystore.pass.csf.key" property points to the CSF alias that is mapped to the username and password of the keystore. Only the password is used; username is redundant in the case of the keystore.
             keystore-csf-key : Credentials configured.
             keystore.sig.csf.key : Property is configured and its value is "sign-csf-key".
                 Description: The "keystore.sig.csf.key" property points to the CSF alias that is mapped to the username and password of the private key that is used for signing.
             sign-csf-key : Credentials configured.
             Sign Key : Key configured.
                 Alias - orakey
             Sign Certificate : Certificate configured.
                 Alias - CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US
                 Expiry - June 28, 2020 11:17:12 AM PDT
             keystore.enc.csf.key : Property is configured and its value is "enc-csf-key".
                 Description: The "keystore.enc.csf.key" property points to the CSF alias that is mapped to the username and password of the private key that is used for decryption.
             enc-csf-key : Credentials configured.
             Encrypt Key : Key configured.
                 Alias - orakey
             Encrypt Certificate : Certificate configured.
                 Alias - CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US
                 Expiry - June 28, 2020 11:17:12 AM PDT
 
Policy Manager:
 
 
PASSED.
        Message(s):
             OWSM Policy Manager connection state is OK.
             OWSM Policy Manager connection URL is "host.example.com:1234".
 
Enforcement Agent:
 
 
PASSED.
        Message(s):
             Enforcement is successful.
             Service URL: http://host:port/Diagnostic/DiagnosticService?wsdl

Health check status on server EXAMPLESERVER is PASSED.


Health check status for system is PASSED.

16.4.3 資格証明ストアの失敗を表示するcheckWSMStatusの出力の表示

checkWSMStatusコマンドを使用して、資格証明ストアの失敗を表示できます。

次の例では、checkWSMStatusコマンドは、キーkeystore-csf-keyが欠如しているため、資格証明ストアの失敗を戻します。

wls:/base_domain/serverConfig> checkWSMStatus('credstore',target='EXAMPLESERVER')
 
Health check for server "EXAMPLESERVER":

Credential Store Configuration:

FAILED.
        Message(s):
             keystore.pass.csf.key : Property is configured and its value is "keystore-csf-key".
                Description: The "keystore.pass.csf.key" property points to the CSF alias that is mapped to the username and password of the keystore. Only the password is used; username is redundant in the case of the keystore.
             keystore-csf-key : Credentials configured.
             keystore.sig.csf.key : Property is configured and its value is "sign-csf-key".
                Description: The "keystore.sig.csf.key" property points to the CSF alias that is mapped to the username and password of the private key that is used for signing.
             sign-csf-key : Credentials configured.
             Sign Key : Key not configured.
             oracle.wsm.security.SecurityException: WSM-00111 : Keystore is not properly configured. Check your keystore configurations.
Credential Store Diagnostic Messages:
        Message(s):
             The alias orakey is either not present in the keystore or is configured incorrectly. Check the contents of the keystore and the password for the alias "orakey". The password of the alias "orakey" should be the same as the password stored in the csf key=sign-csf-key

NOTE:- All the above commands are based on the Domain level configurations. The actual alias may have been  overridden at runtime due to configuration override.


Health check status on server EXAMPLESERVER is FAILED.


Health check status for system is FAILED.

16.4.4 OAuth2グローバル・ポリシー・セットが構成されている場合のcheckWSMStatus出力の表示

次の例では、ws-client (SOAPクライアント)サブジェクト・タイプに対してOAuth2グローバル・ポリシー・セットが構成されています。このコマンドはドメインレベルでアタッチされたGPAのOAuth2関連の構成を確認するため、GPAを作成する手順も示します。

beginWSMSession();
createWSMPolicySet('oauthTestPolicySet','ws-client','Domain("jrfServer_domain")');
attachWSMPolicy('oracle/http_oauth2_token_client_policy');
attachWSMPolicy('oracle/oauth2_config_client_policy');
setWSMPolicyOverride('oracle/oauth2_config_client_policy','token.uri','http://slc07ehc.us.oracle.com:14100/ms_oauth/oauth2/endpoints/oauthservice/tokens');
setWSMPolicyOverride('oracle/http_oauth2_token_client_policy','oauth2.client.csf.key','basic.client.credentials');
validateWSMPolicySet();
commitWSMSession()

wls:/test_domain1/serverConfig>checkWSMStatus('oauth2')                                              

OAuth2 Client Configuration Status:

        Message(s):
             OAuth2 Client Configuration Checks for type SOAP Client: PASSED
             Successful OAuth Configurations for Client Type(s): WS_CLIENT
							Health check status on server jrfServer_admin is PASSED.
							Health check status for system is PASSED.

16.4.5 OAuth2グローバル・ポリシー・セットが構成されていない場合のcheckWSMStatus出力の表示

次の例では、OAuth2グローバル・ポリシー・セットが構成されていません。

wls:/test_domain1/serverConfig>checkWSMStatus('oauth2')


OAuth2 Client Configuration Status:


        Message(s):
             
						No OAuth2 client policy (oauth2_config_client_policy or oauth token policy) attached in the domain for client type(s): REST_CLIENT, WS_CLIENT, SCA_REST_REFERENCE, SCA_REFERENCE
						Health check for server "jrfServer_admin":
						
						Health check status on server jrfServer_admin is FAILED.
						
						Health check status for system is FAILED.

16.5 WS-TrustユースケースでのOracle Web Services Managerの一般的な例外

この項は、エンドツーエンドのWS-Trustユースケース・シナリオで発生する可能性のあるOWSMの一般的な例外およびエラーを示しています。考えられる原因と推奨される解決策を確認できます。これを使用して、WS-TrustユースケースでのOWSMの一般的な例外を診断および解決できます。

表16-1 は、エンドツーエンドのWS-Trustユースケース・シナリオで発生する可能性のある一般的なOWSM例外およびエラーを示しています。考えられる原因と推奨される解決策も記載されています。サポートされているWS-Trustユースケースの構成方法の詳細は、『Oracle Web Services ManagerによるWebサービスの保護のユース・ケース』の次の章を参照してください。

  • 「Microsoft ADFS 2.0 STSがIP-STS、Oracle STSがRP-STSのFederationの構成」

  • 「Oracle STSがIP-STS、Microsoft ADFS 2.0 STSがRP-STSのFederationの構成」

  • 「WS-TrustとOpenSSO STSを使用したSAML HOKの構成」

  • 「WS-TrustとOpenSSO STSを使用したSAML送信者保証の構成」

  • 「WS-TrustとOpenSSO STSを使用したSAMLベアラーの構成」


表16-1 WS-Trustユースケースの一般的なOWSM例外およびエラー

例外/エラー 考えられる原因 解決策

WSM-00015: ユーザー名が見つかりません

  1. STS発行トークンのクライアント・ポリシーでsts.auth.user.csf.key構成プロパティがオーバーライドされていない可能性があります。

  2. このプロパティがオーバーライドされている場合、資格証明ストア内でCSFキーが使用可能でないか、オーバーライドで正しい値が指定されていない可能性があります。

STS発行トークンのクライアント・ポリシーのsts.auth.user.csf.keyプロパティを、資格証明ストアの正しい値でオーバーライドしてください。

javax.net.ssl.SSLHandshakeException: PKIXパスの検証に失敗しました: java.security.cert.CertPathValidatorException: 署名チェックが失敗しました

SSLチャネルを介してサービスと通信する場合、そのサービスの有効なSSL証明書が、環境で使用されているJREディストリビューションの信用できるキーストア内で使用可能になっている必要があります。ほとんどの場合、SSL証明書は次のディレクトリ内にあります。

JAVA_HOME/jre/lib/security/cacerts

この例外の原因として、次のいずれかが考えられます。

  • サービスのSSL証明書が信頼できるキーストア内に見つかりませんでした。

  • 信頼できるキーストアに存在するSSL証明書の有効期限が切れています。

サービスの有効なSSL証明書がJAVA_HOME/jre/lib/security/cacertsの信頼されたキーストアにインポート済であることを確認してください。詳細は、「SSLに関するキーストアの構成について」を参照してください。

WSM-00323: WSDLから取得したSTS ISSUER_ADDRESSがNULLです。ローカルSTS構成も使用できません。

この例外は、クライアントとサービスのどちらにもSTS信頼構成ポリシーが添付されていないことが原因で発生します。単純なWS-Trustユースケースでは、STS信頼構成ポリシーをクライアント・アプリケーションかサービス・アプリケーションのどちらかに添付する必要があります。ポリシーが添付されていないため、クライアントは、SAMLトークンを取得するためにどのSTSと通信するかを判断できません。

構成に応じて、STS信頼構成ポリシーをクライアント・アプリケーションまたはサービス・アプリケーションに添付します。詳細は、「WS-Trustの構成について」を参照してください。

FailedAuthentication: セキュリティ・トークンを認証できません: リクエスト取得時エラー: oracle.wsm.security.SecurityException: WSM-00062: 署名に使用された証明書のパスが無効です。

Webサービス・プロバイダまたはリライイング・パーティが、受信SAMLトークンの発行者の署名を検証できません。

発行者の公開鍵または証明書を、サービスが使用しているJKS/KSSキーストアにインポートしたことを確認してください。

手順の詳細は、「メッセージ保護に関するキーストアの構成の概要」を参照してください。

InvalidSecurityToken: セキュリティ・トークンが有効ではありません。SAMLアサーション発行者名が無効です。

WSM-00376: SAMLトークンの認証が発行者"<発行者名>"について失敗しました。

リライイング・パーティ・サービスがデプロイされているドメイン内の信頼できる発行者リストでSAMLアサーション発行者名が構成されていません。

サービスが実行されているドメイン内の信頼できる発行者のリストに発行者を追加します。

詳細な手順は、次を参照してください。

WSM-00231: STS <STS WSDL URI>、ポート名<STSポート名>のクライアント準拠ポリシーが見つかりません

サード・パーティ製のSTSサーバーを保護しているポリシーと互換性のあるクライアント・ポリシーがOWSMに存在しない場合、この例外が発生する可能性があります。

クライアントが通信を試みているSTSエンドポイントがセキュリティ・ポリシーで保護されています。Oracle STSでは、互換性のあるクライアントおよびサービス・ポリシーを備えたOWSMを使用しています。この場合、クライアントは対応するクライアント・ポリシーを問題なく検出できます。

OWSM信頼クライアントは、ほとんどの一般的なSTSサーバーとテストされているため、この例外が発生する可能性は低いです。

この例外がスローされた場合の回避策として、oracle/sts_trust_config_client_policyの新規バージョンまたはクローニング済バージョンをクライアント側に添付して、STSとの通信に使用されるクライアント・ポリシーを使用してこれを構成する方法があります。詳細は、「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」を参照してください。