Spring 3 は NTLM 認証をサポートしていないため、Spring 3 Web アプリケーションを使用しています。Spring セキュリティと一緒に使用できる他の代替手段は何ですか? ユーザーが Active Directory にログインするときにアプリケーションに対して認証されるようにするにはどうすればよいですか?
現時点では、Kerberos ソリューションはオプションではありません。NTLM が唯一のオプションです。
どんな助けも非常に高く評価されます。
ありがとう
Spring 3 は NTLM 認証をサポートしていないため、Spring 3 Web アプリケーションを使用しています。Spring セキュリティと一緒に使用できる他の代替手段は何ですか? ユーザーが Active Directory にログインするときにアプリケーションに対して認証されるようにするにはどうすればよいですか?
現時点では、Kerberos ソリューションはオプションではありません。NTLM が唯一のオプションです。
どんな助けも非常に高く評価されます。
ありがとう
問題を解決する最も簡単な方法は次のとおりです。
1) Apache Web サーバーをインストールし、modntlm を使用して NTLM 認証を使用するように構成します。
http://modntlm.sourceforge.net/ (同様に、 http://modauthkerb.sourceforge.net/ を使用して mod_auth_kerb を使用して Kerberos 認証を使用できます)
2) Selvlet コンテナー (JBoss または Tomcat) に mod_jk を構成します。 http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html 認証が成功すると、Apache は REMOTE_USER ヘッダーをサーブレットコンテナーに送信します。ヘッダー (名前による) には、認証されたユーザーのユーザー名が含まれています。TomcatAuthentication="false" を構成して、Apache が REMOTE_USER ヘッダーを送信できるようにします。
3) Spring Security で独自の PreAuthenticatedProcessingFilter を実装および構成します : http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#d0e6167 Request-Header 認証フィルター: http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#d0e6295 また、ユーザー名からドメイン名を省略してください。 . ユーザー名は、NTLM または Kerberos 認証の後、REMOTE_USER ヘッダーで送信されます。
Waffle は、これを実現するために springsecurity で使用できるドロップイン ソリューションです: https://github.com/dblock/waffle
私は、たとえばhybrisでそれを自分で使用しました。彼らにはいくつかの例があります。高負荷時に問題を引き起こす可能性のある jna3.5 を使用するバージョン 1.5 に注意してください。
一度やったことがあります。ここでそれをつかみます。AD レベルでいくつかの小さなセットアップを行う必要があります。こちらまたは github でお気軽に質問してください。