2

というJPAエンティティがありMemberます。このエンティティにSpring SecurityUserDetails実装し、カスタム JPA ベースのUserService.

その前に、整理したいいくつかの懸念事項があります。

  • Memberエンティティにはかなりの数のプロパティがあります。Memberが実装UserDetailsされて HttpSession に格納されるようになったこと(「参考文献」を参照HttpSessionSecurityContextRepository)は、セッションの使用に大きな影響を与える可能性がありますか?
  • Member呼び出すだけで現在ログインしているを取得できますか:他の場所で更新されたときに、そのすべてのプロパティが適切に同期されたままになることを期待できますSecurityContextHolder.getContext().getAuthentication().getPrincipal();か?
4

1 に答える 1

2
impact session usage significantly?

いいえ。

expect all its properties to remain synchronized properly when they are updated elsewhere?

いいえ、自分で管理する必要があります...つまり、どこかで更新するときは、メモリ内のインスタンスも更新するようにしてください:

Member member = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
member.setYourField(yourValue); //
于 2013-09-05T14:06:38.367 に答える