No se define ningún bean llamado 'springSecurityFilterChain'

No Bean Namedspringsecurityfilterchainis Defined

1. Problema

Este artículo analiza el problema de configuración de Spring Security: el proceso de inicio de la aplicación genera la siguiente excepción:

|_+_|

2. razones

La razón de esta anomalía es muy Simple - Spring Security Busque un bean llamado springSecurityFilterChain (predeterminado), pero no pudo encontrarlo. El filtro principal de Spring Security - DelegatingFilterProxy - en web.xml Definimos este frijol:



|_+_|

Esto es solo un proxy, toda la lógica se confiará al bean springSecurityFilterChain



3. Solución

La razón más común de esta falta de contexto es que la configuración del bean XML de seguridad no está definida yuan Su:



|_+_|

Si utiliza la seguridad de los espacios de nombres de configuración XML, como se muestra en el ejemplo anterior, la declaración garantizará un elemento simple para crear un bean de filtro y todo comenzó correctamente:

|_+_|

Otra posible causa es que la configuración de seguridad no se importará al contexto general de una aplicación web.

en caso Archivo de configuración XML de seguridad llamado springSecurityConfig.xml, asegúrese de importar capital fuente:



|_+_|

O use XML:

|_+_|

Finalmente, puede cambiar el nombre predeterminado para el filtro en el bean web.xml, a menudo usando filtros existentes con Spring Security:

|_+_|

4. Resumen

esta Discutimos un problema de Spring Security muy específico, la falta de un bean de cadena de filtro, y mostramos las soluciones a problemas comunes.