16 Oracle Web Services Managerでの問題の診断
トピック:
16.1 OWSMポリシー・マネージャのページを使用したポリシー・マネージャの問題の診断
OWSMポリシー・マネージャはすべてのOWSMポリシーを管理しており、OWSMポリシー・フレームワークを使用するためには、稼働している必要があります。Oracle Enterprise Manager Fusion Middleware ControlのOWSMポリシー・マネージャのページで、ポリシー・マネージャの現在の状態を確認し、そのレスポンス時間、負荷およびその他のデータを確認できます。
OWSMポリシー・マネージャが使用できない場合、ADFおよびWebCenterのサービスとクライアントのポリシー・アタッチメントに加えた変更はOWSMリポジトリに保存されません。
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ドメイン」メニューから「ホーム」を選択します。 -
Fusion Middleware ControlでOWSMのポリシー管理ページへのアクセスを試みると、エラー・ダイアログ・ボックスが表示されます。このエラー情報は、『Webサービスの管理』のサンプル・ログの確認に関する項に記載されているように、診断ログ・ファイルにも書き込まれます。
-
-
ドメインがSSLを使用した自動検出を使用するように構成されています。
OWSMは自動検出機能をサポートしており、この機能を使用してOWSMポリシー・マネージャを検索し、接続します。ドメインがSSLを使用した自動検出を使用するように構成されている場合、自動検出ロジックでは、SSL対応サーバーへの検出を常に試みます。安全な接続を保持するために、自動検出ロジックは、SSL対応サーバーが停止中であっても、非SSLサーバー上のポリシー・マネージャへの接続は試みません。したがって、稼働中のポリシー・マネージャがあっても、それがSSLに対応していないサーバーで稼働している場合は無視され、エラー・メッセージが表示されます。
-
ポリシー・マネージャへのアクセスで必要な資格証明が無効または認可されません。
-
リポジトリが正しく構成されていない可能性があります。
-
ポリシー・マネージャおよびエージェントのクロスコンポーネント・ワイヤリングが最新でない可能性があります。
16.2.1.2 ポリシー・マネージャの接続の問題の解決
次の情報を使用すると、最も一般的なポリシー・マネージャの接続の問題を修正できます。
-
ポリシー・マネージャが停止している場合は、『Oracle Fusion Middlewareの管理』のアプリケーションの起動と停止に関する項で説明されているように、wsm-pmアプリケーションを再起動します。
-
ドメインがSSLを使用した自動検出を使用するように構成されている場合:
-
wsm-pmポリシー・マネージャ・アプリケーションのターゲットがSSLサーバーであることを確認します。Oracle WebLogic Server管理コンソール・オンライン・ヘルプのエンタープライズ・アプリケーションのサーバーに対するターゲット指定に関する項に従って、WebLogic Server管理コンソールを使用します。
-
SSLが適切に構成されており、SSL証明書の問題がないことを確認します。。詳細は、「SSLに関するキーストアの構成について」を参照してください。
-
SSL対応サーバーが停止している場合は、Oracle Fusion Middlewareの管理のOracle Fusion Middlewareの開始と停止に関する項に従って、このサーバーとポリシー・マネージャ・アプリケーションを再起動します。
-
サービス表およびコンポーネント構成がSSL用に正しく構成されていることを確認します。詳細は、「ポリシー・マネージャの自動検出のためのクロス・コンポーネント・ワイヤリング」を参照してください。
-
ポリシー・マネージャを非SSLサーバーで使用するには、自動検出構成を変更します。詳細は、Fusion Middleware Controlを使用したポリシー・マネージャ接続の構成の理解およびWLSTを使用したポリシー・マネージャ接続の構成を参照してください。
-
-
ポリシー・マネージャへのアクセスを試みると資格証明の問題が発生する場合は、ユーザー・アカウントを確認します。デフォルトでは、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キーストア・ファイルに存在することを次のように確認します。
-
Fusion Middleware Controlを使用して、「OWSMキーストアの構成」の手順を実行して、OWSMキーストア構成内の署名鍵および暗号化鍵の別名を識別します
-
手順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ページで検索してアクセスできます。
-
各別名が、資格証明ストア内のキーストア・ファイルとOWSMキーストア構成で同期していることを確認します。同期していない場合は、「OWSMキーストアの構成」の手順に従って、OWSMキーストア構成内の別名を編集できます。OWSMキーストア・ファイル内の別名は、
keytool -changealias
コマンドを使用して編集できます。注意:
別名を編集する前に、この操作が他のWebサービスに影響を及ぼさないことを確認します。
-
署名鍵または暗号化鍵の別名がOWSMキーストア・ファイルに存在しない場合は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従って追加します。
KSSキーストアの場合:
Fusion Middleware Controlを使用して、キーストアの内容を管理し、別名が一致することを確認します。詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』のキーストア・サービスを使用したキーと証明書の管理に関する項を参照してください。
-
-
-
パスワードが同期されていることを次のように確認します。
JKSキーストアの場合、署名鍵、暗号化鍵およびOWSMキーストア・ファイルのパスワードが、OWSMのキーストア・ファイルとキーストア構成の間でそれぞれ同期していることを確認するには、次の手順に従います。
-
keytool
を使用して、OWSMキーストア・ファイル内のパスワードを再設定します。パスワードは表示されないため、両方の場所でそれぞれ同じパスワード値を設定するには、パスワードの再設定が唯一の方法です。-
keytool -storepasswd
コマンドを使用して、OWSMキーストア・ファイルのパスワードを再設定します。 -
keytool -keypasswd
コマンドを使用して、署名鍵パスワードおよび暗号化鍵パスワードを再設定します。
-
-
Fusion Middleware Controlを使用して、「OWSMキーストアの構成」の説明に従って、OWSMキーストア構成内のパスワードを手順1で設定した値にそれぞれ再設定します
-
16.2.3 アプリケーションがWebサービスを呼び出した後の信頼証明書エラーの概要
16.2.3.1 信頼証明書エラーの理解
通常、信頼証明書エラーは、Webサービスがその証明書をWeb Services Description Language (WSDL)で通知し、クライアントがその証明書または発行者を信頼するよう適切に構成されていない可能性がある場合に発生します。
アプリケーションがWebサービスを呼び出した後に、信頼証明書の問題が発生した場合は、次のエラー・メッセージが表示されます。
WSM-00138: 証明書へのパスは例外のため無効です
16.2.4 アイデンティティ伝搬時のSAMLアサーション・エラーのトラブルシューティングについて
アイデンティティ伝搬時に発生したSAMLアサーションの問題をトラブルシューティングするために役立つ情報が必要な場合があります。
トピック:
16.2.4.1 SAMLアサーションの一般的な問題の理解
異なるアプリケーションを呼び出すことによって、アプリケーションがユーザーのアイデンティティを伝搬しようとしたときに問題が発生した場合は、InvalidSecurityToken
、FailedAuthentication
およびSAML assertion issuer
関連のエラーが表示されます。
SAMLアサーションのエラーは、一般的に次の問題によって発生します。
-
SAMLトークンのSAML発行者名が構成されていないか、構成が正しくありません。
-
subject.precedence
構成オーバーライドの設定が正しくありません。
16.2.4.2 SAMLアサーションの問題のトラブルシューティング
次の情報を使用すると、最も一般的なポリシー・マネージャの接続の問題をトラブルシューティングできます。
-
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構成オーバーライドのトラブルシューティングを行うには:
-
現在のクライアント・ポリシー内の
subject.precedence
オーバーライド値をfalseに設定して、アイデンティティを異なるユーザーに変更します。デフォルトでは、subject.precedence
オーバーライドはtrueに設定されます。 -
サービスに送信するユーザーのユーザー名およびパスワードが含まれるクライアント・ポリシーで、資格証明ストア・フレームワークの適切なキー・オーバーライドを設定します。このユーザーのエントリが資格証明ストア・フレームワークに存在しない場合は、それを追加する必要があります。詳細は、資格証明ストアを構成するための鍵およびユーザー資格証明の追加を参照してください。
-
「アイデンティティ切替えのためのSAML Webサービス・クライアントの構成について」の手順を実行することによって、クライアント・アプリケーションに対して適切なWebサービス・アイデンティティ権限が設定されていることを確認します。
-
16.2.5 アプリケーションがWebサービスを呼び出した後のポリシー・アクセスの問題の概要
アプリケーションがWebサービスを呼び出した後に発生したポリシー・アクセス・エラーの原因である問題を診断および解決するために役立つ情報が必要な場合があります。
トピック:
16.2.5.1 ポリシー・アクセスの一般的な問題の理解
アプリケーションがWebサービスを呼び出そうとした後にポリシー・アクセスの問題が発生した場合は、次のようなエラー・メッセージが表示されます。
-
WSM-06156: ポリシーURIが欠落しているか、空か、無効な文字が含まれています。
-
WSM-06158: 参照されたポリシーがリポジトリ内にありません。
-
WSM-02017: ドキュメントはリポジトリに見つかりませんでした。
アプリケーションがWebサービスを呼び出した後に発生するポリシー・アクセスの問題は、通常、次の問題によって発生します。
-
ポリシー・マネージャが停止しています。
-
ポリシーURIが欠落しているか、ポリシー名のスペルミスです。
-
ポリシーがリポジトリ内にありません。
-
キャッシュの遅延が原因で、ポリシー・アタッチメントが有効ではありません。
16.2.6 資格証明ストアのユーザーへのアクセスに関する問題の概要
OWSMが資格証明ストアでユーザーを見つけることを妨げている問題を診断および解決するために役立つ情報が必要な場合があります。
トピック:
16.2.6.1 ユーザー・アクセスの一般的な問題の理解
OWSMが資格証明ストアのユーザーにアクセスできない場合は、次のようなエラーが表示されます。
WSM-00015: The user name is missing
ユーザー・アクセスの問題は、一般的に次の問題によって発生します。
-
資格証明マップ
oracle.wsm.security
が資格証明ストアに存在しません。 -
OWSMが使用するマップにユーザーがリストされていません。
-
エントリのCSFキーが資格証明ストアに存在しません。
16.2.6.2 ユーザー・アクセスの問題の解決
次の情報を使用すると、ユーザー・アクセスの一般的な問題を修正できます。
資格証明マップ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.8 アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラーの概要
アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラーの原因である可能性がある問題を診断および解決するために役立つ情報が必要な場合があります。
トピック:
16.2.8.1 タイムスタンプ・エラーまたはclockSkewエラーの原因の理解
アプリケーションが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.
この問題は、通常、サーバーとクライアントのクロックが同じタイムゾーンに変換された後、その差が5分を超えると発生します。
16.2.8.2 タイムスタンプ・エラーまたはclockSkewエラーの解決
次のいずれかの方法でクライアントまたはサーバーのクロックを変更して、両方を正しい時間に設定し、その差が5分以内になるようにします。
-
「Fusion Middleware Controlを使用したセキュリティ・ポリシー強制の構成」の説明に従って、「クロック・スキュー」を調整します。
-
システム・クロックを設定します。
-
ntpサーバーを使用して時間を維持します。
16.2.9 アプリケーションがWebサービスを呼び出した後の複数認証セキュリティ・ポリシー・エラーの概要
アプリケーションがWebサービスを呼び出した後に発生する複数認証セキュリティ・ポリシー・エラーを診断して解決できます。
トピック:
16.2.9.1 一般的な複数認証セキュリティ・ポリシー・エラーの理解
アプリケーションがWebサービスを呼び出した後に、複数認証セキュリティ・ポリシーの問題が発生した場合は、複数ポリシー・エラー(WSM-01823
)がログに表示されます。たとえば、このエラーは複数の認証ポリシーがサブジェクトに添付されている場合に発生します。
通常、複数認証ポリシー・エラーは、1つ以上の認証ポリシーがサブジェクトにアタッチされている場合に発生します。2つのポリシー・セットがあり、それぞれが、Webサービスなど、同じリソース・タイプに認証ポリシーをアタッチする場合に、この状況が発生します。たとえば、ドメインのOWSMリポジトリに2つのポリシー・セットが定義されており、一方はポリシー・スコープをDomain("domain_name")として定義し、他方はDomain ("*")として定義しているものとします。
次のリストは、このシナリオの例を示しています。
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.3 WLSTを使用したポリシー・アタッチメントに関する問題の概要
WLSTコマンドを使用して、ポリシー・アタッチメントの問題を診断します。
この項では、次の項目について説明します。
16.3.1 listWSMPolicySubjectsコマンドを使用したポリシー・アタッチメントの問題の特定の理解
直接アタッチされたポリシーと、ポリシー・セットを使用してグローバルにアタッチされたポリシーが競合しないことを確認するには、WLSTコマンドのlistWSMPolicySubjects
(detail="true")
を使用します。
このコマンドは、エンドポイントの構成、各エンドポイントにアタッチされた有効なポリシー・セット、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを含めて、ドメイン内のWebサービスまたはWebサービス・クライアントのリストを表示します。このコマンドの使用の詳細は、『Webサービスの管理』のWLSTを使用したドメイン内のWebサービスの表示に関する項を参照してください。
注意:
エンドポイントは、(直接またはポリシー・セットを使用して外部で)アタッチされたポリシーで認証、認可またはメッセージ保護の操作が強制される場合にセキュアであると判断されます。
ポリシー・セットを使用してグローバルにアタッチされたポリシーが構成に含まれる場合、次のコマンドを使用してポリシー・セットに関する情報を表示できます。
-
listWSMPolicySets()
: リポジトリ内のポリシー・セットのリストを表示します。このコマンドの使用の詳細は、「ポリシー・セットのリストの表示」を参照してください。 -
displayWSMPolicySet()
: 特定のポリシー・セットの構成を表示します。このコマンドの使用の詳細は、「ポリシー・セットの構成の表示」を参照してください。
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出力の表示
OAuth2グローバル・ポリシー・セットは、ws-client (SOAPクライアント)サブジェクト・タイプに構成されます。このコマンドはドメインレベルでアタッチされた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://myhost.us.example.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グローバル・ポリシー・セットが構成されていない場合の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ユースケース・シナリオで発生する例外およびエラーを修正し、考えられる原因と推奨される解決策を調査し、それを使用してWS-TrustユースケースのOWSMの一般的な例外を診断して解決できます。
表16-1 は、エンドツーエンドのWS-Trustユースケース・シナリオで発生する可能性のある一般的なOWSM例外およびエラーを示しています。考えられる原因と推奨される解決策も記載されています。サポートされているWS-Trustユースケースの構成方法の詳細は、『Oracle Web Services ManagerによるWebサービスの保護のユース・ケース』の次の章を参照してください。
表16-1 WS-Trustユースケースの一般的なOWSM例外およびエラー
例外/エラー | 考えられる原因 | 解決策 |
---|---|---|
|
|
STS発行トークンのクライアント・ポリシーの |
|
SSLチャネルを介してサービスと通信する場合、そのサービスの有効なSSL証明書が、環境で使用されているJREディストリビューションの信用できるキーストア内で使用可能になっている必要があります。ほとんどの場合、SSL証明書は次のディレクトリ内にあります。 この例外の原因として、次のいずれかが考えられます。
|
サービスの有効なSSL証明書が |
|
この例外は、クライアントとサービスのどちらにもSTS信頼構成ポリシーが添付されていないことが原因で発生します。単純なWS-Trustユースケースでは、STS信頼構成ポリシーをクライアント・アプリケーションかサービス・アプリケーションのどちらかに添付する必要があります。ポリシーが添付されていないため、クライアントは、SAMLトークンを取得するためにどのSTSと通信するかを判断できません。 |
構成に応じて、STS信頼構成ポリシーをクライアント・アプリケーションまたはサービス・アプリケーションに添付します。詳細は、「WS-Trustの構成について」を参照してください。 |
|
Webサービス・プロバイダまたはリライイング・パーティが、受信SAMLトークンの発行者の署名を検証できません。 |
発行者の公開鍵または証明書を、サービスが使用しているJKS/KSSキーストアにインポートしたことを確認してください。 手順の詳細は、「メッセージ保護に関するキーストアの構成の概要」を参照してください。 |
|
リライイング・パーティ・サービスがデプロイされているドメイン内の信頼できる発行者リストでSAMLアサーション発行者名が構成されていません。 |
サービスが実行されているドメイン内の信頼できる発行者のリストに発行者を追加します。 詳細な手順は、次を参照してください。 |
|
サード・パーティ製のSTSサーバーを保護しているポリシーと互換性のあるクライアント・ポリシーがOWSMに存在しない場合、この例外が発生する可能性があります。 クライアントが通信を試みているSTSエンドポイントがセキュリティ・ポリシーで保護されています。Oracle STSでは、互換性のあるクライアントおよびサービス・ポリシーを備えたOWSMを使用しています。この場合、クライアントは対応するクライアント・ポリシーを問題なく検出できます。 |
OWSM信頼クライアントは、ほとんどの一般的なSTSサーバーとテストされているため、この例外が発生する可能性は低いです。 この例外がスローされた場合の回避策として、 |
16.6 OWSMとのサード・パーティ・サーバーの統合の管理
サード・パーティ・サーバーにアクセスするために必要なアクセス・トークンは、特定のシナリオで無効になります。
通常アクセス・トークンに有効期限はありませんが、ユーザーが明示的に設定からアプリケーションを拒否する場合またはTwitter管理がアプリケーションを中断する場合にアクセス・トークンが無効になります。アプリケーションが中断する場合、中断していることを示す注意がアプリケーション・ページに表示されます。
注意:
いつでもユーザーのアクセス・トークンの無効性を計画できます。そのような場合にユーザーを再認可する必要があります。トークンの有効期限が切れると、アプリケーションに通知する手段がなく、Twitter APIの起動時にアプリケーションが返すエラーに依存する必要があります。アクセス・トークンの有効期限が切れる場合、エラー・コードは、ユーザーがコンソール(apps.twitter.com)を使用してアクセス・トークンを再生成し、新しい値で資格証明ストアを更新する必要があることを示します。
コンシューマ・シークレットが変更される場合、追加の作業は必要ありません。アプリケーションは、新しいコンシューマ・シークレットを使用する必要があります。Twitterドキュメントからの抜粋は次のとおりです。
コンシューマ・キーおよびシークレットが任意の理由で損われている場合、再設定してアプリケーションのアイデンティティおよびその名前で行われるアクションの安全な制御を再取得する必要がある可能性があります。コンシューマ・キーの再設定によってユーザーを表す文字列(「アクセス・トークン」)を再設定しませんが、以前のキーとともに使用される場合にアクセス・トークンが無効になります。既存のアクセス・トークンを新しいコンシューマ・キーおよびシークレットとともに使用する場合、予期したとおりに機能を続行します。新しいコンシューマ・キーおよびシークレットは、以前のインカーネーションと完全に異なる文字列で表されます。