2012-03-19 20 views
13

私はいくつかのJavaベースのWebアプリケーションを開発しました。両方のアプリケーションには、ActiveXディレクトリの実装に基づいて個別の認証ロジックがあります。JavaベースのWebアプリケーションのWindows認証、How to?

これをWindows認証に変更して、ユーザーがWebアプリケーションのURLにアクセスするたびにログインページにリダイレクトする代わりに、Windowsの資格情報を確認する必要があります。

私は自分のウィンドウの資格情報をURLに保存したくありません。

これを行うには良い方法はありますか?

+0

これはブラウザに依存しない方法では不可能です。何年も前に私たちはIEとNetegrity(現在はCA)SiteMinderを組み合わせてこれを達成しました。 – Perception

+1

@Perception - 実際、Spring Security + KerberosはKerberos認証をサポートするすべてのブラウザでこの種の機能を提供することができます。 – cdeszaq

+0

あなたがスプリングセキュリティを使用していない場合は、[SPNEGO Filter](http://spnego.sourceforge.net/index.html) –

答えて

1

Active Directoryを使用してWindows上の認証レイヤーを公開することをお勧めします。これは、Spring Securityのようなもので打つことができます。

これは、アプリケーションを使用している誰もが自分のWindowsログインを使用するように強制します。

+1

を試してください。認証プロバイダをSpring Securityでレイヤーすることができるため、ADに対してLDAPを使用すると_ログインしてアプリを使用する。 Spring Securityは驚くほど柔軟性があります。 – cdeszaq

10

Webアプリケーションに必要な統合のレベルに応じて、Spring Securityは、あなたが後にしていることのほぼすべての面をカバーする必要があります。

ログインページにリダイレクトし、LDAP経由でActive Directoryサーバーに対して入力された資格情報を認証することが可能な場合は、を使用します。

シングルサインオン(SSO)フローをさらに必要とし、ユーザーが権限のあるActive Directoryサーバー(たとえば、ドメインにログインしている)に対して既に認証されている場合は、Kerberos pluginがユーザーがWebアプリケーションに移動するだけで、他の認証手順を経る必要がないため、より魅力的です。システムは裏側でそれを処理します。

Kerberosベースの認証を最初に試して、それが失敗した場合は、ログインフォームとLDAPベースの認証に戻ります。

これ以上のことが必要な場合、Spring Securityは、必要に応じてOpenID認証またはアプリ内認証を使用するのに十分な柔軟性を備えています。

関連する問題