express-basic-auth 를 이용한 swagger 문서 보안

효딩딩·2023년 7월 14일
0

Swagger 문서 보안

  • swagger 문서에 인증, 권한 없이 볼 수 있게되면 프로젝트 구조를 다 알려주게 되버려서 보안상 손해를 받을 수 있다.
  • 보안을 해주기 위해 express-basic-auth 라이브러리를 사용해서 적용해보자!

npm 아래 링크에 들어가면 라이브러리에 대해 잘 나온다.
[express-basic-auth](https://www.npmjs.com/package/express-basic-auth

  • Swagger 보안하기 위한 라이브러리이다.
  • 기본적으로 express 위에 동작한다.
설치하기 >  npm install express-basic-auth 
환경변수 사용시 ConfigModule를 import 해줘야한다.
-app.Module- 
  
import { ConfigModule } from '@nestjs/config';

@Module({
  imports: [
    ConfigModule.forRoot(),
  ],
-main.ts-
- 아래 userId : password 는 환경변수로 설정한다.
import * as expressBasicAuth from 'express-basic-auth';
app.use(
    ['/api', '/api-json'],
    expressBasicAuth({
      challenge: true,
      users: {
        [process.env.SWAGGER_USER]: process.env.SWAGGER_PASSWORD,
      },
    }),
  );
profile
어제보다 나은 나의 코딩지식

0개의 댓글

관련 채용 정보