Заменить объект аутентификации после успешной аутентификации ⇐ JAVA
Заменить объект аутентификации после успешной аутентификации
У меня есть приложение Spring, использующее OAuth2. После успешного входа в систему я вижу OAuth2AuthenticationToken в контексте безопасности пользователей.
Я хотел бы заменить этот токен другой реализацией Authentication, например PreAuthenticatedAuthenticationToken.
Как я могу это сделать? До сих пор я пытался заменить Authentication в SecurityContext на AuthenticationSuccessHandler. Но я все еще вижу OAuth2AuthenticationToken после выполнения этого кода.
@Component публичный класс SecurityHandler реализует AuthenticationSuccessHandler { public void onAuthenticationSuccess (запрос HttpServletRequest, ответ HttpServletResponse, аутентификация при аутентификации) выдает IOException { PreAuthenticatedAuthenticationToken newToken = новый PreAuthenticatedAuthenticationToken("test-user","pw"); token.setAuthenticated(истина); SecurityContext secContext = SecurityContextHolder.getContext(); secContext.setAuthentication(токен); Сеанс HttpSession = request.getSession(true); session.setAttribute("SPRING_SECURITY_CONTEXT", secContext); } }
У меня есть приложение Spring, использующее OAuth2. После успешного входа в систему я вижу OAuth2AuthenticationToken в контексте безопасности пользователей.
Я хотел бы заменить этот токен другой реализацией Authentication, например PreAuthenticatedAuthenticationToken.
Как я могу это сделать? До сих пор я пытался заменить Authentication в SecurityContext на AuthenticationSuccessHandler. Но я все еще вижу OAuth2AuthenticationToken после выполнения этого кода.
@Component публичный класс SecurityHandler реализует AuthenticationSuccessHandler { public void onAuthenticationSuccess (запрос HttpServletRequest, ответ HttpServletResponse, аутентификация при аутентификации) выдает IOException { PreAuthenticatedAuthenticationToken newToken = новый PreAuthenticatedAuthenticationToken("test-user","pw"); token.setAuthenticated(истина); SecurityContext secContext = SecurityContextHolder.getContext(); secContext.setAuthentication(токен); Сеанс HttpSession = request.getSession(true); session.setAttribute("SPRING_SECURITY_CONTEXT", secContext); } }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как вернуть HTTP 403 после успешной аутентификации, но неудачной авторизации?
Anonymous » » в форуме JAVA - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как вернуть HTTP 403 после успешной аутентификации, но безуспешно авторизация?
Anonymous » » в форуме JAVA - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-