アノテーション型 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
で販売され、検証された長寿命トークンを使用して特別な目的の認証メカニズムを、表しません。
オプション要素のサマリー
オプション要素 修飾子と型 オプションの要素 説明 boolean
cookieHttpOnly
Remember me cookie をクライアント側のスクリプトコードに公開してはならず、HTTP リクエストでのみ送信する必要があることを示すフラグ。StringSE
cookieHttpOnlyExpression
cookieHttpOnly()
の Jakarta Expression Language 式バリアント。int
cookieMaxAgeSeconds
Remember mecookie の最大経過時間(秒単位)。StringSE
cookieMaxAgeSecondsExpression
cookieMaxAgeSeconds()
の Jakarta Expression Language 式バリアント。StringSE
cookieName
覚えているクッキーの名前。boolean
cookieSecureOnly
覚えている Cookie は安全なプロトコルを使用してのみ送信する必要があることを示すフラグ(例:StringSE
cookieSecureOnlyExpression
cookieSecureOnly()
の Jakarta Expression Language 式バリアント。boolean
isRememberMe
私を覚えておくべきかどうかを判断するためのフラグ。StringSE
isRememberMeExpression
私を覚えているかどうかを判断するための Jakarta Expression Language 式を使用する必要があります。
要素の詳細
cookieMaxAgeSeconds
int cookieMaxAgeSeconds
Remember mecookie の最大経過時間(秒単位)。デフォルトは 1 日です。- 戻り値:
- 秒単位の最大年齢
- 関連事項:
Cookie.setMaxAge(int)
- デフォルト:
- 86400
cookieMaxAgeSecondsExpression
StringSE cookieMaxAgeSecondsExpression
cookieMaxAgeSeconds()
の Jakarta Expression Language 式バリアント。式は整数の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessor
の Jakarta Expression Language 3.0 で指定されたデフォルトクラス、およびインターセプターターゲットを参照する暗黙オブジェクト "self" と現在のHttpMessageContext
を参照する "httpMessageContext" も使用できます。この属性とcookieMaxAgeSeconds()
の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Remember mecookie の最大経過時間を秒単位で指定する整数に評価される式。
- デフォルト:
- ""
cookieSecureOnly
boolean cookieSecureOnly
Remember me cookie は安全なプロトコル(HTTPS や SSL など)を使用してのみ送信する必要があることを示すフラグ。- 戻り値:
- 安全なプロトコルを使用して Cookie を送信する必要がある場合は true、どのプロトコルでも false のみ。
- 関連事項:
Cookie.setSecure(boolean)
- デフォルト:
- true
cookieSecureOnlyExpression
StringSE cookieSecureOnlyExpression
cookieSecureOnly()
の Jakarta Expression Language 式バリアント。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessor
の Jakarta Expression Language 3.0 で指定されたデフォルトクラス、インターセプターターゲットを参照する暗黙オブジェクト "self"、および現在のHttpMessageContext
を参照する "httpMessageContext" も使用できます。この属性とcookieSecureOnly()
の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Remember mecookie の最大経過時間を秒単位で指定する整数に評価される式。
- デフォルト:
- ""
cookieHttpOnly
boolean cookieHttpOnly
Remember me cookie をクライアント側のスクリプトコードに公開してはならず、HTTP リクエストでのみ送信する必要があることを示すフラグ。- 戻り値:
- Cookie を HTTP リクエストでのみ送信する必要がある場合(クライアント側のスクリプトコードで使用できない場合)は true、それ以外の場合は false。
- 関連事項:
Cookie.setHttpOnly(boolean)
- デフォルト:
- true
cookieHttpOnlyExpression
StringSE cookieHttpOnlyExpression
cookieHttpOnly()
の Jakarta Expression Language 式バリアント。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessor
の Jakarta Expression Language 3.0 で指定されたデフォルトクラス、インターセプターターゲットを参照する暗黙オブジェクト "self"、および現在のHttpMessageContext
を参照する "httpMessageContext" も使用できます。この属性とcookieHttpOnly()
の両方が指定されている場合は、この属性が優先されます。- 戻り値:
- Cookie を HTTP リクエストでのみ送信する必要がある場合は true と評価され、それ以外の場合は false と評価される式。
- デフォルト:
- ""
cookieName
StringSE cookieName
覚えているクッキーの名前。- 戻り値:
- クッキーの名前
- 関連事項:
Cookie.getName()
- デフォルト:
- "JREMEMBERMEID"
isRememberMeExpression
StringSE isRememberMeExpression
"Remember me" を使用するかどうかを決定するための Jakarta Expression Language 式。これは、認証を必要とするすべてのリクエストに対して評価されます。式はブール値の結果に評価される必要があります。すべての名前付き CDI Bean は、式で使用できます。また、ELProcessor
の Jakarta Expression Language 3.0 で指定されたデフォルトクラス、およびインターセプターターゲットを参照する暗黙オブジェクト "self" と現在のHttpMessageContext
を参照する "httpMessageContext" も使用できます。- 戻り値:
- 私を覚えているかどうかを判断する Jakarta Expression Language 式を使用する必要があります
- デフォルト:
- ""