새싹개발자 2021. 1. 13. 01:09

1. pom.xml에서 의존성 모듈 추가

2. security-context.xml 생성 및 설정 내용 추가 (인증패턴과 권한 sql쿼리)

3. LoginController클래스 생성 및 내용 추가

4. JSP 영역 사용자단 세션 사용 확인 (header.jsp, footer.jsp)

5. AdminController클래스에서 BCryptPasswordEncoder로 해시 데이터 회원정보 추가 및 수정 부분 확인

 

pom.xml 의존성 모듈 추가

 

스프링 시큐리티 버전 추가
스프링 시큐리티 보안 라이브러리(모듈)


security-context.xml 생성 및 설정 내용 추가

src/main/webapp/WEB-INF/spring/security-context.xml

 

security-context.xml 상단부분
스프링시큐리티 필터 무시하는 경로(url)
로그인, 로그아웃 기능 사용한다고 명시
인증관련 아이디/암호 비교 설정 및 패스워드 암호화


LoginController.java 생성 및 내용 추가

로그인 success 후 세션처리 매핑
로그인 success 후 세션처리 매핑
로그인 접근 매핑

 


JSP 영역 사용자단 세션 사용 확인 (header.jsp, footer.jsp)

로그인 전/후 접근 가능 영역 분리

- 로그인 후에 마이페이지, 사용자단 홈페이지 글등록 가능

- ROLE_ADMIN일 때에만 AdminLTE 접근 가능

- 로그아웃 후에는 로그인, 회원가입만 가능

사용자단 /home/include/header.jsp

관리자단에서 로그아웃 버튼 누르면 로그아웃 가능 (security-context.xml에서 지정한 경로 참조)

관리자단 /admin/include/footer.jsp


AdminController클래스에서 BCryptPasswordEncoder로 해시 데이터 회원정보 추가 및 수정 부분 확인

member_write 회원정보 추가시 pw 암호화
member_update 회원정보 수정시 pw 암호화

결과는 워크벤치에서 확인한다. 그리고, 더미데이터들의 암호를 1234(의 해시암호)로 지정한다.