Spring Security_basic. 스프링 인터셉터 DB와 연동하기

dwanGim·2022년 7월 4일
0

spring_basic

목록 보기
27/41

스프링 시큐리티 디폴트 DB 테이블

DB와 연동해서 로그인 처리를 해보기 위해서

먼저 스프링 시큐리티의 디폴트 DB 테이블 구조를 본따서

테이블을 작성해보겠습니다.

username, password, authority등 컬럼명 및 형식이

고정되어 있는 테이블입니다.


CREATE TABLE users (
    username varchar2(50) not null primary key,
    password varchar2(100) not null,
    enabled char(1) default '1');
    
    
CREATE TABLE authorities(
    username varchar2(50) not null,
    authority varchar2(50) not null,
    CONSTRAINT fk_authorities_users FOREIGN KEY (username) REFERENCES users(username));
    
CREATE UNIQUE INDEX ix_auth_username ON authorities (username, authority);

그리고 해당 테이블들에 더미 데이터들을 직접 집어넣었습니다.


위와 같이 계정을 3개 만들었지만

admin은 두 권한을 모두 주어야 하기 때문에

권한 테이블에는 admin00을 대상으로 두 개의 row가 생겨야 합니다.

그리고 security-context.xml에서 인증 매니저를 DB를 쓰도록 수정해줍니다.

dataSource라는 이름으로 hikari를 저장해두었기 때문에

그 이름으로 경로를 지정했습니다.

이제 DB에 맞는 아이디와 비밀번호로 요청을 하면

500에러가 뜨게 됩니다.

이후의 처리는 다음 시간에 정리하도록 하겠습니다.

profile
배울 게 참 많네요.

0개의 댓글