0

Spring Security - Pre authentication シナリオを使用して、次の認証の問題を解決できることを確認したいと思います。

問題:

  1. ユーザーがレガシー システム経由でログインする
  2. ページを Web システムに呼び出します (Spring MVC で作成)
  3. ページを Web システム (従来のシステム) に呼び出すと、トークン、ユーザー名、および user_role が渡されます。
  4. 次に、Web システムは、レガシー システムによって提供される Web サービスを使用して、ユーザー名とトークンを検証します。
  5. 有効なセッションが Web システムで作成され、ユーザーが Web ページを使用できる場合、ユーザーはエラー ページに誘導されます。

春のセキュリティが提供する事前認証シナリオを利用できますか? または、トークンとユーザーの有効性を検証する Spring AOP アスペクトを作成する方が簡単ですか?

春のセキュリティのドキュメントは、事前認証シナリオの正しい使用法を説明するのにあまり適していません。最適なルートを案内してください。さらに情報が必要な場合はお知らせください。

良い例やリンクを歓迎します。

4

2 に答える 2

1

レガシーシステムと Web システムは 2 つの異なるアプリケーションですか?

基本的に、別のWebアプリケーションのレガシーシステムのユーザーからログオンセッションを作成したいと考えています。2 番目のシステムへの自動ログオンのようなものです。Spring Security はここで役立ちますが、OAuth 1.0 または 2.0 のサポートを使用する必要があります。 http://static.springsource.org/spring-security/oauth/

https://github.com/SpringSource/spring-security-oauth/wiki/oauth1

かなり前に、同様のシナリオで OAuth1.0 を使用しました。私の頭の上では、OAUth には事前定義された手順があると思います。 ) それを取得すると、サーバー上の宛先の URL に要求を行うことができ、アクセスが許可されます。

私が書いたものよりも複雑ですが、Spring oauth サポートの良い点は、Spring がトークン ビットを処理し、最小限のコーディングを行う必要があることです。これがあなたの質問に答えることを願っています。

于 2013-04-15T13:57:54.583 に答える
0

ユーザーがレガシーシステムにログインした後、サーバー側で認証トークンを生成できます。これはDBに保存され、ユーザー側ではCookieまたはlocalStorageに保存されます。次に、各リクエストでこのトークンを渡し、こちらの回答で説明したような事前認証フィルターで確認します: https://stackoverflow.com/a/372​​04764/1562234

于 2016-05-13T12:02:49.930 に答える