2009-04-08 22 views
4

私はUserDetailsManagerインターフェイスについて興味があります。これは、リファレンスガイドに記載されていないだとのJavaDocにそれは次のように説明しています:Springセキュリティ:UserDetailsManagerインターフェイスは何のために使用されますか?もっと!

既存のものを、新しいユーザーを作成し、更新する 機能を提供 UserDetailsServiceの拡張子を。

UserDetailsManagerインターフェイスを実装するときは、独自の5つのメソッドを実装する必要があります。また、拡張するUserDetailsS​​erviceから継承するメソッドを実装する必要があります。

これらのメソッドは、createUser、updateUser、deleteUser、changePassword、userExists、および継承されたメソッドloadUserByUsernameです。

Spring Securityフレームワークv2.0.4には、UserDetailsManagerの2つの具体的な実装があります:JdbcUserDetailsManagerLdapUserDetailsManagerです。

インターフェイスと具体的な実装の両方がLuke Taylorによって実装されています。

Spring Securityフレームワークは具体的な実装を決して使用していないようです。

私の結論は、フレームワークのユーザーが使用することを決めるかもしれないし、使用しないかもしれない利便性の高いインターフェイスとして純粋にインターフェイスが含まれているということです。おそらく、後でより具体的な実装が存在し、フレームワークユーザーのためにいくつかの作業を取り除くという考えがあったでしょうか?

私が探しているものは、より多くの情報です。情報を価値あるものにするには、直接または間接的に(これはおそらくそうだと思います)から来ている必要があります。私が上でやったように誰もが推測することができます。

これは単なる利便性の高いインターフェースです。 リファレンスガイドにも記載されていないインターフェイスやクラスがありますか?私は開発中に役立つかもしれないので、私は知りたいと思っています。

実際にどのフレームワークがフレームワーク内で使用されているかを調べるために、すべてのインターフェイスとクラスを調べるのはちょっと面倒ですし、リフレクションが含まれているとエラーが発生する可能性があります。

答えて

2

あなたの推測は正しいです。それは「それは非常に一般的に要求された機能だと、既存のインタフェースとクラスを拡張することによって達成することが合理的に簡単です。ので、は」このインタフェースを記入する別のプロジェクトを作成する

There has been talk、それは持っている追加されましたoriginal feature requestによると、まだ捕らえられていない。

関連する問題