inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

웹소켓/STOMP 채팅서비스(spring, vue, redis)

JWT토큰생성

JwtTokenPriver를 주입받는 곳 질문 있습니다.

61

qheogus55

작성한 질문수 42

0

JwtTokenPriver를 서비스단이 아닌 컨트롤러에서 주입받는 이유가 있을까요?!

서비스에서 주입받아야할지 컨트롤러에서 받아야할지 의문입니다!

spring-boot websocket stomp-websocket pubsub vue-3

답변 2

0

bradkim

안녕하세요!!

토큰의 생성은 일반적으로 서비스 레이어에서 진행합니다. 다만 사용자에게 최종적인 return은 구조적으로 컨트롤러에서 할수밖에 없습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. qheogus55님.

JwtTokenProvider와 같은 구성 요소를 컨트롤러나 서비스 레이어에서 사용하는 방식에 대한 질문을 주셨네요. 이 문제는 주로 애플리케이션의 설계와 아키텍처 스타일에 따라 결정됩니다. 아래에 몇 가지 지침을 제공해 드립니다:

  1. 컨트롤러에서 주입받는 경우:

    • 역할과 책임: 컨트롤러는 주로 클라이언트 요청을 받고, 그 요청을 처리하기 위해 서비스 레이어를 호출합니다. 만약 토큰 검증이 컨트롤러의 주요 기능이라면 이곳에서 JwtTokenProvider를 사용하는 것이 일관성 있는 설계일 수 있습니다.
    • 단순한 검증 작업: 토큰 검증이 간단한 검증 작업에 그친다면 컨트롤러에서 바로 사용하여 초기 흐름에서 불법적인 접근을 차단할 수 있습니다.
  2. 서비스에서 주입받는 경우:

    • 비즈니스 로직과의 통합: 토큰을 이용한 인증이 복잡한 비즈니스 로직의 일부라면 서비스 레이어에서 JwtTokenProvider를 주입받아 사용하는 것이 좋습니다. 이때, 서비스는 비즈니스 로직을 처리하며 필요한 경우 인증을 수행할 수 있습니다.
    • 재사용성: 서비스 레이어에 통합하면 동일한 인증 로직이 여러 컨트롤러에 의해 재사용될 수 있습니다.

이 결정은 주로 애플리케이션의 구조, 복잡성 및 특정 요구사항에 따라 달라질 수 있습니다. 비슷한 주제를 다룬 질문을 통해 추가적인 정보를 얻어보세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

ERD 질문

0

61

2

StompHandler 관한 질문

0

84

2

리프레시 토큰은 알아서 구현하면 되는건가요??

0

81

2

cors, csrf 직접 구현

0

66

1

JWT 필터구현

0

105

2

강의 잘듣고 있습니다. 혹시 다음 강의 계획은 없으신가요?

0

58

1

STOMP 동작 과정 질문

0

51

1

chain.doFilter()

0

45

1

자바 21로 소스 작성해도 되나요?

0

62

2

메시지 브로커 선택에 관한 질문

0

66

2

WebSocket과 Spring Security 질문

0

82

2

추가 커스텀 구현 질문 있습니다.

0

61

2

connect와 동시에 구독하는데 구독 검증이 꼭 필요한가요?

0

97

2

저도 동일한 질문인데

0

80

3

token이 필요한 엔드포인트에 의도적으로 토큰 누락시 대처

0

69

2

수업자료가 왜 다 나눠져있나요?

0

80

2

메시지 전송 시 검증

0

62

2

JWT 생성 시 subject 설정에 대한 질문

0

161

3

StompHandler 질문 있습니다.

0

82

2

앱 서비스일 경우

0

87

2

웹소켓 서버 재배포시 고려해야 할 상황 질문

0

113

2

배포 오류 질문

0

126

2

/connect 경로에 대한 토큰 검증의 필요성

0

80

1

JwtTokenProvider 작성중 오류 발생으로 문의드립니다.

0

101

2