クラス ReactiveLifecycleAwareSessionManager

実装済みのインターフェース一覧:
DisposableBeanAuthenticationEventMulticasterReactiveSessionManagerVaultTokenSupplier

public class ReactiveLifecycleAwareSessionManager extends LifecycleAwareSessionManagerSupport implements ReactiveSessionManager, DisposableBean
ライフサイクルを意識した session manager のリアクティブ実装。この ReactiveSessionManager は、requestauthentication method からトークンを取得し、複数のスレッドが同時にトークンを取得しようとした場合にトークンが 1 回だけ取得されることを保証します。

トークンにリース期間がある場合、トークンは非同期的に更新されます。これは、トークンの有効期限が切れる 5 秒前に発生します。LifecycleAwareSessionManagerSupport.REFRESH_PERIOD_BEFORE_EXPIRY を参照してください。

この ReactiveSessionManager は、LoginToken が不要になったときにそれを取り消すための DisposableBean も実装します。トークンが失効すると、定期的なトークンのリフレッシュが停止されます。トークンは、関連付けられた VaultTokenSupplierservice token を返した場合にのみ取り消されます。

トークンの更新でクライアント側のエラーが発生した場合、トークンが取り消されたか期限切れになったと見なされます。トークンの状態を破棄するため、次の試行で別のログイン試行が行われます。

デフォルトでは、VaultToken は Vault で検索され、更新可能性、残りの TTL、アクセサー、型が決定されます。LifecycleAwareSessionManagerSupport.setTokenSelfLookupEnabled(boolean) を参照してください。

セッションマネージャーは、認証イベントを AuthenticationListener および AuthenticationErrorListener にディスパッチします。

このクラスはスレッドセーフであり、ロックのない同期を使用します。

導入:
2.0
作成者:
Mark Paluch
関連事項: