2

トークンを使用してログインする代替手段をユーザーに提供したいと考えています。私はすでに PreAuthenticationFilter クラスでユーザーの認証を処理していますが、それから私を起動する必要があります

AuthenticationSuccessHandler.onAuthenticationSuccess()

これは

super.onAuthenticationSuccess()

の基本クラスでメソッドを起動します

SavedRequestAwareAuthenticationSuccessHandler.

AuthenticationSuccessHandler事前認証フィルターから を起動するにはどうすればよいですか? SecurityContextHolder自動的に発射されると思って認証を設定してみましたAuthenticationSuccessHandlerが、そうではありません。これは私がそれをやろうとした方法です:

Authentication authentication = new UsernamePasswordAuthenticationToken(Username, Password);
SecurityContextHolder.getContext().setAuthentication(authentication);

残念ながら、それはうまくいきません。AuthenticationSuccessHandlerしたがって、事前認証フィルターから を起動する方法を知る必要があります。

4

2 に答える 2

1

RememberMeAuthenthicationFilterおそらく、Spring-Security でがどのように機能するかに触発される可能性があります。への参照がありAuthenticationSuccessHandler、手動で呼び出しますonAuthenticationSuccess

于 2012-07-27T21:31:26.320 に答える