Announcement Announcement Module
Collapse
No announcement yet.
after login redirects incorrectly Page Title Module
Move Remove Collapse
This topic is closed
X
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • after login redirects incorrectly

    I've got a curious error going on. To jumpstart my configuration with acegi, I pulled the applicationContext-acegi-security.xml from the contacts app. Just to test before I started customizing, I stripped out the jdbc based dao provider and put in an in memory one configured with one user(user=pass,ROLE_USER). I also placed the debug.jsp file behind both a normal web resource folder (/secure) and mapped to a spring mvc resolver. I'm deployed on tomcat 5.5.9 and accessing using Firefox 1.0.7 and IE 6.0.29. When I try to access one of the secured resources, normal authentication proceeds as expected up until redirecting back ot the originally requested resource..... in Firefox, I get a 404 with the browser trying to access favicon.ico. I am successfully authenticated, however, as I can access the secured resource by typing in it's url. In IE, it successfully forwards to the secured page. Firefox and IE logs are identical up to
    Code:
    00:59:02.063 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:280) - ContextHolder set to null as request processing completed
    at this point IE stops processing and Firefox continues. For brevity's sake, I've only included the log from the firefox attempt.

    Logs from firefox
    Code:
    00:59:01.969 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/secure/secure.htm'; to: '/secure/secure.htm'
    00:59:01.969 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /**; matched=true
    00:59:01.969 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'httpSessionContextIntegrationFilter'
    00:59:01.969 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'authenticationProcessingFilter'
    00:59:02.000 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'basicProcessingFilter'
    00:59:02.000 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'rememberMeProcessingFilter'
    00:59:02.000 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'anonymousProcessingFilter'
    00:59:02.000 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'securityEnforcementFilter'
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 1 of 6 in additional filter chain; firing Filter: '[email protected]1a7789c'
    00:59:02.000 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:183) - Obtained from ACEGI_SECURITY_CONTEXT a valid Context and set to ContextHolder: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 2 of 6 in additional filter chain; firing Filter: '[email protected]c5f'
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 3 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter@87e704'
    00:59:02.000 DEBUG (net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter:157) - Authorization header: null
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 4 of 6 in additional filter chain; firing Filter: '[email protected]91e'
    00:59:02.000 DEBUG (net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter:108) - ContextHolder not replaced with remember-me token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 5 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter@51ef4e'
    00:59:02.000 DEBUG (net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter:147) - ContextHolder not replaced with anonymous token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.000 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /secure/secure.htm at position 6 of 6 in additional filter chain; firing Filter: '[email protected]44e'
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/secure/secure.htm'; to: '/secure/secure.htm'
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /index.jsp; matched=false
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /home.htm; matched=false
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /logoff.jsp; matched=false
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /login.jsp*; matched=false
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/secure/secure.htm'; pattern is /**; matched=true
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:348) - Secure object: FilterInvocation: URL: /secure/secure.htm; ConfigAttributes: [ROLE_USER]
    00:59:02.016 DEBUG (net.sf.acegisecurity.providers.ProviderManager:156) - Authentication attempt using net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:386) - Authenticated: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS
    00:59:02.016 DEBUG (org.springframework.context.support.AbstractApplicationContext:222) - Publishing event in context [Root WebApplicationContext]: net.sf.acegisecurity.intercept.event.AuthorizationFailureEvent[source=FilterInvocation: URL: /secure/secure.htm]
    00:59:02.016 DEBUG (net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter:198) - Access is denied (user is anonymous); redirecting to authentication entry point
    net.sf.acegisecurity.AccessDeniedException: Access is denied.
    	at net.sf.acegisecurity.vote.AffirmativeBased.decide(AffirmativeBased.java:86)
    	at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:394)
    	at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:81)
    	at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:114)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:206)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:225)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
    	at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    	at java.lang.Thread.run(Thread.java:595)
    00:59:02.031 DEBUG (net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter:249) - Authentication entry point being called; target URL added to Session: http://localhost/secure/secure.htm
    00:59:02.031 DEBUG (net.sf.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint:171) - Redirecting to: http://localhost/login.jsp
    00:59:02.031 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:271) - Context stored to HttpSession: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.031 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:280) - ContextHolder set to null as request processing completed
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/login.jsp'; to: '/login.jsp'
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /**; matched=true
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'httpSessionContextIntegrationFilter'
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'authenticationProcessingFilter'
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'basicProcessingFilter'
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'rememberMeProcessingFilter'
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'anonymousProcessingFilter'
    00:59:02.047 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'securityEnforcementFilter'
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 1 of 6 in additional filter chain; firing Filter: '[email protected]1a7789c'
    00:59:02.047 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:183) - Obtained from ACEGI_SECURITY_CONTEXT a valid Context and set to ContextHolder: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 2 of 6 in additional filter chain; firing Filter: '[email protected]c5f'
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 3 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter@87e704'
    00:59:02.047 DEBUG (net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter:157) - Authorization header: null
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 4 of 6 in additional filter chain; firing Filter: '[email protected]91e'
    00:59:02.047 DEBUG (net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter:108) - ContextHolder not replaced with remember-me token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 5 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter@51ef4e'
    00:59:02.047 DEBUG (net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter:147) - ContextHolder not replaced with anonymous token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.047 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 6 of 6 in additional filter chain; firing Filter: '[email protected]44e'
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/login.jsp'; to: '/login.jsp'
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /index.jsp; matched=false
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /home.htm; matched=false
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /logoff.jsp; matched=false
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /login.jsp*; matched=true
    00:59:02.047 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:348) - Secure object: FilterInvocation: URL: /login.jsp; ConfigAttributes: [ROLE_ANONYMOUS, ROLE_USER]
    00:59:02.063 DEBUG (net.sf.acegisecurity.providers.ProviderManager:156) - Authentication attempt using net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider
    00:59:02.063 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:386) - Authenticated: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS
    00:59:02.063 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:404) - Authorization successful
    00:59:02.063 DEBUG (org.springframework.context.support.AbstractApplicationContext:222) - Publishing event in context [Root WebApplicationContext]: net.sf.acegisecurity.intercept.event.AuthorizedEvent[source=FilterInvocation: URL: /login.jsp]
    00:59:02.063 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:417) - RunAsManager did not change Authentication object
    00:59:02.063 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:288) - /login.jsp reached end of additional filter chain; proceeding with original chain
    00:59:02.063 DEBUG (net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter:185) - Chain processed normally
    00:59:02.063 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:271) - Context stored to HttpSession: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.063 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:280) - ContextHolder set to null as request processing completed
    00:59:02.109 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/favicon.ico'; to: '/favicon.ico'
    00:59:02.109 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /**; matched=true
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'httpSessionContextIntegrationFilter'
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'authenticationProcessingFilter'
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'basicProcessingFilter'
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'rememberMeProcessingFilter'
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'anonymousProcessingFilter'
    00:59:02.109 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'securityEnforcementFilter'
    00:59:02.109 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 1 of 6 in additional filter chain; firing Filter: '[email protected]1a7789c'
    00:59:02.109 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:183) - Obtained from ACEGI_SECURITY_CONTEXT a valid Context and set to ContextHolder: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.109 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 2 of 6 in additional filter chain; firing Filter: '[email protected]c5f'
    00:59:02.109 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 3 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter@87e704'
    00:59:02.125 DEBUG (net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter:157) - Authorization header: null
    00:59:02.125 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 4 of 6 in additional filter chain; firing Filter: '[email protected]91e'
    00:59:02.125 DEBUG (net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter:108) - ContextHolder not replaced with remember-me token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.125 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 5 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter@51ef4e'
    00:59:02.125 DEBUG (net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter:147) - ContextHolder not replaced with anonymous token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.125 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /favicon.ico at position 6 of 6 in additional filter chain; firing Filter: '[email protected]44e'
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/favicon.ico'; to: '/favicon.ico'
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /index.jsp; matched=false
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /home.htm; matched=false
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /logoff.jsp; matched=false
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /login.jsp*; matched=false
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/favicon.ico'; pattern is /**; matched=true
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:348) - Secure object: FilterInvocation: URL: /favicon.ico; ConfigAttributes: [ROLE_USER]
    00:59:02.125 DEBUG (net.sf.acegisecurity.providers.ProviderManager:156) - Authentication attempt using net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:386) - Authenticated: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS
    00:59:02.125 DEBUG (org.springframework.context.support.AbstractApplicationContext:222) - Publishing event in context [Root WebApplicationContext]: net.sf.acegisecurity.intercept.event.AuthorizationFailureEvent[source=FilterInvocation: URL: /favicon.ico]
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter:198) - Access is denied (user is anonymous); redirecting to authentication entry point
    net.sf.acegisecurity.AccessDeniedException: Access is denied.
    	at net.sf.acegisecurity.vote.AffirmativeBased.decide(AffirmativeBased.java:86)
    	at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:394)
    	at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:81)
    	at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:114)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:206)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:225)
    	at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
    	at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
    	at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    	at java.lang.Thread.run(Thread.java:595)
    00:59:02.125 DEBUG (net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter:249) - Authentication entry point being called; target URL added to Session: http://localhost/favicon.ico
    00:59:02.125 DEBUG (net.sf.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint:171) - Redirecting to: http://localhost/login.jsp
    00:59:02.125 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:271) - Context stored to HttpSession: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.125 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:280) - ContextHolder set to null as request processing completed
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/login.jsp'; to: '/login.jsp'
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /**; matched=true
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'httpSessionContextIntegrationFilter'
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'authenticationProcessingFilter'
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'basicProcessingFilter'
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'rememberMeProcessingFilter'
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'anonymousProcessingFilter'
    00:59:02.141 DEBUG (org.springframework.beans.factory.support.AbstractBeanFactory:189) - Returning cached instance of singleton bean 'securityEnforcementFilter'
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 1 of 6 in additional filter chain; firing Filter: '[email protected]1a7789c'
    00:59:02.141 DEBUG (net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter:183) - Obtained from ACEGI_SECURITY_CONTEXT a valid Context and set to ContextHolder: 'net.sf.acegisecurity.context.security.SecureContextImpl@1e1ec86: Authentication: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 2 of 6 in additional filter chain; firing Filter: '[email protected]c5f'
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 3 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter@87e704'
    00:59:02.141 DEBUG (net.sf.acegisecurity.ui.basicauth.BasicProcessingFilter:157) - Authorization header: null
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 4 of 6 in additional filter chain; firing Filter: '[email protected]91e'
    00:59:02.141 DEBUG (net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter:108) - ContextHolder not replaced with remember-me token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 5 of 6 in additional filter chain; firing Filter: 'net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter@51ef4e'
    00:59:02.141 DEBUG (net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter:147) - ContextHolder not replaced with anonymous token, as ContextHolder already contained: 'net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS'
    00:59:02.141 DEBUG (net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain:297) - /login.jsp at position 6 of 6 in additional filter chain; firing Filter: '[email protected]44e'
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:110) - Converted URL to lowercase, from: '/login.jsp'; to: '/login.jsp'
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /index.jsp; matched=false
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /home.htm; matched=false
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /logoff.jsp; matched=false
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.web.PathBasedFilterInvocationDefinitionMap:121) - Candidate is: '/login.jsp'; pattern is /login.jsp*; matched=true
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:348) - Secure object: FilterInvocation: URL: /login.jsp; ConfigAttributes: [ROLE_ANONYMOUS, ROLE_USER]
    00:59:02.141 DEBUG (net.sf.acegisecurity.providers.ProviderManager:156) - Authentication attempt using net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:386) - Authenticated: net.sf.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@16f5261: Username: anonymousUser; Password: [PROTECTED]; Authenticated: true; Details: null; Granted Authorities: ROLE_ANONYMOUS
    00:59:02.141 DEBUG (net.sf.acegisecurity.intercept.AbstractSecurityInterceptor:404) - Authorization successful
    ...

  • #2
    Just add a new entry to FilterSecurityInterceptor for favicon.ico and make it ROLE_ANONYMOUS. You shouldn't be trying to secure the icon, so this is an acceptable workaround to support different browser behaviours.

    Comment

    Working...
    X