Почему "permitAll ()" не работает?
упомянуть достойный: я следую учебник о обеспечение безопасности приложений GWT с Spring Security.
я не понимаю этого. Я не могу, кажется, получить permitAll
работать так, как мне нужно.
это моя текущая конфигурация:
<http auto-config="true">
<intercept-url pattern="/**" access="permitAll" />
<form-login
login-page="/login"
default-target-url="/welcome"
authentication-failure-url="/login?error"
username-parameter="username"
password-parameter="password" />
</http>
если я получаю доступ к своему сайту на //localhost:8080
сайт загружается не полностью, потому что запрос
//localhost:8080/app/xsrf
is 403 Forbidden
по какой-то причине. Как я настроил Spring Security должен не будет проблемой здесь, Если я правильно понял.
я не работа, если я просто добавлю
<intercept-url pattern="/**" access="permitAll" />
to <http ..>
что тут работа добавить это:
<http pattern="/app/xsrf" security="none"/>
я хотел бы понять, почему, потому что это не так, как я хочу настроить Spring Security.. добавление каждого URL-адреса, который должен быть разрешен.
An дополнительные проблема, с которой я сталкиваюсь, заключается в том, что по какой-либо причине (возможно, то же самое) я не могу получить доступ //localhost:8080/login
. Что означает, если я отправлю свой логин в /login
я 403 Forbidden
.
теперь, можно подумать, что добавление <http pattern="/login" security="none"/>
помог бы здесь, но нет. Если я добавлю это в свою конфигурацию, я получу 404 Not Found
на этом конкретном URL.
это начинает сводить меня с ума, так как я застрял здесь на столько дней, что не смею вам сказать. Ваша помощь будет оценена и вознаграждена.
2 ответов
похоже, что ошибка была в web.в XML. Вместо <url-pattern>/*</url-pattern>
(как указано в учебнике, я следил) он должен быть!--3-->:
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<!-- It appears that this should say '/**' and not '/*' as stated in many
tutorials
(e.g. http://websystique.com/spring-security/spring-security-4-hello-world-annotation-xml-example/). -->
<url-pattern>/**</url-pattern>
</filter-mapping>
интересно то, что теперь я получаю следующее" INFO":
INFO: Suspicious url pattern: "/**" in context [] - see section SRV.11.2 of the Servlet specification
все, что я могу сказать, что это становится личным ..
EDIT:
с use-expressions=true
включен по умолчанию, поэтому этот ответ не помочь.
Но...я нашел вашу ошибку:
spring автоматически генерирует страницу входа по умолчанию в /login, но только если вы не укажете