Тег Spring Security Authorize всегда ложный - PullRequest
4 голосов
/ 10 февраля 2011

У меня есть примерно следующее в моем JSP.Ни здесь, ни там не отображаются!

Мой первый набег в Spring Security 3.0.5.Я использовал 3.0.3 без проблем.

<sec:authorize ifNotGranted="ROLE_ACTIVE">
    here
</sec:authorize>
<sec:authorize ifAnyGranted="ROLE_ACTIVE">
    there       
</sec:authorize>

Ответы [ 3 ]

7 голосов
/ 02 марта 2011

Спасибо за понимание. Я обнаружил, что это произошло из-за упорядочения отображений фильтров. Безопасность весны должна прийти раньше, чем Sitemesh.

Не уверен, как кто-то мог получить это без меня, публикуя так много, казалось бы, тривиальных подробностей о проекте.

Я буду знать, чтобы опубликовать web.xml в будущем. Возможно, просто обратите больше внимания на то, что это является источником проблем.

1 голос
/ 18 февраля 2011

Если вы установили filters = 'none' для страницы jsp и написали вышеуказанный код на том же jsp, то ваш тег авторизации всегда будет возвращать false.

вы можете обратиться к этому вопросу, ваша проблема может быть такой же, как яbelive.

Проблема, связанная с входом / выходом из системы Spring Spring

Если ваша проблема другая, вы можете подробнее рассказать о конфигурации безопасности.

1 голос
/ 10 февраля 2011

Похоже, ifNotGranted и ifAnyGranted устарели в пользу выражения доступа. Попробуйте что-то вроде

<sec:authorize access="hasRole('ROLE_ACTIVE')">here</sec:authorize>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...