Не могу читать информацию о юзерах из БД в 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


Ответы (0 шт):