public class PasswordSecurityHTTPActionEventFilterHandler extends AccountSecurityHTTPActionEventFilterHandler
このフィルタを利用する事により、任意のテナント内の任意のアカウントで ログインした状態の環境を作る事ができます。 ログイン環境でイベントを動作させる事により、 イベントプログラム中でログインセッションを必要とするAPIを 利用可能になります。
このフィルタは、AccountSecurityHTTPActionEventFilterHandler
の機能に加えて パスワード認証も行います。したがって、
AccountSecurityHTTPActionEventFilterHandler
よりも 高度なセキュリティを実現しながらイベントを実行する事が可能となります。
このフィルタを利用する場合は、 必ずログイン環境を作れるアカウントを作成しておく必要があります。 実在しないアカウントを指定したりパスワードが正しくない場合、 未来の予測できないエラーを回避するために、
フィルタ処理の途中で即座に例外がスローされてます。 結果として、イベント実行はエラー終了します。
フィルタがエラー終了した場合、セキュリティホールとならないために セッションを破棄(javax.servlet.http.HttpSession#invalidate())します。
したがって、認証前にセッションに保存した情報にはアクセスできなくなります。 認証エラー後にセッション内の情報が必要な場合は、 事前に取得して別な場所へ保管するなどの対策が必要です。
修飾子とタイプ | フィールドと説明 |
---|---|
protected static String |
ID_SECURITY_PASSWORD |
ID_SECURITY_ACCOUNT
ID_SECURITY_GROUP
コンストラクタと説明 |
---|
PasswordSecurityHTTPActionEventFilterHandler(HTTPActionEventHandler handler,
String accountId,
String password)
アカウントによるログイン環境下で HTTPActionEvent を実行するためのフィルタハンドラを作成します。
|
PasswordSecurityHTTPActionEventFilterHandler(HTTPActionEventHandler handler,
String tenantId,
String accountId,
String password)
アカウントによるログイン環境下で HTTPActionEvent を実行するためのフィルタハンドラを作成します。
|
修飾子とタイプ | メソッドと説明 |
---|---|
String |
getName()
フィルタイベント名を返します。
|
String |
getPassword()
設定されているパスワードを返します。
|
protected void |
setPassword(String password)
パスワードを設定します。
|
getAccount, setAccount
getGroup, setGroup
getEventRequestParameterMap, getFilterParameter, getFilterParameterMap, getParameter, getParameterKeySet, getParameterMap, getParent, hasParameter, removeFilterParameter, removeParameter, setFilterParameter, setParameter
execute, execute, execute, getCharacterEncoding, setCharacterEncoding, setHostnameVerifier, setSSLContext
public PasswordSecurityHTTPActionEventFilterHandler(HTTPActionEventHandler handler, String accountId, String password)
handler
- フィルタリングするハンドラaccountId
- アカウントIDpassword
- パスワードpublic PasswordSecurityHTTPActionEventFilterHandler(HTTPActionEventHandler handler, String tenantId, String accountId, String password)
null
が指定された場合はデフォルトテナントにログインします。handler
- フィルタリングするハンドラtenantId
- テナントIDaccountId
- アカウントIDpassword
- パスワードpublic String getName()
実際には、Application Runtime で実行される FilterHTTPActionEvent
を
実装したクラスのクラス名を返します。
getName
クラス内 AccountSecurityHTTPActionEventFilterHandler
protected void setPassword(String password)
password
- パスワードpublic String getPassword()
Copyright © 2012 NTT DATA INTRAMART CORPORATION