Не могу читать информацию о юзерах из БД в spring security 6.0.0
Ради практики решил сделать приложение в котором есть 3 роли: админ, доктор и пациент. Каждый пользователь авторизуясь видит ту информацию, которая ему доступна (пациент - видит свою карточку пациента, доктор - видит карточки всех пациентов, так же может их добавлять, удалять и редактировать, админ - видит всех докторов, может их добавлять, удалять и редактировать) Для этого создал таблицы в MySqlWorbench:
create table hospital_admin (
id int not null auto_increment,
name varchar(30),
surname varchar(40),
primary key (id)
);
create table doctors (
id int not null auto_increment,
name varchar(30),
surname varchar(40),
primary key (id)
);
create table patient_card (
id int not null auto_increment,
name varchar(30),
surname varchar(40),
date_of_birth date,
patients_diagnosis varchar(60),
doctors_id int not null,
primary key (id),
foreign key (doctors_id) references my_db.doctors(id)
);
Начал конфигурировать своё приложение и понял, что в классе MySecurityConfig я не могу читать инфомацию о юзерах из БД используя WebSecurityConfigurerAdapter как это было в старых версиях Сейчас этот класс выглядит вот так:
package com.dreven95.patientcardmanager.configuration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.web.SecurityFilterChain;
@Configuration
@EnableWebSecurity
public class MySecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http.authorizeHttpRequests().requestMatchers("/").hasRole("USER").and().formLogin();
return http.build();
}
}
Читал документацию, гуглил, но всё равно не могу понять как это сделать. В своём проекте Spring Data не использую, так как у меня свои собсвтенные репозитории и сервисы
Так же я вас прошу посмотреть полный проект, чтобы указать на мои ошибки в написании приложения. Это мой первый опыт, поэтому мне бы очень хотелось извлечь из этого максимальную пользу и научиться это делать правильно https://github.com/Dreven95/PatientCardManagerSpringMVCHibernateSecurity