Principe de sécurité de Spring
Spring Security adopte le modèle de conception de la chaîne de responsabilité. Il existe une longue chaîne de filtrage. Tout d'abord, le client lance une. demande, entrez dans la chaîne de filtrage de sécurité, puis déterminez s'il s'agit d'une connexion, et enfin trouvez le gestionnaire d'authentification correspondant basé sur l'URI pour l'authentification.
Organigramme
Description du processus
Le client lance une demande et entre dans la chaîne de filtrage de sécurité.
Lorsque vous atteignez le LogoutFilter, déterminez s'il s'agit du chemin de déconnexion. S'il s'agit du chemin de déconnexion, accédez au logoutHandler. Si la déconnexion réussit, accédez au logoutSuccessHandler pour traiter le. déconnexion réussie. Si la déconnexion échoue, alors By ExceptionTranslationFilter; s'il ne s'agit pas du chemin de déconnexion, passez directement au filtre suivant.
Lorsque vous atteignez le UsernamePasswordAuthenticationFilter, déterminez s'il s'agit du chemin de connexion. Si tel est le cas, entrez le filtre pour effectuer l'opération de connexion. Si la connexion échoue, accédez au gestionnaire d'échec de connexion AuthenticationFailureHandler pour. traitement. Si la connexion réussit, accédez ensuite au processeur de réussite de connexion AuthenticationSuccessHandler pour le traitement. S'il ne s'agit pas d'une demande de connexion, elle n'entrera pas dans le filtre.
Quand il s'agit de FilterSecurityInterceptor, il obtiendra l'uri. Selon l'uri, il trouvera le gestionnaire d'authentification correspondant. Le gestionnaire d'authentification fera le travail d'authentification. réussi, il ira à la couche Contrôleur. Sinon, il ira à la couche Contrôleur. Accédez au gestionnaire d'échec d'authentification AccessDeniedHandler pour le traitement.
Tutoriel recommandé : "Tutoriel Java"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!