Reputation: 41
While Upgrading from grails 2.5 to grails 3.x , username password authentication filter is not getting fired.
I am using spring-security core plugin 3.1.1
This is how custom Filter looks like
class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter {
@Override
protected String obtainUsername(HttpServletRequest request) {
return (new CustomPrincipal(request.getParameter('company'), request.getParameter('username'))).toString()
}
@Override
protected String obtainPassword(HttpServletRequest request) {
return request.getParameter('password')
}
}
application.groovy
grails.plugin.springsecurity.filterChain.filterNames = [
'securityContextPersistenceFilter',
'logoutFilter',
'customAuthenticationFilter',
'rememberMeAuthenticationFilter',
'anonymousAuthenticationFilter',
'exceptionTranslationFilter',
'filterInvocationInterceptor'
]
resources.grrovy
customAuthenticationFilter(CustomAuthenticationFilter) {
authenticationManager = ref('authenticationManager')
sessionAuthenticationStrategy = ref('sessionAuthenticationStrategy')
authenticationFailureHandler = ref('internalAuthenticationFailureHandler')
}
Upvotes: 4
Views: 801
Reputation: 69
filterNames map to be defined as shown below:
**grails.plugin.springsecurity.filterChain.filterNames**= [
**pattern**:'/**',
**filters**:'securityContextPersistenceFilter',
'logoutFilter',
'customAuthenticationFilter',
'rememberMeAuthenticationFilter',
'anonymousAuthenticationFilter',
'exceptionTranslationFilter',
'filterInvocationInterceptor'
]
Upvotes: 0