Comment puis-je obtenir l'Objet de la Session de Printemps?

Je suis relativement nouveau à Printemps et de la sécurité Printemps.

J'ai été de tenter d'écrire un programme où j'avais besoin d'authentifier un utilisateur à la fin du serveur à l'aide de Spring security,

Je suis venu avec les éléments suivants:

public class CustomAuthenticationProvider extends AbstractUserDetailsAuthenticationProvider{
    @Override
    protected void additionalAuthenticationChecks(UserDetails userDetails, UsernamePasswordAuthenticationToken usernamePasswordAuthenticationToken)
                    throws AuthenticationException
    {
        System.out.println("Method invoked : additionalAuthenticationChecks isAuthenticated ? :"+usernamePasswordAuthenticationToken.isAuthenticated());
    }

    @Override
    protected UserDetails retrieveUser(String username,UsernamePasswordAuthenticationToken authentication) throws AuthenticationException 
    {
        System.out.println("Method invoked : retrieveUser");
        //so far so good, i can authenticate user here, and throw exception if not authenticated!!
        //THIS IS WHERE I WANT TO ACCESS SESSION OBJECT
    }
}

Mon cas d'utilisation, c'est que lorsqu'un utilisateur est authentifié, j'ai besoin de placer un attribut comme:

session.setAttribute("userObject", myUserObject);

myUserObject est un objet de la classe que je puisse y accéder tout au long de mon code serveur à travers de multiples demandes de l'utilisateur.