Class BiudUserDetailsService

java.lang.Object
ru.pfr.common.biud.security.service.BiudUserDetailsService
All Implemented Interfaces:
org.springframework.security.core.userdetails.UserDetailsService

@Service public class BiudUserDetailsService extends Object implements org.springframework.security.core.userdetails.UserDetailsService
Реализация UserDetailsService для системы БИУД.

Загружает данные пользователя из таблицы CS.OPERATOR и роли из таблиц CS.ROLE и CS.OPERATORROLE.

  • Constructor Details

  • Method Details

    • loadUserByUsername

      @Transactional public org.springframework.security.core.userdetails.UserDetails loadUserByUsername(String username) throws org.springframework.security.core.userdetails.UsernameNotFoundException
      Загрузить пользователя по логину.

      Загружает:

      • Данные оператора из CS.OPERATOR
      • Роли оператора через CS.OPERATORROLE → CS.ROLE
      Specified by:
      loadUserByUsername in interface org.springframework.security.core.userdetails.UserDetailsService
      Parameters:
      username - логин оператора
      Returns:
      UserDetails с данными пользователя и ролями
      Throws:
      org.springframework.security.core.userdetails.UsernameNotFoundException - если пользователь не найден в БД
    • exists

      @Transactional public boolean exists(String username)
      Проверить существование пользователя.
      Parameters:
      username - логин оператора
      Returns:
      true если пользователь существует в CS.OPERATOR
    • getOperator

      @Transactional public BiudOperator getOperator(String username)
      Получить данные оператора без ролей (для внутреннего использования).
      Parameters:
      username - логин оператора
      Returns:
      BiudOperator или null если не найден