1) Je suppose que, vous pouvez choisir le comportement par défaut en mettant en œuvre votre propre AuthenticationSuccessHandler
et passant à <form-login authentication-success-handler-ref="..."/>
2) Ceci est en fait pas dans la veine de la séparation du paradigme des préoccupations de sécurité du printemps où l'authentification Le fournisseur remplit l'objet Authentication
et un autre filtre persiste/remplit l'authentification dans/depuis la session HTTP. Néanmoins, vous pouvez généralement accéder à la requête HTTP en cours et, par conséquent, à une session, depuis n'importe où dans la chaîne de traitement des demandes en ajoutant le filtre org.springframework.web.context.request.RequestContextListener
à votre web.xml
. Utilisez ensuite ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest().getSession()
pour accéder à la session à partir de votre fournisseur d'authentification.