The spring security system includes the following seven key functional components:
L.AuthenticationContains the authorization information of principal, credential, and principal. It can also contain other information about the customer initiating the authentication request, such as the IP address.
2.Contextholder, Where threadlocal is used to store the authentication object.
3.AuthenticationmanagerUsed to authentication objects in contextholder.
4.AccessdecisionmanagerTo authorize a specific operation.
5.RunasmanagerWhich is used to selectively Replace the authentication object when a specific operation is performed.
6.Secure objectThe Interceptor is used to coordinate the execution of authenticationmanager, accessdecissionmanager, runasmanager, and specific operations.
7.ObjectdefinitionsourceIncludes the authorization definitions for specific operations.