Solución:
Como dicen claramente las firmas de este método, también se indica en la documentación oficial:
antMatcher(String antPattern)
– Permite configurar elHttpSecurity
para que solo se invoque cuando coincida con el patrón de hormiga proporcionado.
mvcMatcher(String mvcPattern)
– Permite configurar elHttpSecurity
para que solo se invoque cuando coincida con el patrón Spring MVC proporcionado.
Generalmente mvcMatcher
es más seguro que un antMatcher
. Como ejemplo:
-
antMatchers("/secured")
solo coincidencias el exacto/secured
URL -
mvcMatchers("/secured")
partidos/secured
al igual que/secured/
,/secured.html
,/secured.xyz
y por lo tanto es más general y también puede manejar algunos posibles errores de configuración.
mvcMatcher
usa las mismas reglas que Spring MVC usa para hacer coincidir (cuando se usa @RequestMapping
anotación).
Si Spring MVC no procesará la solicitud actual, se usará un valor predeterminado razonable usando el patrón como patrón de hormiga. Fuente
Se puede agregar que mvcMatchers
API (desde 4.1.1) es más nuevo que la antMatchers
API (desde 3.1).
AntMatcher()
es una implementación para patrones de ruta de estilo Ant. Parte de este código de mapeo ha sido amablemente prestado de Apache Ant.
MvcMatcher()
usa Spring MVC HandlerMappingIntrospector
para hacer coincidir la ruta y extraer las variables.
Entonces ambos implementan RequestMatcher
interfaz, pero usa diferentes lenguajes de expresión bajo el capó.