Controleur
Nous pouvons nous passer de la page /auth/login, car l'utilisateur devra saisir ces identifiant pour se connecter à chacune des pages.
Ainsi pour accéder à restricted il devra donner son identifiant et son mot de passe.
@GetMapping("/restricted")
public String retricted() {
return "Welcome to Restricted page";
}
Basic authentification avec Spring
La documentation Spring explique très bien l'authentification Basic.

Spring fourni par défaut :
- un filtre
BasicAuthenticationFilterintercepte la requête - qui va crée le
UsernamePasswordAuthenticationFilter - qui va appeler
AuthenticationManager. On retombe sur le diagramme de séquence décrit précédement, avec un appel auDaoAuthenticationProvider - pour au final ajouter l'authentification au
SecurityContext
Conséquence
Ainsi, l'authentification (le login) est assuré en interne par Spring, nous n'avons pas besoin de coder de méthode login().
Diagramme de séquence

StackTrace

- Nous avons bien un ensemble de filtre exécutés, dont le
BasicAuthenticationFilter. - Qui va faire appel à une intance de
AuthenticationManager, en l'occuranceProviderManager - Qui lui, va appeler le
DaoAuthenticationProviderafin de fournir uneAuthentication
L'invocation du contrôleur est réalisée automatiquement après, une fois la Security Filter Chain "validée", c'est-à-dire que l'utilisateur est bien authentifié.