25

異なるドメインと異なるサーバーでホストされている複数のアプリケーションにシングル サインオン [SSO] を実装しています。

ここに画像の説明を入力

写真に示されているように、実際に LDAP とやり取りしてユーザーを認証する認証サーバーを導入しています。Authenticate Server と使用/対話するアプリケーションは、異なるサーバーとドメインでホストされます。

SSO の場合、セッション変数を使用できません。さまざまなサーバーとさまざまなアプリケーション、さまざまなドメインがあり、ドメイン レベルの Cookie/セッション変数は役に立ちません。

それら全体でSSOに使用できるより良いソリューションを探しています。実証済みの実装は存在しますか? もしそうなら、それを投稿するか、これについて正しい方向に向けてください。

4

5 に答える 5

3

OAuth を確認することをお勧めします。これは、facebook、google、windows live などを含むいくつかの大規模な組織で使用されている優れた認証および承認プロトコルです。最初は習得に時間がかかるかもしれませんが、製品グレードのソリューションです。

また、Java、Ruby、PHP、およびその他のさまざまなプログラミング言語用のライブラリもあります。

たとえば、次のサーバー側の実装は Java で使用できます。

  • Apache Amber (ドラフト 22)
  • OAuth の Spring セキュリティ
  • Api 認可サーバー (v2-31)
  • Restlet フレームワーク (ドラフト 30)
  • アパッチ CXF

次のクライアント側 Java ライブラリも利用できます。

  • Apache Amber (ドラフト 22)
  • 春の社交
  • OAuth の Spring セキュリティ
  • Restlet フレームワーク (ドラフト 30)

詳細については、こちらを参照してください。

于 2013-08-16T14:40:37.137 に答える
1

より大きな問題は、シングル サインオンをどのように実装するかです。多くのオープン ソースやプロプライエタリ (IBM Tivoli) 製品でさえも、クロス ドメイン シングル サインオン機能を提供しています。これは、クロス ドメイン sso を実装する最も簡単で最良の方法です。選択した sso サーバーで使用する LDAP サーバーを構成できます。

オープン sso を例にとると、 http://docs.oracle.com/cd/E19681-01/820-5816/aeabl/index.htmlでクロス ドメイン シングル サインを構成するための記事があります。

open sso で LDAP を構成するには、 http://docs.oracle.com/cd/E19316-01/820-3886/ghtmw/index.html

この問題に関する参照は、ここのきちんとした図に示されています http://docs.oracle.com/cd/E19575-01/820-3746/gipjl/index.html

使用するオファリングに応じて、クロス ドメイン シングル サインオンを構成できます。

これにより、ダイアグラムは次のようになります。認証サーバーは、選択した sso サーバーと対話するためのユーティリティです。

sso と通信する認証サーバーを持つことは、健全なアーキテクチャの原則です。別のアプリケーションから http 経由で呼び出すことができる REst エンドポイントとして認証するための呼び出しを行うことをお勧めします。

クロス ドメイン シングル サインオン

于 2013-08-14T21:56:46.163 に答える
0

レストサービスはご利用いただけません。

私がRefferer Url認証と呼んでいるものを使用できます .www.AAAA.comで実行されている認証アプリケーションがあるとします.認証したいアプリケーションでは、you could have a filter which looks for a authenticated cookie in its domain else redirect to www.AAAA.com for authentication

Successfull authentication、できますpass the user profile information as encrypted GET / POST data back to the application

于 2013-08-08T08:39:37.320 に答える