春のセキュリティでDaoAuthenticationProvider
内からHttpServletRequest
オブジェクトにアクセスする必要があります。DaoAuthenticationProviderでHttpServletRequestにアクセスすると、Springセキュリティで認証されます
セキュリティコンポーネントはDaoAuthenticationProvider
を拡張し、authenticate
メソッドをオーバーライドしてカスタム認証/検証を実行します。リクエストURLに含まれるユーザーのIPアドレスをクエリ文字列パラメータ(例:http://domain.com/context?ip=192.168.0.1
)として検証するには、追加のチェックが必要です。
私が試みている現在のアプローチは、RequestContextHolder
スレッドローカルを使用し、私のカスタムでhttpリクエストを取得することですDAOAuthenticationProvider
。私はここに、春のフォーラムで読ん
他のいくつかのソリューションはAuthenticationDetailsSource
、custom-filter
の使用とIが原因のセキュリティを春に新しいことに理解していない他のステップを注入することをお勧めているようです。
認証を実行するために同じセキュリティコンポーネントを使用するさまざまなWebアプリケーションがあります。
誰かが正しい方向で私を指摘したり、以前に実装された方法を教えてもらえますか?
どのバージョンのSpring Securityを使用していますか? – sourcedelica
Springセキュリティ3.0.4。私がRequestContextHolderを認証中に使用すると、Spring Securityで取得したものと同じHTTP要求があるか、RequestContextHolderにhttp要求の別のインスタンスがあり、認証トークンで使用されているものが異なるという面白い結果につながりますか? –