Spring Security を使用すると、次のDaoAuthenticationProvider
ように記述できます。
http://static.springsource.org/spring-security/site/docs/2.0.x/reference/dao-provider.html
キャッシングもあります(その記事で説明されているように)。
問題は、要求が適切なユーザー名 (既にキャッシュにある) で受信されたが、パスワードが不適切な場合、適切なユーザー名/パスワードであるかのようにキャッシュからユーザーを返すことです。ユーザー名をキーとして使用するため、パスワードはまったく関係ありません。
キャッシュからユーザーを返す正確なコード:
UserDetails user = this.userCache.getUserFromCache(username);
誰かが以前にこの問題に対処したことがありますか? パスワードが同じかどうかも確認できますが、それはカスタムのものです。
ありがとうございました。