inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Spring Boot JWT Tutorial

MSA @PreAuthorize

해결된 질문

528

이민준

작성한 질문수 4

1

안녕하세요. 선생님의 강의를 듣고 MSA에 JWT 기반 인증 인가 서비스를 구현 중입니다.
구현 중에 Auth Server를 분리하면서 다른 리소스 서버에서 @PreAuthorize로 메소드 단위 권한 인가를 구현하며 유추한 내용이 맞는지 확인차 질문 드립니다.
제가 생각한 @PreAuthorize의 동작 메커니즘은 아래와 같습니다.
JwtFilter 클래스에서 Override하여 구현한 doFilter는 매 서블릿 요청마다 작동됩니다.
그리고 doFilter에서 UsernamePasswordAuthentication 객체를 SecurityContextHolder에 저장합니다.
@PreAuthorize를 코멘트한 메소드에서는 SecurityContextHolder에 저장된 내용을 기반으로 권한을 체크합니다.
여기까지가 제가 유추한 내용인데요. 틀린 부분이 있으면 첨언 부탁드립니다.
그리고 위와 같은 방법 외에 MSA처럼 Auth Server를 분리한다던가 또는 ScaleOut된 서비스와 같이 분리된 아키텍처에서 권한인가하는 효율적인 방법이 또 있을까요?

PreAuthorize jwt spring-boot

답변 1

0

정은구

안녕하세요 민준님 답변이 늦어 죄송합니다.

틀린 부분은 없으신 것 같습니다.

MSA와 같은 환경에서 분리된 Auth Server를 Spring으로 구현하려 하시려면 아래 내용을 참고하시면 좋을 것 같습니다.

https://docs.spring.io/spring-security-oauth2-boot/docs/2.0.x/reference/htmlsingle/

Authorization Server, Resource Server에 대한 내용을 학습하시면 도움이 되실 것으로 생각됩니다.

 

 

spring boot 3.x 버전 강의도 만들어주시면 안될까요?

0

69

1

3강 secret key 관련해서 질문있습니다

0

69

1

JwtFilter 에 TokenProvider 선언 시 final 키워드 빠진 이유

0

78

1

/api/authenticate 포스트맨 401 에러

0

225

1

Spring boot 3.x버전에서 data.sql 오류 발생할 경우

4

401

1

/api/hello 접근 시 401 나올 때 해결법

2

306

2

소스코드 전체 볼수 있을까요?

0

399

2

머이렇게 안되는게많노 ㅠ

1

760

2

스프링부트 3.x 버전 data.sql 삽입 오류 발생할 경우 해결 방법

6

1354

2

postman 결과가 다릅니다

0

363

2

body값이 비었습니다.

0

400

2

jjwt 버전을 올렸더니 jwt가 유효하지 않다고 합니다

0

3599

1

Refresh Token

0

507

1

유저 권한 설정

0

370

2

setAuthentication

0

498

1

postman에서 오류가 납니다..

0

1774

3

Spring boot 3.1.5 기준 학습 정리 파일 공유

1

1090

4

/api/hello에 접근이 안됩니다 ㅠㅠ

0

1084

2

mysql 설정로 실습시

0

877

2

유효한 JWT 토큰이 없습니다

0

668

2

8:45 spring security 3.1.5 설정 방법 (버전 안 맞춰서 안될때)

1

2284

2

2:00 에서 저처럼 버전 안 맞춰서 해서 헤매는 분들 이걸로 해보세요.

0

1278

3

JWT String argument cannot be null or empty.

0

2169

2

new User 생성자 오류 발생하는 분들...

6

504

2