Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 セキュリティ管理機能編


15.32.1 JAASのログインモジュールの例外クラス

JAASで規定されているログインモジュールの例外クラスを次の表に示します。

表15‒3 JAASのログインモジュールの例外クラス一覧

項番

例外名

内容

1

javax.security.auth.login.LoginException

項番2〜4の親クラスです。コンストラクタのパラメタにmsg(java.lang.String)を持ちます。

2

javax.security.auth.login.AccountExpiredException

ユーザアカウントが期限切れであることを通知します。

3

javax.security.auth.login.CredentialExpiredException

Credentialが期限切れであることを通知します。

4

javax.security.auth.login.FailedLoginException

認証が失敗したことを通知します。

また,ユーザ認証ライブラリ/シングルサインオンライブラリのログインモジュールでは,これらの例外にエラーメッセージ文字列を設定して送出します。エラーメッセージ文字列の一覧を次の表に示します。

なお,ここで示した例外以外でも,JAASのコンフィグレーションファイルの記述に誤りがある場合にLoginContextクラスをインスタンス化すると,java.lang.SecurityException例外が発生します。その場合は,次の表のエラーメッセージ文字列を参照して,JAASのコンフィグレーションファイルの内容を修正してください。

表15‒4 ユーザ認証ライブラリ/シングルサインオンライブラリのログインモジュールの例外

例外名

エラーメッセージ文字列

発生条件

javax.security.auth.login.FailedLoginException

data not found

認証情報が,渡されたパラメタ内にありません。

WebPasswordHandlerクラスに渡したHttpServletRequest内にユーザID/パスワードが格納されていません。

invalid data

  • ユーザID/パスワードに誤りがあり,認証できません。

  • 証明書から取り出したユーザIDに対応したエントリが,リポジトリ内にありません。

no data

該当セッション内で認証済みである場合に,呼び出そうとしたレルムに対応したシングルサインオン用認証情報が定義されていません。

javax.security.auth.login.LoginException

invalid parameter

Credentialを作成しようとしたときの属性名と属性の一覧の指定内容に次のような誤りがあります。

  • 属性名が指定されていません。

  • 同じAliasが重複して指定されました。

SQLの例外名称

JDBCを使用したアクセスに失敗しました。この例外が発生した場合は,エラーメッセージ文字列を参照して対処してください。

JNDIの例外名称

LDAPのアクセスに失敗しました。

  • LDAPサーバが見つかりません(CommunicationException)。

  • バインドDNの指定ミスです(AuthenticationException)。

not supported

未サポートのCallbackHandlerを使用しました。

  • WebSSOLoginModuleまたはWebPasswordLoginModuleで必要とする情報が,CallbackHandlerで求められません。

  • handleメソッドで例外が発生しました。この例外は,上記の条件でユーザ管理が提供するCallbackHandlerだけで発生します。

no class for xxx

WebSSOLoginModuleから呼び出すクラスが使用できません(xxxはcom.cosminexus.admin.auth.sso.loginmoduleで指定された値)。

  • インスタンス化ができません。JAASのログインモジュールを継承していません。また,アクセス権限がない,クラスパスが設定されていない場合があります。

config error

  • JAASのコンフィグレーションファイルに必要な情報が記述されていないため,処理を続行できませんでした。

  • 標準ログインモジュールによるユーザ管理のコンフィグレーションファイルに必要な情報が記述されていないため,処理を続行できませんでした。

invalid session

HttpSessionオブジェクトに関連づけようとしましたが,HttpSessionオブジェクトが無効になりました。

crypto error

暗号化/復号化で失敗しました。

  • JNI機能で呼び出すシングルサインオンライブラリの共用ライブラリが見つかりません(java.library.pathの設定に問題があります)。

  • 復号化に失敗しました(暗号化と復号化で異なる鍵を使用しています)。

no sso data

シングルサインオン用の情報がありません。

  • シングルサインオンをするために必要な情報が定義されていませんでした。

no principal

Principalがないため,最初に認証したユーザを特定できませんでした。

class cast error

リポジトリから取り出した型と統合ユーザ管理のコンフィグレーションファイルに指定された型が不一致です。一致するようにしてください。ua.conf(統合ユーザ管理のコンフィグレーションファイル)のcom.cosminexus.admin.auth.ldap.password.encryptを参照してください。ua.confファイルについては,「14.2.2 ua.conf(統合ユーザ管理のコンフィグレーションファイル)」を参照してください。

not found driver

JDBCを使用しました。

  • WebPasswordJDBCLoginModuleでドライバが見つかりません。ドライバを正しい場所に格納してください。

その他

各システムのログインモジュールで発生しました。

  • WebSSOLoginModuleで,ユーザ認証ライブラリ以外のログインモジュールから発生しました。