/
NikolayVasiljev
/
Project
Обзор
Документация
Войти
/
NikolayVasiljev
/
Project
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
feature
src/main/java/org/example/notesystem/service/CustomUserDetailsService.java
36 строк
1 KB
VasiljevNik
My fourth commit
04 авг 2025, 16:30
04 авг 2025, 16:30
1d611e1
Код
Авторство
О чём код?
package org.example.notesystem.service; import org.example.notesystem.model.User; import org.example.notesystem.repository.UserRepository; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; @Service public class CustomUserDetailsService implements UserDetailsService { private final UserRepository userRepository; public CustomUserDetailsService(UserRepository userRepository) { this.userRepository = userRepository; } @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { User user = userRepository.findByUsername(username); if (user == null) throw new UsernameNotFoundException("User not found: " + username); return org.springframework.security.core.userdetails.User .withUsername(user.getUsername()) .password(user.getPassword()) .authorities( user.getRoles().stream() .map(role -> role.getName()) // добавляем префикс .toArray(String[]::new) ) .build(); } }