0

私はSpring-MVCアプリケーションに取り組んでおり、アプリケーションへのログインに成功した後、ユーザーを元の場所と同じ場所にリダイレクトする必要があるユースケースに対処する必要があります。

Referer私はのようなHTTPヘッダーを使用して出くわしました

final String refer = request.getHeader("Referer");

Refererしかし、いくつかの研究開発を行った後、信頼性が低く、ファイアウォールとブラウザがそれをブロックして、アプリケーションが正しく機能しない可能性があるというさまざまなスレッドに出くわしました。

これを達成する他の方法はありますか?または春に、ユーザーが来た場所から場所(URL)に関する情報を取得して、どこかに保存し、ユーザーが正常にログインしたら取得できるようにするにはどうすればよいですか。Spring セキュリティで同様の機能を見てきました。

4

1 に答える 1

0

まあ、それは実際には非常に簡単です:

  • 認証されていないユーザーが、アプリ内の保護されたリソースにアクセスしようとしています
  • セキュリティ フィルタがリクエストをインターセプトする
  • フィルタは、アクセスされた保護されたリソースの URL をセッション属性に保存します
  • フィルタはログイン画面に転送します
  • ログインが成功すると、セッションから URL が取得され、ユーザーはこの URL にリダイレクトされます。

GET リクエストを使用して保護されたリソースにアクセスする場合にのみ、これを行います。もう 1 つの方法は、保護されたリソースの URL をログイン フォームの隠しフィールドに格納することです。

于 2012-05-27T12:49:58.033 に答える