첫번째 - 회원가입
1.Admin 계정 만들기
2.Manager 계정 만들기
3.User 계정 만들기
두번째 - 권한 변경
1. DB에 접속해서 쿼리 ㄱㄱ
2.잘 변경되었는지 확인 ㄱㄱ
3.테스트 진행
:localhost:8080에 접근하여 계정별로 로그인하여 어떤 페이지까지 들어가지는 확인
:페이지에 들어가지면 = O
:페이지에 안들어가지면 = X
ID | locahost:8080/ | locahost:8080/user | locahost:8080/manager | locahost:8080/admin |
User | O | O | X | X |
Mnager | O | O | O | X |
Admin | O | O | O | O |
세번째 - 페이지별 권한 설정
1.SecurityConfig Class -> 어노테이션 추가
:@Secured() 어노테이션을 사용가능하게 함
@EnableGlobalMethodSecurity(securedEnabled = true)
2.IndexController Class -> Info Method와 @Secured Annotation 추가 ㄱㄱ
:localhost:8080/info에 접근할려면 "ROLE_ADMIN" 권한이 필요
@Secured("ROLE_ADMIN")
@GetMapping(value = "/info")
public @ResponseBody String info() {
return "개인 정보";
}
3.SecurityConfig Class -> 어노테이션 추가
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true)
4.IndexController Class -> Data Method와 @PreAuthorize Annotation 추가 ㄱㄱ
:localhost:8080/info에 접근할려면 "ROLE_ADMIN" or "ROLE_MANAGER" 권한이 필요
@PreAuthorize("hasRole('ROLE_MANAGER') or hasRole('ROLE_ADMIN')")
@GetMapping(value = "/data")
public @ResponseBody String data() {
return "데이터 정보";
}
끝
'Spring Boot > Security' 카테고리의 다른 글
[SpringBoot Secyruty] 구글 로그인 (2) (0) | 2022.04.24 |
---|---|
[SpringBoot Secyruty] 구글 로그인 (1) (0) | 2022.04.23 |
[SpringBoot Secyruty] 환경 설정 (0) | 2022.04.22 |
[SpringBoot Security] 로그인 페이지 만들기 (0) | 2022.04.22 |
[SpringBoot Secyruty] 회원가입 페이지 만들기 (0) | 2022.04.20 |