Подтвердить что ты не робот

Разница между доступом = "allowAll" и filters = "none"?

Вот часть из примера Spring безопасности:

<http use-expressions="true">
    <intercept-url pattern="/" access="permitAll"/>
    <intercept-url pattern="/static/**" filters="none" />
    <intercept-url pattern="/**" access="isAuthenticated()" />
    <form-login />
    <logout />
</http>

В чем разница между доступом = "allowAll" и фильтрами = "none"?

Url: http://static.springsource.org/spring-security/site/petclinic-tutorial.html

4b9b3361

Ответ 1

Разница в том, что filters = "none" отключает Spring фильтры безопасности для указанных URL-адресов, тогда как access = "permitAll" настраивает авторизацию без отключения фильтров.

На практике filters = "none" может вызвать проблемы, когда ресурсы, стоящие за ним, требуют некоторой функциональности Spring Security. Например, вы не можете использовать его для страницы регистрации пользователя, которая выполняет программный вход в систему для отправки (Пользовательские полномочия всегда: ROLE_ANONYMOUS?).