Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring security не работает isAuthenticated / 5 сообщений из 5, страница 1 из 1
07.10.2013, 13:22:41
    #38418815
z3r9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring security не работает isAuthenticated
Здравствуйте. Подскажите пожалуйста почему не работает метод isAuthenticated() в Spring security. Я в JSF вывожу так:

Код: java
1.
2.
3.
4.
5.
#{loginMB.authentication.authenticated}

<sec:authorize access="hasRole('ROLE_ADMIN')">
    Тест
</sec:authorize>



В итоге не один из вариантов проверки авторизации не работает. Все время выводят true.

Хотя если указать вывод роли:
Код: java
1.
#{loginMB.authentication.authorities}



Выводит ее верно, когда авторизован [ROLE_ADMIN], когда нет [ROLE_ANONYMOUS].

Подскажите пожалуйста в чем проблема?
...
Рейтинг: 0 / 0
07.10.2013, 14:08:23
    #38418893
Mr WeL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring security не работает isAuthenticated
А страница попадает в фильтр?
...
Рейтинг: 0 / 0
07.10.2013, 14:28:44
    #38418922
z3r9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring security не работает isAuthenticated
Mr WeL , а как это можно узнать? Роли на странице выводятся а метод isAuthenticated не работает.

Файл web.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">

<display-name>JSF2 and Spring 3.0 tutorial</display-name>

<context-param>
    <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
    <param-value>.xhtml</param-value>
</context-param>

<!-- Spring Context Configuration' s Path definition -->
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        /WEB-INF/applicationContext.xml,
        <!--/WEB-INF/applicationContext-security.xml-->
    </param-value>
</context-param>

<context-param>
    <param-name>javax.faces.CONFIG_FILES</param-name>
    <param-value>
        /WEB-INF/faces-config.xml,
        /WEB-INF/faces-navigation.xml
    </param-value>
</context-param>

<!-- Core JSF Config -->

<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.faces</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<listener>
    <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>


<!-- Filter Config -->
<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<filter>
    <filter-name>charsetFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>

<filter-mapping>
    <filter-name>charsetFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

</web-app>
...
Рейтинг: 0 / 0
07.10.2013, 14:31:22
    #38418929
z3r9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring security не работает isAuthenticated
Конфиг для Spring security:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    <sec:global-method-security jsr250-annotations="enabled" />

    <sec:http auto-config="true" use-expressions="true">

        <sec:form-login login-page="/pages/login.html" authentication-failure-url="/fail.html" />

    </sec:http>

    <sec:authentication-manager alias="authenticationManager">
        <sec:authentication-provider user-service-ref="UserDAO">
            <sec:password-encoder hash="plaintext" />
        </sec:authentication-provider>
    </sec:authentication-manager>
...
Рейтинг: 0 / 0
11.10.2013, 02:43:55
    #38423861
z3r9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Spring security не работает isAuthenticated
Проблема решена. В JSF нужно подключать тег авторизации как написано тут http://stackoverflow.com/a/15378140/2691739. И у меня еще с IDE проблема была.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring security не работает isAuthenticated / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]