Red de conocimiento informático - Problemas con los teléfonos móviles - Explicación detallada cinco de la seguridad de Spring: WebSecurityConfigurerAdapter

Explicación detallada cinco de la seguridad de Spring: WebSecurityConfigurerAdapter

Explicación 3 de Spring Security: proceso de creación de SecurityFilterChain Este capítulo presenta que WebSecurityConfigurerAdapter es la clave para construir SecurityFilterChain. En el método de inicio de WebSecurityConfigurerAdapter, se creará y guardará en WebSecurity un objeto de instancia HttpSecurity de tipo SecurityBuilder. . propiedad securityFilterChainBuilders y luego use SecurityBuilder para completar la creación de SecurityFilterChain.

El código fuente de WebSecurityConfigurerAdapter es el siguiente

La relación de herencia de HttpSecurity es casi la misma que la de WebSecurity, excepto que implementa una interfaz HttpSecurityBuilder adicional. Los tipos genéricos declarados al mismo tiempo no son los mismos. Cuando se llama al método HttpSecurity build() en WebSecurity para construir DefaultSecurityFilterChain, los métodos HttpSecurity beforeInit(), init(), beforeConfigure(), configure() y performBuild() aún se implementarán uno por uno para completar la compilación.

En resumen, las instancias de HttpSecurity se crean en WebSecurityConfigurerAdapter y se almacenan en la colección WebSecurity, y algunos comportamientos predeterminados se configuran para HttpSecurity en WebSecurityConfigurerAdapter. WebSecurityConfigurerAdapter configura algunos comportamientos predeterminados para HttpSecurity, como CsrfConfigurer, ExpressionUrlAuthorizationConfigurer, FormLoginConfigurer, etc. En este punto, se ha completado el proceso desde el inicio de SpringBoot hasta la creación y el registro del filtro de seguridad. La siguiente pregunta es ¿dónde están la autenticación y la autorización? Esto se explorará en capítulos posteriores.

Reexaminar todo el proceso de inicialización