Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 구멍가게코딩단
- 페이징
- 코드로배우는스프링부트웹프로젝트
- 자바편
- 리눅스
- 목록처리
- resttemplate
- network configuration
- iterator
- 티스토리 쿠키 삭제
- 코드로배우는스프링웹프로젝트
- 스프링 시큐리티
- 자료구조와 함께 배우는 알고리즘 입문
- 서버설정
- GIT
- d
- 자료구조와함께배우는알고리즘입문
- /etc/network/interfaces
- 처음 만나는 AI수학 with Python
- 스프링부트핵심가이드
- baeldung
- ㅒ
- 데비안
- 이터레이터
- 선형대수
- 처음 만나는 AI 수학 with Python
- 알파회계
- 네트워크 설정
- 친절한SQL튜닝
- Kernighan의 C언어 프로그래밍
Archives
- Today
- Total
bright jazz music
[nestjs] 인증 기능(auth) 작성하기 본문
1. 인증기능 구현에 필요한 패키지 설치하기
이미 설치한 패키지도 있을 수 있다.
// JWT(JSON Web Token) 생성/검증을 위한 NestJS 모듈
pnpm add @nestjs/jwt
// Passport.js를 NestJS에서 사용하기 위한 어댑터/래퍼
pnpm add @nestjs/passport
// Node.js 인증 미들웨어 라이브러리
pnpm add passport
// JWT 기반 인증을 위한 Passport 전략
# Authorization 헤더에서 JWT를 추출/검증
pnpm add passport-jwt
// username/password 기반 인증을 위한 Passport 전략
// 로그인 시점의 인증 처리
pnpm add passport-local
// 패스워드 해싱을 위한 라이브러리
pnpm add bcrypt
?/ 각 라이브러리의 TypeScript 타입 정의들 (-D는 개발 의존성)
pnpm add -D @types/passport-jwt @types/passport-local @types/bcrypt
2. auth.module.ts
import { Module } from '@nestjs/common';
import { JwtModule } from '@nestjs/jwt';
import { PassportModule } from '@nestjs/passport';
import { MembersModule } from '../members/members.module';
import { AuthService } from './auth.service';
import { AuthController } from './auth.controller';
import { LocalStrategy } from './strategies/local.strategy';
import { JwtStrategy } from './strategies/jwt.strategy';
@Module({
imports: [
MembersModule,
PassportModule,
JwtModule.register({
// JWT 토큰을 서명(sign)하고 검증(verify)하는 데 사용되는 비밀 키
// 이 키를 사용해 토큰이 서버에서 발급된 것이 맞는지, 중간에 변조되지 않았는지 확인
secret: 'your-secret-key', // 실제 환경에서는 환경변수로 관리 필요
signOptions: { expiresIn: '1h' },// 토큰 만료 시간
}),
],
providers: [AuthService, LocalStrategy, JwtStrategy],
controllers: [AuthController],
exports: [AuthService],
})
export class AuthModule {}
'Framework > NestJS' 카테고리의 다른 글
[nestjs] jest를 사용한 테스트 코드 작성(단위, e2e) (0) | 2024.12.26 |
---|---|
[nestjs] 멤버 컨트롤러, 서비스, 리포지토리 (0) | 2024.12.25 |
[nestjs] 스웨거 설치 및 DTO 에 적용 (0) | 2024.12.25 |
[nestjs] 회원 관련 엔티티와(member.entity.ts) 과 관련 파일 작성(enum등) (0) | 2024.12.23 |
[nestjs] TypeORM을 사용해 DB에 테이블 생성 (0) | 2024.12.21 |
Comments