SpringSecurityを利用するとControllerからもこんな感じで、簡単に主体情報を取得できます。 SecurityContextHolder.getContext().getAuthentication().getPrincipal(); ただし、この実装を利用した場合、 ユニットテスト時は当然主体情報を取得できません。 認証情報がありませんので。。。 そのためテストをする場合は、 その認証情報を以下のように、 TestingAuthenticationTokenとしてSecurityContextHolderに格納してあげると良いとのこと。 // User情報は通常格納する主体情報を利用します。 // SpringSecurityを利用する場合は大体UserDetailsを継承しているかと。 User user = new User() {}; // Test用の認証Tok