Spring Security: сохраненный SecurityContext получил нулевую аутентификациюJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Spring Security: сохраненный SecurityContext получил нулевую аутентификацию

Сообщение Anonymous »


Я использую Spring Security Oauth1.0a для аутентификации запросов. Ожидается, что после аутентификации пользователя он/она получит привилегии для изучения веб-сайта. Самая первая целевая страница аутентифицированного пользователя включает в себя несколько js и img. Достаточно странно, что во время загрузки этих крошечных кусочков некоторые файлы успешно загружаются с правильной аутентификацией. Но через несколько миллисекунд другие крошечные фрагменты не смогут загрузиться из-за нулевой аутентификации. Обратите внимание: у меня включены прослушиватели контекста/сеанса/атрибута сервлета. Никаких изменений обнаружено не было.

24.10'16 13:44:23> ОТЛАДКА [org.springframework.security.web.context.HttpSessionSecurityContextRepository] SecurityContext 'org.springframework.security.core.context.SecurityContextImpl@3f8eaa51: Аутентификация: org .springframework.security.authentication.UsernamePasswordAuthenticationToken@3f8eaa51: Участник: com.my.connected.spring.User@148c0257; Учетные данные: [ЗАЩИЩЕНО]; Аутентифицировано: правда; Подробности: ноль; Предоставленные полномочия: TEACHER», сохраненные в HttpSession: «org.apache.catalina.session.StandardSessionFacade@f3abb79 (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443-exec-11) [1256269] До сих пор контекст безопасности заполнялся в сеансе, как и ожидалось. Мои настроенные слушатели уровня контекста/сеанса/атрибута не обнаружили никаких изменений после этого. Все журналы уровня отладки распечатаны ниже.

24.10'16 13:44:23> DEBUG [org.springframework.security.web.access.ExceptionTranslationFilter] Цепочка обрабатывается нормально (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443 -exec-11) [1256269] 24.10'16 13:44:23> DEBUG [org.springframework.security.web.context.SecurityContextPersistenceFilter] SecurityContextHolder теперь очищен, поскольку обработка запроса завершена (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443- exec-11) [1256269] 24.10'16 13:44:23> DEBUG [org.springframework.security.web.FilterChainProxy] /home.png в позиции 1 из 15 в дополнительной цепочке фильтров; Фильтр активации: 'MetadataGeneratorFilter' (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443-exec-4) [1256274] 24.10'16 13:44:23> DEBUG [org.springframework.security.web.FilterChainProxy] /home.png в позиции 2 из 15 в дополнительной цепочке фильтров; Фильтр активации: 'WebAsyncManagerIntegrationFilter' (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443-exec-4) [1256274] 24.10'16 13:44:23> DEBUG [org.springframework.security.web.FilterChainProxy] /home.png в позиции 3 из 15 в дополнительной цепочке фильтров; Фильтр срабатывания: 'SecurityContextPersistenceFilter' (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443-exec-4) [1256274] 24.10'16 13:46:37> ОТЛАДКА [org.springframework.security.web.context.HttpSessionSecurityContextRepository] Получен действительный SecurityContext из SPRING_SECURITY_CONTEXT: 'org.springframework.security.core.context.SecurityContextImpl@ffffffff: нулевая аутентификация' (CLIENT_IP=|USER_ID=|INV_ID=) (http-nio-443-exec-4) [1391041] Однако и отладка, и журнал показывают новую нулевую аутентификацию для атрибута сеанса SPRING_SECURITY_CONTEXT. Сам контекст не является нулевым.

Подробнее о кодировании:

//метод контроллера @RequestMapping(value = {"/ssoep.lti.do"}, метод = {RequestMethod.GET, RequestMethod.POST}) public void ltiEndpoint (запрос HttpServletRequest, ответ HttpServletResponse) выдает ServletException, IOException, SSOValidationException { request.getRequestDispatcher("/").forward(запрос, ответ); } //класс конфигурации @EnableWebSecurity @Конфигурация общественный класс SecurityConfig расширяет WebSecurityConfigurerAdapter { protected void configureOAuth(HttpSecurity http) выдает исключение { http .csrf() .запрещать(); http .addFilterAfter(oauthFilter(), BasicAuthenticationFilter.class) .authorizeRequests() .antMatchers("/ssoep.lti.do*").authenticated(); } @Бин public ProtectedResourceProcessingFilter oauthFilter() { Результат ProtectedResourceProcessingFilter = новый MheOauthProcessingFilter(); result.setAuthHandler(mheUserOauthAuthenticationHandler); result.setConsumerDetailsService(mheOauthConsumerDetailsService); вернуть результат; } } Я использую следующие версии pom.
4.3.2.RELEASE 1.4.0.RELEASE 4.1.1.ВЫПУСК 2.0.11.RELEASE 1.0.2.RELEASE
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»