アノテーションインターフェース RememberMe
@InheritedSE
@InterceptorBinding
@RetentionSE(RUNTIMESE)
@TargetSE(TYPESE)
public @interface RememberMe
RememberMe アノテーションは、認証メカニズムが認証を効果的に「記憶」し、すべてのリクエストでこれを自動的に適用することを宣言的に指定する機能をアプリケーションに提供します。
Remember me 関数の場合、呼び出し元から提供された資格情報は、HTTP セッション ID の送信方法と同様に、Cookie の値としてユーザーに送信される(長期間有効な)トークンと交換されます。このトークンは、アプリケーション内で呼び出し元の ID を確立するための資格情報になり、トークンを安全に処理および保存するように注意する必要があることを理解する必要があります。例: この機能をセキュアトランスポート(SSL/HTTPS)で使用し、実際のトークンの代わりに強力なハッシュを保存し、有効期限ポリシーを実装します。
トークンは、特別な目的の IdentityStore -like アーティファクトによって販売されています。RememberMeIdentityStore の実装。
このサポートは、必要なロジックを実行するインターセプター仕様インターセプターの実装を介して提供されます。
例:
@RequestScoped
@RememberMe
public class CustomAuthenticationMechanism implements HttpAuthenticationMechanism {
// ...
}
型 String の属性の Jakarta Expression Language 式は、認証を必要とするすべてのリクエストに対して評価されます。即時構文と遅延構文の両方がサポートされていますが、事実上、セマンティクスは常に遅延されます。
注 : この機能は、「セッション管理」システムの任意の種類を構成するが、代わりに RememberMeIdentityStore で販売され、検証された長寿命トークンを使用して特別な目的の認証メカニズムを、表しません。
ネストされたクラスの要約
ネストされたクラスオプション要素の概要
オプション要素修飾子と型オプションの要素説明booleanRemember me cookie をクライアント側のスクリプトコードに公開してはならず、HTTP リクエストでのみ送信する必要があることを示すフラグ。cookieHttpOnly()の Jakarta Expression Language 式バリアント。intRemember mecookie の最大経過時間(秒単位)。cookieMaxAgeSeconds()の Jakarta Expression Language 式バリアント。覚えているクッキーの名前。boolean覚えている Cookie は安全なプロトコルを使用してのみ送信する必要があることを示すフラグ(例:cookieSecureOnly()の Jakarta Expression Language 式バリアント。boolean私を覚えておくべきかどうかを判断するためのフラグ。私を覚えているかどうかを判断するための Jakarta Expression Language 式を使用する必要があります。
要素の詳細
cookieMaxAgeSeconds
int cookieMaxAgeSecondsRemember mecookie の最大経過時間(秒単位)。デフォルトは 1 日です。- 戻り値:
- 秒単位の最大年齢
- 関連事項:
- デフォルト:
- 86400
cookieMaxAgeSecondsExpression
StringSE cookieMaxAgeSecondsExpressioncookieMaxAgeSeconds()の Jakarta Expression Language 式バリアント。式は整数の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessorの Jakarta Expression Language 3.0 で指定されたデフォルトクラス、およびインターセプターターゲットを参照する暗黙オブジェクト "self" と現在のHttpMessageContextを参照する "httpMessageContext" も使用できます。この属性とcookieMaxAgeSeconds()の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Remember mecookie の最大経過時間を秒単位で指定する整数に評価される式。
- デフォルト:
- ""
cookieSecureOnly
boolean cookieSecureOnlyRemember me cookie は安全なプロトコル(HTTPS や SSL など)を使用してのみ送信する必要があることを示すフラグ。- 戻り値:
- 安全なプロトコルを使用して Cookie を送信する必要がある場合は true、どのプロトコルでも false のみ。
- 関連事項:
- デフォルト:
- true
cookieSecureOnlyExpression
StringSE cookieSecureOnlyExpressioncookieSecureOnly()の Jakarta Expression Language 式バリアント。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessorの Jakarta Expression Language 3.0 で指定されたデフォルトクラス、インターセプターターゲットを参照する暗黙オブジェクト "self"、および現在のHttpMessageContextを参照する "httpMessageContext" も使用できます。この属性とcookieSecureOnly()の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Remember mecookie の最大経過時間を秒単位で指定する整数に評価される式。
- デフォルト:
- ""
cookieHttpOnly
boolean cookieHttpOnlyRemember me cookie をクライアント側のスクリプトコードに公開してはならず、HTTP リクエストでのみ送信する必要があることを示すフラグ。- 戻り値:
- Cookie を HTTP リクエストでのみ送信する必要がある場合(クライアント側のスクリプトコードで使用できない場合)は true、それ以外の場合は false。
- 関連事項:
- デフォルト:
- true
cookieHttpOnlyExpression
StringSE cookieHttpOnlyExpressioncookieHttpOnly()の Jakarta Expression Language 式バリアント。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessorの Jakarta Expression Language 3.0 で指定されたデフォルトクラス、インターセプターターゲットを参照する暗黙オブジェクト "self"、および現在のHttpMessageContextを参照する "httpMessageContext" も使用できます。この属性とcookieHttpOnly()の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Cookie を HTTP リクエストでのみ送信する必要がある場合は true と評価され、それ以外の場合は false と評価される式。
- デフォルト:
- ""
cookieName
StringSE cookieName覚えているクッキーの名前。- 戻り値:
- クッキーの名前
- 関連事項:
- デフォルト:
- "JREMEMBERMEID"
isRememberMe
boolean isRememberMe私を覚えておくべきかどうかを判断するためのフラグ。- 戻り値:
- 私を覚えておくべきかどうかを判断するためのフラグ
- デフォルト:
- true
isRememberMeExpression
StringSE isRememberMeExpression"Remember me" を使用するかどうかを決定するための Jakarta Expression Language 式。これは、認証を必要とするすべてのリクエストに対して評価されます。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessorの Jakarta Expression Language 3.0 で指定されたデフォルトクラス、およびインターセプターターゲットを参照する暗黙オブジェクト "self" と現在のHttpMessageContextを参照する "httpMessageContext" も使用できます。- 戻り値:
- 私を覚えているかどうかを判断する Jakarta Expression Language 式を使用する必要があります
- デフォルト:
- ""