me1111
me1111

Reputation: 1157

Default Spring Security redirect to favicon

I'm using Spring Security 3.1. I have a problem when redirecting after authorization. It redirects to a favicon 404 error. Adding role_anonymous for favicon didn't help.

<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/security 
    http://www.springframework.org/schema/security/spring-security-3.1.xsd">

<!--To enable spring security comment this string
    <http auto-config="true" security="none"/>-->

    <!-- To enable spring security remove comment from this code-->
        <http auto-config="true">
                <intercept-url pattern="/**" access="ROLE_ADMIN"/>
                <intercept-url pattern="/favicon.ico" access="ROLE_ANONYMOUS" />
        </http>


<authentication-manager>
    <authentication-provider>
        <user-service>
            <user name="hey" password="there" authorities="ROLE_ADMIN" />
        </user-service>
    </authentication-provider>
</authentication-manager>

</beans:beans>

Upvotes: 14

Views: 9158

Answers (1)

Shaun the Sheep
Shaun the Sheep

Reputation: 22742

You're best to omit that path from the filter chain completely.

Use

<http pattern="/favicon.ico" security="none" />

<http auto-config="true">
    <intercept-url pattern="/**" access="ROLE_ADMIN"/>
</http>

instead.

Also remember that you need to order your intercept-url elements from most to least specific patterns, so your original configuration would have ignored the favicon pattern in any case.

I'd also recommend that you don't use auto-config but specify the features that you want to use explicitly so that you are clear what is being added to the security filter chain.

Upvotes: 28

Related Questions