セキュリティーを使用可能にした後のエラー発生
この情報は、セキュリティーを使用可能にした後でエラーが発生した場合に使用します。
- Web ページにアクセスする際の認証エラー
- Web ページにアクセスする際の許可エラー
- クライアントとサーバーでコード・ページが違うと、 認証に失敗する
- エラー・メッセージ: CWSCJ0314E: Current Java 2 security policy reported a potential violation
- アプリケーション・サーバーの始動時に、「CWMSG0508E: The JMS Server security service was unable to authenticate user ID:」というエラーが SystemOut.log に表示される
- セキュリティーを使用可能にしてアプリケーション・サーバーを始動した後に、「CWSCJ0237E: 1 つまたは複数の重要 LTPAServerObject 構成属性がヌルまたは利用不能です」というエラー・メッセージが表示される
SystemOut.log に AccessControlException が報告される
- エラー・メッセージ: CWSCJ0336E: 続く例外 {1} により、ユーザー {0} に対して認証が失敗しました
エラー・メッセージ: セキュリティー collaborator.java.lang.SecurityException の初期化中に予期しない例外が発生しました: AuthConfigFactory エラー: java.lang.ClassNotFoundException: org.apache.geronimo.components.jaspi.AuthConfigFactoryImpl
エラー・メッセージ: SECJ8032W: デフォルトの JASPI ファクトリー実装クラスを使用する AuthConfigFactory は未定義です
- エラー・メッセージ: SECJ0352E: 次の例外 {1} によって、パターン {0} に一致するユーザーを 取得できませんでした
- LTPA トークンの妥当性検査が、鍵またはトークン・タイプが無効であるため失敗する
- プロファイル管理ツールを使用して新規プロファイルを作成すると、 鍵の生成エラーが発生する
- LDAP で Tivoli Access Manager が使用可能になっている場合、セキュア・アプリケーションで一部のセキュリティー・ロールをすぐに使用できない。
- ドメインのレルムを非トラステッドに設定した後、グローバル・セキュリティー設定を使用できない
- 更新されたグローバル・セキュリティー・レルム名が重複している
- セッション・セキュリティー・フィーチャーがオンのときにエラーが発生することがある
ABEND WITH ABEND EC3 REASON=020F2001
セキュリティー関連の問題を診断および解決するための一般的なヒントについては、セキュリティー・コンポーネントのトラブルシューティングを参照してください。
Web ページにアクセスする際の認証エラー
- ユーザー名またはパスワードが間違っている。ユーザー名とパスワードを確認して、 それらが正しいことを確認してください。
- セキュリティー構成エラー: ユーザー・レジストリー・タイプが正しく設定されていない。 管理コンソールで、管理セキュリティー設定のユーザー・レジストリー・プロパティーを確認してください。 ユーザー・レジストリー・プロパティーが目的のユーザー・レジストリーであることを確認してください。
- 内部プログラム・エラー。クライアント・アプリケーションが Java™ スタンドアロン・プログラムである場合、このプログラムが、クレデンシャル情報を正しく収集していないか、正しく送信していない可能性があります。
ユーザー・レジストリー構成、
およびユーザー ID とパスワードが正しい場合は、WebSphere Application Server のトレースを使用して、問題の原因を判別します。セキュリティー・トレースを使用可能にするには、com.ibm.ws.security.*=all=enabled トレース仕様を使用します。
Web ページにアクセスする際の許可エラー
リソースへのアクセス権を持つべきユーザーが、 それを持っていない場合は、構成時に何らかのステップをスキップした可能性があります。 管理ロールへのアクセスの許可を参照してください。
- アクセスしている Web リソースに対する必要なロールを確認する。
- 許可表をチェックして、ユーザーまたはユーザーが属するグループに、 必要なロールのいずれかが割り当てられていることを確認する。
- Web リソースに必要なロールを、その Web リソースのデプロイメント記述子に表示する。
- Web リソースを含むアプリケーションの許可表を、管理コンソールを使用して表示する。
- 必要なロールを付与されたユーザーを使用して、 そのユーザーが問題のリソースにアクセスできるかを確かめる。
- ユーザーが、必要なロールを 1 つ以上備えている必要がある場合は、 管理コンソールを使用して、そのユーザーを必要なロールに割り当て、アプリケーションを停止してから再始動する。
ユーザーに必要なロールが付与されているにもかかわらず、
セキュア・リソースにアクセスできない場合は
、com.ibm.ws.security.*=all=enabled をトレース仕様として使用して
、セキュリティー・トレースを使用可能にしてください。
トレース情報を収集して、さらに解決を図ってください。
クライアントとサーバーでコード・ページが違うと、 認証に失敗する
クライアントが サーバーとは異なるコード・ページを使用し、基本認証時のユーザー ID と パスワードに US-ASCII 以外の文字が使用されている場合は、ログインに 失敗します。HTTP ヘッダーに、エンコードされたデータの変換に必要な エンコード方式情報が含まれていないため、サーバーには、その情報を正しくデコードする方法が わかりません。エラー・メッセージ: CWSCJ0314E: Current Java 2 security policy reported a potential violation on server
エラー・メッセージ: CWSCJ0314E: Current Java 2 セキュリティー・ポリシーが、Java 2 セキュリティー権限違反の可能性があることを報告しました。 詳しくは、『問題判別ガイド』を参照してください。 {0}Permission/:{1}Code/:{2}{3}Stack Trace/:{4}Code Base Location/:{5}Java セキュリティー ・マネージャーの checkPermission メソッド が、SecurityException 例外を報告しました。
報告された例外は、セキュア・システムにとって重大な場合があります。 セキュリティー・トレースをオンにして、 セキュリティー・ポリシーを違反した可能性のあるコードを判別してください。 違反コードが判別されたら、 該当するすべての Java 2 セキュリティー・ポリシー・ファイルおよびアプリケーション・コードを調べることによって、 試行した操作が Java 2 セキュリティー に関して許可されているかどうかを確認します。
Reliability Availability Serviceability (RAS) トレースをデバッグ・モードに構成する方法については、『トレースおよびロギングの構成』の項目を参照するか、次のようにします。
- 管理コンソールの
- java.security.debug ランタイム・フラグを追加します。
- 有効な値:
- access
- 必要な許可、コード、スタック、およびコード・ベースの場所など、 すべてのデバッグ情報を出力します。
- stack
- デバッグ情報 (必要なアクセス権、コード、スタックなど) を印刷します。
- failure
- デバッグ情報 (必要なアクセス権、コードなど) を印刷します。
ペインの「汎用 JVM 引数」フィールドに、以下のプロパティーを指定します。
Java セキュリティー・ポリシーを確認するには、 http://www.ibm.com/developerworks/java/jdk/security/ に ある Java 2 セキュリティー文書を参照してください。
- permission java.io.FilePermission "${user.home}${/}.mailcap", "read";
- permission java.io.FilePermission "${user.home}${/}.mime.types", "read";
- permission java.io.FilePermission "${java.home}${/}lib${/}mailcap", "read";
- permission java.io.FilePermission "${java.home}${/}lib${/}mime.types", "read";
アプリケーション・サーバーの始動時に、 「CWMSG0508E: The JMS Server security service was unable to authenticate user ID:」というエラーが SystemOut.log に表示される
このエラーは、Java Message Service (JMS) API サンプルをインストールしてからセキュリティー を使用可能にすると発生することがあります。 対応する JMS サンプル資料の「構成と実行」ページの指示に従って、WebSphere Application Server セキュリティーで扱うサンプルを構成できます。
メッセージ駆動型 Bean のサンプルがインストールされているかどうかを調べるには、インストール・プログラムを起動し、「カスタム」を選択して、「Select the features you like to install」ペインで既にインストールされているコンポーネントを確認します。JMS サンプルは、「Embedded Messaging」の下に「Message-Driven Bean Sample」として示されます。
このインストールは、管理コンソールを使用してサンプルを含むアプリケーション・サーバーのプロパティーを開くことでも確認することができます。 「MDBSamples」を選択して、 「アンインストール」をクリックしてください。
セキュリティーを使用可能にして アプリケーション・サーバーを始動すると、「CWSCJ0237E: 1 つまたは複数の重要 LTPAServerObject 構成属性が ヌルまたは利用不能です」というエラー・メッセージが表示される
このエラー・メッセージは、 認証メカニズムとして Lightweight Third Party Authentication (LTPA) を選択したのに LTPA 鍵を生成していない場合に表示されることがあります。 LTPA 鍵は LTPA トークンを暗号化します。
- をクリックします。
- パスワード (何でもよい) を入力する。
- 「確認パスワード」に同じパスワードを入力します。
- 「適用」をクリックします。
- 「鍵の生成」をクリックします。
- 「保存」をクリックします。
SystemOut.log に、AccessControlException 例外が報告される
この問題は 、WebSphere Application Server の Java 2 セキュリティー・フィーチャーに関連しています。 このフィーチャーは、WebSphere Application Server で実装された API レベルのセキュリティー・フレームワークです。 以下の例のような例外が表示されます。 このエラー・メッセージと番号は、変わる場合があります。![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
CWSRV0020E: [Servlet Error]-[validator]: Failed to load servlet:
java.security.AccessControlException: access denied
(java.io.FilePermission
app_server_root/systemApps/isclite.ear/isclite.war/WEB-INF/validation.xml read)
![[z/OS]](../images/ngzos.gif)
CWSRV0020E: [Servlet Error]-[validator]: Failed to load servlet:
java.security.AccessControlException: access denied
(java.io.FilePermission
/WebSphere/V6R1M0/AppServer/systemApps/isclite.ear/isclite.war/WEB-INF/validation.xml read)
![[IBM i]](../images/iseries.gif)
CWSRV0020E: [Servlet Error]-[validator]: Failed to load servlet:
java.security.AccessControlException: access denied
(java.io.FilePermission
app_server_root/systemApps/isclite.ear/isclite.war/WEB-INF/validation.xml read)
Java 2 セキュリティーの説明、
それを使用可能または使用不可にする方法および理由、Java 2 セキュリティーとポリシー・ファイルとの関係、
ならびにポリシー・ファイルを編集する方法については、インフォメーション・センター・ナビゲーションのトピック、Java 2 セキュリティーを参照してください。
このトピックでは、Java 2 セキュリティーはこの製品で使用されるだけでなく、開発者がそのビジネス・アプリケーションに実装することもできるということが説明されています。WebSphere Application Server がホストするリソースに対してクライアントがアクセスしようとする際にこの例外が発生した場合は、
管理者に開発者の支援が必要になることがあります。
- ポリシー・ファイル内の構文エラー。
- .rar ファイルにバンドルされた ra.xml ファイル内の許可指定の構文エラー。 このケースは、CICS® またはその他のリソースへのコネクター・アクセスをサポートするリソース・ アダプターに該当します。
- ポリシー・ファイル、または .rar ファイルにバンドルされた ra.xml ファイルで許可の指定が行われていない。
- クラスパスが正しく設定されていないため、Service Provider Programming Interface (SPI) 用の resource.xml ファイルに対する許可が正しく作成できない。
- アプリケーションによって呼び出されたライブラリー、またはそのアプリケーションに、 リソースへのアクセスをサポートする doPrivileged ブロックが欠落している。
- 誤ったポリシー・ファイルに許可が指定されている。
- すべての関連ポリシー・ファイルをチェックし、 例外に示された許可 (例えば java.io.FilePermission) が指定されていることを確認する。
- SystemOut.log ファイルで、
構文エラーの詳細を報告する関連 ParserException 例外を探す。
以下に例を示します。
CWSCJ0189E: Caught ParserException while creating template for application policy profile_root/config/cells/cell_name/nodes/node_name/app.policy
CWSCJ0189E: Caught ParserException while creating template for application policy /WebSphere/V6R1M0/AppServer1/profiles/profile_name/config/cells/cell_name/nodes/node_name/app.policy.
CWSCJ0189E: Caught ParserException while creating template for application policy profile_root/config/cells/cell_name/nodes/node_name/app.policy
各部の意味は、次のとおりです。例外は com.ibm.ws.security.util.ParserException: line 18: expected ';', found 'grant' です。V6R1M0 は、使用している WebSphere Application Server のバージョンを表します。
- cell_name は、セルの名前を表します。
- profile_name は、プロファイルの名前を表します。
- node_name は、ノードの名前を表します。
- 「CWSCJ0325W: The permission permission specified in the policy file is unresolved.」のようなメッセージを探します。
- 呼び出しスタックをチェックし、許可のないメソッドを判別する。このメソッドのクラスパスを確認します。
メソッドの確認が困難な場合は、「Java2 security Report」を使用可能にします。
com.ibm.ws.security.core.*=all=enabled を指定するか、または Java property.java.security.debug プロパティーを指定して 、RAS トレースを構成する。 java.security.debug プロパティーの有効値は次のとおりです。
- access
- 必要な許可、コード、スタック、およびコード・ベースの場所を含む、 すべてのデバッグ情報を出力します。
- stack
- デバッグ情報 (必要な許可、コード、スタックなど) を出力します。
- failure
- デバッグ情報 (必要な許可、コードなど) を出力します。
- レポートには、以下のことが示されています。
- Permission
- 欠落している許可。
- Code
- 問題が発生しているメソッド。
- Stack Trace
- アクセス違反が発生した場所。
- CodeBaseLocation
- 各スタック・フレームの詳細。
通常、「Permission」と「Code」で十分問題を特定できます。 以下は、レポートの例です。
Permission: app_server_root/logs/server1/SystemOut_02.08.20_11.19.53.log : access denied (java.io.FilePermission app_server_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete) Code: com.ibm.ejs.ras.RasTestHelper$7 in {file:app_server_root/installedApps/app1/JrasFVTApp.ear/RasLib.jar } Stack Trace: java.security.AccessControlException: access denied (java.io.FilePermission app_server_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete ) at java.security.AccessControlContext.checkPermission (AccessControlContext.java(Compiled Code)) at java.security.AccessController.checkPermission (AccessController.java(Compiled Code)) at java.lang.SecurityManager.checkPermission (SecurityManager.java(Compiled Code)) . Code Base Location: com.ibm.ws.security.core.SecurityManager : file:/app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar ClassLoader: com.ibm.ws.bootstrap.ExtClassLoader Permissions granted to CodeSource (file:/app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar <no certificates> { (java.util.PropertyPermission java.vendor read); (java.util.PropertyPermission java.specification.version read); (java.util.PropertyPermission line.separator read); (java.util.PropertyPermission java.class.version read); (java.util.PropertyPermission java.specification.name read); (java.util.PropertyPermission java.vendor.url read); (java.util.PropertyPermission java.vm.version read); (java.util.PropertyPermission os.name read); (java.util.PropertyPermission os.arch read); } (このリストは続きます。)
Permission: /WebSphere/AppServer/logs/server1/SystemOut_02.08.20_11.19.53.log : access denied (java.io.FilePermission WebSphere/AppServer/logs/server1/SystemOut_02.08.20_11.19.53.log delete) Code: com.ibm.ejs.ras.RasTestHelper$7 in {file:/WebSphere/AppServer/installedApps/app1/JrasFVTApp.ear/RasLib.jar} Stack Trace: java.security.AccessControlException: access denied (java.io.FilePermission /WebSphere/AppServer/logs/server1/SystemOut_02.08.20_11.19.53.log delete) at java.security.AccessControlContext.checkPermission (AccessControlContext.java(Compiled Code)) at java.security.AccessController.checkPermission (AccessController.java(Compiled Code)) at java.lang.SecurityManager.checkPermission (SecurityManager.java(Compiled Code)) . Code Base Location: com.ibm.ws.security.core.SecurityManager : file:/WebSphere/AppServer/lib/securityimpl.jar ClassLoader: com.ibm.ws.bootstrap.ExtClassLoader Permissions granted to CodeSource (file:/WebSphere/AppServer/lib/securityimpl.jar <no certificates> { (java.util.PropertyPermission java.vendor read); (java.util.PropertyPermission java.specification.version read); (java.util.PropertyPermission line.separator read); (java.util.PropertyPermission java.class.version read); (java.util.PropertyPermission java.specification.name read); (java.util.PropertyPermission java.vendor.url read); (java.util.PropertyPermission java.vm.version read); (java.util.PropertyPermission os.name read); (java.util.PropertyPermission os.arch read); } (このリストは続きます。)
Permission: profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log : access denied (java.io.FilePermission profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete) Code: com.ibm.ejs.ras.RasTestHelper$7 in {file:profile_root/installedApps/app1/JrasFVTApp.ear/RasLib.jar } Stack Trace: java.security.AccessControlException: access denied (java.io.FilePermission profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete ) at java.security.AccessControlContext.checkPermission (AccessControlContext.java(Compiled Code)) at java.security.AccessController.checkPermission (AccessController.java(Compiled Code)) at java.lang.SecurityManager.checkPermission (SecurityManager.java(Compiled Code)) . Code Base Location: com.ibm.ws.security.core.SecurityManager : file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar ClassLoader: com.ibm.ws.bootstrap.ExtClassLoader Permissions granted to CodeSource (file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar <no certificates> { (java.util.PropertyPermission java.vendor read); (java.util.PropertyPermission java.specification.version read); (java.util.PropertyPermission line.separator read); (java.util.PropertyPermission java.class.version read); (java.util.PropertyPermission java.specification.name read); (java.util.PropertyPermission java.vendor.url read); (java.util.PropertyPermission java.vm.version read); (java.util.PropertyPermission os.name read); (java.util.PropertyPermission os.arch read); } (このリストは続きます。) Permission: profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log : access denied (java.io.FilePermission profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete) Code: com.ibm.ejs.ras.RasTestHelper$7 in {file:profile_root/installedApps/app1/JrasFVTApp.ear/RasLib.jar} Stack Trace: java.security.AccessControlException: access denied (java.io.FilePermission profile_root/logs/server1/SystemOut_02.08.20_11.19.53.log delete) at java.security.AccessControlContext.checkPermission (AccessControlContext.java(Compiled Code)) at java.security.AccessController.checkPermission (AccessController.java(Compiled Code)) at java.lang.SecurityManager.checkPermission (SecurityManager.java(Compiled Code)) . Code Base Location: com.ibm.ws.security.core.SecurityManager : file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar ClassLoader: com.ibm.ws.bootstrap.ExtClassLoader Permissions granted to CodeSource (file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar <no certificates> { (java.util.PropertyPermission java.vendor read); (java.util.PropertyPermission java.specification.version read); (java.util.PropertyPermission line.separator read); (java.util.PropertyPermission java.class.version read); (java.util.PropertyPermission java.specification.name read); (java.util.PropertyPermission java.vendor.url read); (java.util.PropertyPermission java.vm.version read); (java.util.PropertyPermission os.name read); (java.util.PropertyPermission os.arch read); } (このリストは続きます。) Permission: profile_root /logs/server1/SystemOut_02.08.20_11.19.53.log : access denied (java.io.FilePermission profile_root /logs/server1/SystemOut_02.08.20_11.19.53.log delete) Code: com.ibm.ejs.ras.RasTestHelper$7 in {file:profile_root /installedApps/app1/JrasFVTApp.ear/RasLib.jar} Stack Trace: java.security.AccessControlException: access denied (java.io.FilePermission profile_root /logs/server1/SystemOut_02.08.20_11.19.53.log delete) at java.security.AccessControlContext.checkPermission (AccessControlContext.java(Compiled Code)) at java.security.AccessController.checkPermission (AccessController.java(Compiled Code)) at java.lang.SecurityManager.checkPermission (SecurityManager.java(Compiled Code)) . Code Base Location: com.ibm.ws.security.core.SecurityManager : file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar ClassLoader: com.ibm.ws.bootstrap.ExtClassLoader Permissions granted to CodeSource (file:app_server_root/plugins/com.ibm.ws.runtime_6.1.0.jar <no certificates> { (java.util.PropertyPermission java.vendor read); (java.util.PropertyPermission java.specification.version read); (java.util.PropertyPermission line.separator read); (java.util.PropertyPermission java.class.version read); (java.util.PropertyPermission java.specification.name read); (java.util.PropertyPermission java.vendor.url read); (java.util.PropertyPermission java.vm.version read); (java.util.PropertyPermission os.name read); (java.util.PropertyPermission os.arch read); } (このリストは続きます。)
各部の意味は、次のとおりです。- app1 は、アプリケーションの名前を表します。
- app_server_root は、WebSphere Application ServerWebSphere Application Server Network Deployment のインストール・ルート・ディレクトリーを表します。
- profile_root は、システムにおける特定のプロファイルのロケーションと名前を表します。
- profile1 または profile_name は、プロファイルの名前を表します。
- server1 または server_name は、アプリケーション・サーバーの名前を表します。
- メソッドが SPI の場合は、resources.xml ファイルをチェックして、 クラスパスが正しいことを確認します。
- すべてのポリシー・ファイルが正しくロードされていることを確認する、 または各クラスパスに付与されている許可を確認するには 、com.ibm.ws.security.policy.*=all=enabled でトレースを使用可能にします。 ロードされている許可は、すべて trace.log ファイルにリストされます。 app.policy、was.policy および ra.xml ファイルを検索してください。 クラスパスの許可リストを確認するには、Effective Policy for classpath を検索します。
ポリシー・ファイルまたは ra.xml ファイル内に構文エラーがある場合は 、ポリシー・ツールを使用して訂正します。 構文エラーが発生する可能性があるため、手動でポリシーを編集しないようにしてください。
- 「Unresolved」とリストされている許可は有効になりません。 指定した許可名が正しいことを確認してください。
- resource.xml ファイルで指定したクラスパスが正しくない場合は、訂正します。
- 必要な許可がポリシー・ファイルまたは ra.xml ファイルに存在しない場合は、 アプリケーション・コードを調べて、この許可を追加する必要があるかどうかを確認します。必要があれば、 適切なポリシー・ファイルまたは ra.xml ファイルに追加します。
- このリソースにアクセスする特定のメソッド以外に許可が付与されていない場合は 、doPrivileged ブロックを使用するようにコードを変更します。
この許可がポリシー・ファイル内または ra.xml ファイル内に存在していて、許可が正しくロードされたにもかかわらず、クラスパスのリストに表示されていない場合は、 許可のロケーションが間違っている可能性があります。 インフォメーション・センター・ナビゲーションの Java 2 セキュリティーをよく読み、どのポリシー・ファイルまたは ra.xml ファイルで その許可を指定する必要があるかを判別してください。
- permission java.io.FilePermission "${user.home}${/}.mailcap", "read";
- permission java.io.FilePermission "${user.home}${/}.mime.types", "read";
- permission java.io.FilePermission "${java.home}${/}lib${/}mailcap", "read";
- permission java.io.FilePermission "${java.home}${/}lib${/}mime.types", "read";
エラー・メッセージ: 「CWSCJ0336E: 続く例外 {1} により、ユーザー {0} に対して認証が失敗しました」
- ユーザー ID とパスワードが正しいことを確認します。
- そのユーザー ID がレジストリー内に存在することを確認します。
- 基本識別名 (DN) が正しいことを確認します。
- ユーザー・フィルターが正しいことを確認します。
- バインド DN と、そのバインド DN 用のパスワードが正しいことを確認します。 バインド DN とパスワードが指定されていない場合は、 欠落情報を追加して再試行してください。
- ホスト名と LDAP タイプが正しいことを確認します。
エラー・メッセージ: セキュリティー collaborator.java.lang.SecurityException の初期化中に予期しない例外が発生しました: AuthConfigFactory エラー: java.lang.ClassNotFoundException: org.apache.geronimo.components.jaspi.AuthConfigFactoryImpl
# # The fully qualified class name of the default JASPI factory implementation class. # authconfigprovider.factory=com.ibm.ws.security.jaspi.ProviderRegistry
エラー・メッセージ: SECJ8032W: デフォルトの JASPI ファクトリー実装クラスを使用する AuthConfigFactory は未定義です
このエラー・メッセージが生じるのは、JASPI ファクトリー実装が定義されていない場合です。 デフォルトの JASPI ファクトリー実装は、サーバー・ランタイムで設定されています。 ただし、JASPI はクライアントに対して機能しない可能性があります。
# # The fully qualified class name of the default JASPI factory implementation class. # authconfigprovider.factory=com.ibm.ws.security.jaspi.ProviderRegistry
エラー・メッセージ: SECJ0352E: 次の例外 {1} によって、パターン {0} に一致するユーザーを 取得できませんでした
この認証失敗メッセージが表示されるのは、 外部のユーザー・アカウント・リポジトリーが破損しているか使用不可になっているために、 WebSphere Application Server がリポジトリー内のユーザー名を認証できない 場合です。通常は、認証エラー・メッセージに続いて、例えば次のように、 問題の本質的な原因すなわち根本原因を示す追加情報が表示されます。パターンに一致するユーザーがレジストリーに存在することを確認してください。問題が続く場合は、サービス担当者に連絡してください。
ユーザー・アカウント・リポジトリーが 破損している場合、またはユーザーが WebSphere Application Server と外部ユーザー・アカウント・リポジトリー間の 接続を切断した場合は、この追加情報では明確なユーザー処置が提供されないことがあります。 外部ユーザー・アカウント・リポジトリー (ここではリポジトリーと 呼びます) は、Lightweight Directory Access Protocol (LDAP) 製品などです。- リポジトリーと WebSphere Application Server の両方を再始動します。
- リポジトリーへの接続をテストします。それでも接続に失敗する場合は、 リポジトリーの再インストールが必要かもしれません。
- リポジトリーに関する診断が出る場合は、リポジトリーを再インストールしなくてもよいように、
それを実行してみてください。重要: それでも問題が 解決しない場合は、リポジトリーを再インストールする必要があるかもしれません。先に進む前に、 構成済みのすべてのユーザーおよびグループの完全なリストを生成してください。 再インストール後は、これらのフィールドを再設定する必要があります。
- 必要に応じて、破損したリポジトリーを再インストールします。
- ユーザーおよびグループを、リストから新しくインストールしたリポジトリーに 取り込みます。
- リポジトリーと WebSphere Application Server の両方を再始動します。
- 管理コンソールで、 に移動し、該当するユーザー・アカウント・リポジトリーを 選択します。例えば、スタンドアロンの Lightweight Directory Access Protocol リポジトリーを 使用する場合は「スタンドアロン LDAP レジストリー」を選択します。
- 「テスト接続」をクリックして、WebSphere Application Server がリポジトリーに 接続できることを確認します。
LTPA トークンの妥当性検査が、鍵またはトークン・タイプが無効であるため失敗する
LTPA トークンのセキュリティー・コンテキストのデシリアライゼーションが WSSecurityException で失敗し、「LTPA トークンの妥当性検査は、無効な鍵またはトークン・タイプのため失敗しました。」というメッセージが表示される場合は、com.ibm.websphere.security.recoverContextWithNewKeys プロパティーを true に設定してください。
プロファイル管理ツールを使用して新規プロファイルを作成すると、 鍵の生成エラーが発生する
プロファイル管理ツールまたは コマンド行の manageprofiles ユーティリティーを使用して新規プロファイルを作成すると、 部分的な成功あるいは失敗を示すエラー・メッセージが表示されます。 このエラー・メッセージは install_dir/logs/manageprofiles/profile_name_create.log ファイルにあり、generateKeysforSingleProfile タスクまたは generateKeysForCellProfile タスクの エラーを指している可能性があります。
プロファイル作成ツールや manageprofiles ユーティリティーは、複数のタスクを呼び出します。generateKeysForSingleProfile タスクが 呼び出されるのは、スタンドアロンのアプリケーション・サーバーまたはデプロイメント・マネージャーのプロファイルを 作成する場合です。generateKeysForCellProfile タスクが呼び出されるのは、セル・プロファイルを 作成する場合です。どちらのタスクも、wsadmin コマンドを呼び出す 最初のタスクです。どちらかのタスクでログにエラーが記録されても、 そのエラーは実際には wsadmin コマンドの失敗が原因であり、セキュリティー・タスクのエラーではない 場合があります。
この問題の実際の原因を突き止めるには、 以下のログ・ファイルの情報を確認します。
- install_dir/logs/manageprofiles/profile_name_create.log ファイル (障害のエラー・コードがわかります)
- install_dir/logs/manageprofiles/profile_name/keyGeneration.log ファイル
- install_dir/logs/manageprofiles/profile_name/wsadminListener.log ファイル
LDAP で Tivoli Access Manager が使用可能になっている場合、セキュア・アプリケーションで一部のセキュリティー・ロールをすぐに使用できない。
場合によっては、LDAP で Tivoli® Access Manager が使用可能になっている環境で、セキュア・アプリケーションをデプロイした場合に、一部のセキュリティー・ロールをすぐに使用できないことがあります。
"Exception: java.lang.OutOfMemoryError"
- 最小 java ヒープ・サイズおよび最大 java ヒープ・サイズに割り振るメモリーを増やします。
- 管理コンソールで、 とクリックします。
- とクリックします。
- 「Java 仮想マシン」を選択します。
- 初期ヒープ・サイズを 512 MB に、最大ヒープ・サイズを 1024 MB に設定します。
- 「OK」を選択してから「保存」をクリックします。
- WebSphere Application Server を再始動します。
- WebSphere Application Sever が停止している間に、組み込み Tivoli Access Manager 用にいくつかのパフォーマンス調整プロパティーを追加します。
- config/cells/CELLNAME ディレクトリーで、amwas.amjacc.template.properties ファイルを編集して、以下のプロパティーを追加します。
com.tivoli.pd.as.jacc.DBRefresh=0 com.tivoli.pd.as.jacc.AuthTableRemoteMode=yes com.tivoli.pd.as.rbpf.NoUncheckedRoles=true
これは、組み込み Tivoli Access Manager の再構成時に役立ちます。
- 組み込み Tivoli Access Manager は既に構成済みのため、生成された構成ファイルを上記のプロパティーを使用して更新できます。ND (dmgr、NA、サーバー) の各 WebSphere Application Server インスタンスの場合は、profiles/NAME/etc/tam ディレクトリーに移動して以下を実行します。
amjacc.properties で終わる各ファイルについて、以下の示された 3 つのプロパティーを追加します。
com.tivoli.pd.as.jacc.DBRefresh=0 com.tivoli.pd.as.jacc.AuthTableRemoteMode=yes com.tivoli.pd.as.rbpf.NoUncheckedRoles=true
pdperm.properties で終わる各ファイルで、appsvr-dbrefresh プロパティーを appsvr-dbrefresh=0 になるように更新します。
authztable.pdperm.properties で終わる各ファイルでは、appsvr-mode プロパティーを appsvr-mode=remote になるように更新します。
- config/cells/CELLNAME ディレクトリーで、amwas.amjacc.template.properties ファイルを編集して、以下のプロパティーを追加します。
- セルを再始動します。
ドメインのレルムを非トラステッドに設定した後、グローバル・セキュリティー設定を使用できない
トラステッド・ドメインのレルムを追加した後、管理コンソールでそのレルムを「非トラステッド」に設定すると、 domain-security.xml ファイルに空の inboundTrustedAuthenticationRealm エントリーが生成されることがあります。domain-security.xml ファイル内に、この空のインバウンドまたはアウトバウンドのトラステッド・レルム定義が生成されることにより、このドメインでグローバル・セキュリティー設定が使用できなくなります。
- 現行のドメインを削除します。
- 新規ドメインを作成します。
- 不適切なレルムを「トラステッド」として追加しないようにします。
更新されたグローバル・セキュリティー・レルム名が重複している
グローバル・セキュリティー・レルム名が更新されると、アプリケーション・セキュリティー・ドメインのレルム名も同じレルム名で更新される
WebSphere Application Server バージョン 8.0 では、グローバル・レベルのインスタンスのほか、 複数セキュリティー・ドメイン環境のドメイン・レベルで統合リポジトリーの固有のインスタンスを構成できます。 ただし、統合リポジトリー・ユーザー・レジストリーがグローバル・レベルで構成されている場合、 またはセキュリティー・ドメインの構成後にレルム名がグローバル・レベルで変更された場合、 統合リポジトリーを使用するすべてのセキュリティー・ドメインのレルム名も更新されます。 これにより、統合リポジトリーを使用するすべてのドメインが、グローバル・レベルで定義されている統合リポジトリーを使用することになります。
この問題を解決するには、統合リポジトリーを作成した後、またはレルム名をグローバル・レベルで変更した後で、統合リポジトリーを使用するセキュリティー・ドメインを元のレルム名で更新します。 セキュリティー・ドメイン内に統合リポジトリーを構成する前に、グローバル・レベルの統合リポジトリーが構成されている場合には、この問題が発生しません。
セッション・セキュリティー・フィーチャーがオンのときにエラーが発生することがある
SESN0008E: 匿名として認証されたユーザーが、{<user>} が所有するセッションにアクセスしようとしました。
この問題を解決するには、同じユーザー ID を使用する場合は、必ず前のユーザーがログアウトしてから、別のユーザーがログインするようにしてください。

![[z/OS]](../images/ngzos.gif)
ABEND WITH ABEND EC3 REASON=020F2001
WebSphere Application Server for z/OS のインストール時に zPMT ダイアログまたは ISPF カスタマイズ・ダイアログでセキュリティーを直ちに使用可能にしないと、完全な RACF® 定義が生成されません。後で管理コンソールを使用してセキュリティーが使用可能になったときに、RACF ステートメントが欠落しているため、WebSphere Application Server の制御領域が開始されません。 この問題の解決について詳しくは、APAR PK36598 を検討してください。