Spring SecurityプラグインをGrailsアプリケーションにインストールし、ログインが正常に機能することを確認しましたが、ユーザーの登録を作成し、登録後にユーザーをコードで手動で認証したい場合、できませんでした。
それに対する解決策はありますか?Spring Securityでは、認証されたユーザーをセッションまたはSpringSecurityコンテキストにプッシュするだけの単純な使用が許可されていないのはどうしてですか。これが私が試したことです:
UsernamePasswordAuthenticationToken uat = new UsernamePasswordAuthenticationToken(user.email, user.password, null);
uat.setDetails(user);
SecurityContext context = SecurityContextHolder.getContext();
context.setAuthentication(uat);
これはユーザーを認証しますが、次のコードでユーザーを取得できませんでした。
springSecurityService.currentUser
これだけで:
SecurityContextHolder.getContext().getAuthentication().getPrincipal();
私は今混乱しています、SpringSecurityを使用する正しい方法は何ですか。
独自のUserDetailsServiceの構築を開始しましたが、混乱して、独自の認証方法を作成する場合の次のステップがわかりません。