/
ilyaBu
/
WebSpringJava
Обзор
Документация
Войти
/
ilyaBu
/
WebSpringJava
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/ru/gb/spring/diplomawebjavaspringgb/config/AuthHandler.java
27 строк
1 KB
IliaBu
Update code
14 июл 2024, 15:26
14 июл 2024, 15:26
3414678
Код
Авторство
О чём код?
package ru.gb.spring.diplomawebjavaspringgb.config; import org.springframework.context.annotation.Configuration; import org.springframework.security.core.Authentication; import org.springframework.security.core.authority.AuthorityUtils; import org.springframework.security.web.authentication.AuthenticationSuccessHandler; import java.io.IOException; import java.util.Set; /** * Класс-обработчик аутентификации, в зависимости от роли перенаправляет * либо на страницу администратора, либо на страницу пользователя */ @Configuration public class AuthHandler implements AuthenticationSuccessHandler { @Override public void onAuthenticationSuccess(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, Authentication authentication) throws IOException { Set<String> roles = AuthorityUtils.authorityListToSet(authentication.getAuthorities()); if (roles.contains("ROLE_ADMIN")) { response.sendRedirect("/upload-files"); } else { response.sendRedirect("/home"); } } }