Class BiudSecurityAutoConfiguration
java.lang.Object
ru.pfr.common.biud.security.BiudSecurityAutoConfiguration
@Configuration
@EnableConfigurationProperties(BiudSecurityProperties.class)
@EnableTransactionManagement
@ConditionalOnProperty(name="biud.security.enabled",
havingValue="true",
matchIfMissing=true)
@EntityScan(basePackages="ru.pfr.common.biud.security.entity")
@EnableJpaRepositories(basePackages="ru.pfr.common.biud.security.repository",
entityManagerFactoryRef="biudEntityManagerFactory",
transactionManagerRef="biudTransactionManager")
@ComponentScan(basePackages={"ru.pfr.common.biud.security.encoder","ru.pfr.common.biud.security.service","ru.pfr.common.biud.security.auth"})
public class BiudSecurityAutoConfiguration
extends Object
Auto-configuration для библиотеки БИУД Spring Security.
Этот класс автоматически настраивает все компоненты безопасности БИУД
при наличии свойства biud.security.enabled=true в конфигурации приложения.
Создаёт следующие бины:
- DataSource — подключение к базе данных БИУД
- EntityManagerFactory — JPA EntityManager для таблиц БИУД
- PlatformTransactionManager — менеджер транзакций
- BiudPasswordEncoder — кодировщик паролей SHA1+BASE64
- TekRabService — сервис учёта попыток входа
- BiudBlockChecker — сервис проверки блокировок
- AuthLogger — сервис логирования входов
- BiudUserDetailsService — загрузка пользователей и ролей
- BiudAuthenticationProvider — основной провайдер аутентификации
Пример конфигурации в application.yml:
biud:
security:
enabled: true
datasource:
url: jdbc:db2://localhost:50000/ROS
username: db2admin
password: "${DB_PASSWORD}"
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionСоздать DataSource для подключения к базе данных БИУД.org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBeanbiudEntityManagerFactory(DataSource biudDataSource) Создать EntityManagerFactory для таблиц БИУД.org.springframework.transaction.PlatformTransactionManagerbiudTransactionManager(jakarta.persistence.EntityManagerFactory biudEntityManagerFactory) Создать TransactionManager для транзакций БИУД.
-
Constructor Details
-
BiudSecurityAutoConfiguration
-
-
Method Details
-
biudDataSource
@Bean(name="biudDataSource") @ConditionalOnMissingBean(name="biudDataSource") public DataSource biudDataSource()Создать DataSource для подключения к базе данных БИУД. -
biudEntityManagerFactory
@Bean(name="biudEntityManagerFactory") @ConditionalOnMissingBean(name="biudEntityManagerFactory") public org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean biudEntityManagerFactory(DataSource biudDataSource) Создать EntityManagerFactory для таблиц БИУД. -
biudTransactionManager
@Bean(name="biudTransactionManager") @ConditionalOnMissingBean(name="biudTransactionManager") public org.springframework.transaction.PlatformTransactionManager biudTransactionManager(jakarta.persistence.EntityManagerFactory biudEntityManagerFactory) Создать TransactionManager для транзакций БИУД.
-