クラス AbstractUserDetailsReactiveAuthenticationManager

java.lang.ObjectSE
org.springframework.security.authentication.AbstractUserDetailsReactiveAuthenticationManager
実装されたすべてのインターフェース:
org.springframework.beans.factory.Awareorg.springframework.context.MessageSourceAwareReactiveAuthenticationManager
既知の直属サブクラス
UserDetailsRepositoryReactiveAuthenticationManager

public abstract class AbstractUserDetailsReactiveAuthenticationManager extends ObjectSE implements ReactiveAuthenticationManager, org.springframework.context.MessageSourceAware
サブクラスが UserDetails オブジェクトをオーバーライドして操作できるようにするベース ReactiveAuthenticationManager

検証に成功すると、UsernamePasswordAuthenticationToken が作成され、呼び出し元に返されます。トークンには、ユーザー名の String 表現、または認証リポジトリから返された UserDetails がプリンシパルとして含まれます。

導入:
5.2
  • フィールドの詳細

    • logger

      protected final org.apache.commons.logging.Log logger
    • messages

      protected org.springframework.context.support.MessageSourceAccessor messages
  • コンストラクターの詳細

    • AbstractUserDetailsReactiveAuthenticationManager

      public AbstractUserDetailsReactiveAuthenticationManager()
  • メソッドの詳細

    • authenticate

      public reactor.core.publisher.Mono<Authentication> authenticate(Authentication authentication)
      インターフェースからコピーされた説明: ReactiveAuthenticationManager
      提供された Authentication を認証しようとします
      次で指定:
      インターフェース ReactiveAuthenticationManagerauthenticate 
      パラメーター:
      authentication - テストする Authentication
      戻り値:
      認証が成功すると、Authentication が返されます。認証を判別できない場合、空の Mono が返されます。認証が失敗すると、Mono エラーが返されます。
    • setPasswordEncoder

      public void setPasswordEncoder(PasswordEncoder passwordEncoder)
      パスワードの検証に使用される PasswordEncoder。デフォルトは PasswordEncoderFactories.createDelegatingPasswordEncoder() です
      パラメーター:
      passwordEncoder - 使用する PasswordEncoder。null にはできません
    • setScheduler

      public void setScheduler(reactor.core.scheduler.Scheduler scheduler)
      UserDetailsRepositoryReactiveAuthenticationManager が使用する Scheduler を設定します。最新のパスワードエンコーディングは CPU を集中的に使用するタスクであり、ブロックされないため、デフォルトは Schedulers.newParallel(String) です。つまり、検証は CPU の数によって制限されます。一部のアプリケーションでは、Scheduler をカスタマイズできます。例: ユーザーが安全でない NoOpPasswordEncoder を使用して立ち往生している場合、Schedulers.immediate() を活用したい場合があります。
      パラメーター:
      scheduler - 使用する Scheduler。null にはできません。
      導入:
      5.0.6
    • setUserDetailsPasswordService

      public void setUserDetailsPasswordService(ReactiveUserDetailsPasswordService userDetailsPasswordService)
      認証が成功したときにパスワードをアップグレードするために使用するサービスを設定します。
      パラメーター:
      userDetailsPasswordService - 使用するサービス
    • setPostAuthenticationChecks

      public void setPostAuthenticationChecks(UserDetailsChecker postAuthenticationChecks)
      認証後に、読み込まれた UserDetails オブジェクトを検証するために使用される戦略を設定します。
      パラメーター:
      postAuthenticationChecks - UserDetailsChecker
      導入:
      5.2
    • setMessageSource

      public void setMessageSource(org.springframework.context.MessageSource messageSource)
      次で指定:
      インターフェース org.springframework.context.MessageSourceAwaresetMessageSource 
      導入:
      5.5
    • setCompromisedPasswordChecker

      public void setCompromisedPasswordChecker(ReactiveCompromisedPasswordChecker compromisedPasswordChecker)
      認証を成功させる前に使用する ReactiveCompromisedPasswordChecker を設定します。デフォルトは null です。
      パラメーター:
      compromisedPasswordChecker - 使用する CompromisedPasswordChecker
      導入:
      6.3
    • retrieveUser

      protected abstract reactor.core.publisher.Mono<UserDetails> retrieveUser(StringSE username)
      サブクラスが実装固有の場所から UserDetails を取得できるようにします。
      パラメーター:
      username - 取得するユーザー名
      戻り値:
      ユーザー情報。認証が失敗すると、Mono エラーが返されます。