인프런 커뮤니티 질문&답변

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

AccessTokenGuard 적용해보기

JwtStrategy 사용 vs 강의에서 말씀해주신 JwtService 만을 사용한 방법

23.12.26 10:28 작성

·

306

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

코드팩토리 통합 링크
https://links.codefactory.ai

Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!

 

안녕하세요 강사님. 좋은 강의를 만들어 주셔서 감사합니다.

 

다름이 아니라 JWT 인증에 대해서 궁금한 점이 있는데요 .

강의에서는 JwtService 객체에서 제공해주는 함수를 활용하여 서비스 로직을 만든 후 이를 이용해 별도의 가드를 만들어 인증을 해주는 방식을 설명해주신걸로 이해했습니다.

 

그러나 인터넷 검색을 해봤을 떄 JwtStrategy 를 상속 받아서 local 전략과 token 전략을 구분하여 가드를 작성하고, 이를 사용하는 방식도 있는것으로 확인했습니다.

 

이 두가지 방법중에 서로의 장단점과 현업에서는 어떤 방식을 더 선호하는지 질문드립니다.

 

감사합니다.

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2023. 12. 26. 11:51

안녕하세요!

'현업에서 어떤 방식을 선호하냐'는 답변이 불가능한 질문입니다. 현업에서 React를 더 많이 사용하는지 Vue를 더 많이 사용하는지같은 질문과 같이 통계가 나오는 부분이 아니기 때문입니다.

다만 그닥 신경쓸 필요는 없습니다. 어차피 개념은 똑같기 때문입니다. 현업에서 B 방식을 사용한다고 해서 A 방식으로 사용해왔던 내가 B 방식을 이해하지 못하는 정도의 차이가 아닙니다.

다양한 전략을 구분한다면 (Passport에서 나온 개념입니다) 다양한 전략을 모듈화해서 사용 할 수 있다는 장점이 있습니다. 하지만 어차피 토큰 인증만 사용한다면 사실상 필요없는 개념이 되겠죠. 장단점으로 표현 할 수도 있지만 과연 내가 사용할 기능인가를 생각해보는게 모듈화의 핵심입니다.

감사합니다!

­윤영진[정보보안암호수학과]님의 프로필 이미지

2023. 12. 26. 15:01

친절한 답변 감사합니다. 제 질문 다시 보니 JwtStrategy 로 잘못 작성 했는데 Passport 로 잘 이해해주셔서 감사합니다..

그러면 강사님이 설명해주신 방법과 PassportStrategy는 동일한 개념이기 때문에 사용자의 선호도 & 팀에서 추구하는 방향에 따라서 방안 선택이 달라지는거지, 큰 차이는 없다로 이해하면 될까요? ㅎㅎㅎ

 

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2023. 12. 26. 15:08

Passport를 내부적으로 까보면 결국 다양한 Strategy들이 쉽게 통합 될 수 있도록 코드를 짜뒀을 뿐입니다. 결국 개념은 같습니다. 제가 말씀 드릴 수 있는건 Passport를 사용하는 팀도 있고 사용하지 않는 팀도 있다는 것 뿐입니다.

­윤영진[정보보안암호수학과]님의 프로필 이미지

2023. 12. 26. 15:19

네 강사님 너무 감사드립니다 🙂