본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


interceptor5

Nestjs 프레임워크 서버(가드와 오류 필터) -7 #가드(Guard) 가드는 인터셉터와 비슷한 개념으로 컨트롤러에 동작하기 전 사용자가 정의한 행동을 실시 합니다. 가드의 목적은 주로 사용자의 권한(Authentication)을 확인하기 위한 기능으로 사용이 됩니다. 가드를 사용 하려면 CanActivate라는 인터페이스를 상속받아야 합니다. * 와...CanActivate..앵귤러랑 이름마저 같아! 먼저 가드를 생성하여 줍니다. * 파일이름 : app.일반가드.ts import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common'; import { Observable } from 'rxjs'; @Injectable() export class 일반가드 implements CanActiv.. 2022. 8. 12.
Nestjs 프레임워크 서버(인터셉터) -6 #인터셉터(Interceptor) 인터셉터는 컨트롤러가 동작하기 전에 사용자가 정의하는 행동을 하는 것을 의미 합니다. nestjs에서 인터셉터를 만드는 것은 어렵지 않습니다. NestInterceptor 라는 인터페이스를 상속받은 뒤에 @Injectable 데코레이터를 붙여주면 기본적인 인터셉터 모양을 만들 수 있습니다. * 파일이름 : app.일반인터셉터.ts import { Injectable, NestInterceptor, ExecutionContext, CallHandler, } from '@nestjs/common'; import { Observable } from 'rxjs'; import { tap } from 'rxjs/operators'; @Injectable() export class.. 2022. 8. 10.
20. 프로세스 검증누락(PV) 프로세스 검증누락 취약점은, 인증이 필요한 페이지에 대해 인가된 인원인지를 확인하는 기능이 존재하지 않는경우에 해당 정보를 변조하거나 탈취 할 수 있는 취약점을 의미 합니다. 로그인을 해야만 게시글을 수정할 수 있어야하는데 그렇지 않는경우나 비밀글임에도 불구하고 특정 인덱스 값을 바꾸어 들어갈 수 있는 경우가 해당 됩니다. #방법1 인증이 필요한 페이지에서의 권한여부를 확인하는 기능은 필수 입니다. 프론트에서 단순하게 hide, none으로 가리는 것 또한 1차 방법이 될 수 있겠지만, 이러한 경우를 우회하여 접근한 경우를 대비하기 위해서 서버에서 또한 권한여부에 따라 페이지의 접근을 제한 하여야 합니다. 대표적인 방법으로는 로그인을 하는 경우 session을 활용하여 해당 페이지에 대한 접근가능 여부를.. 2021. 12. 9.
Node.js Interceptor(인터셉터) Node.js에서 로그인에 따른 권한이나 요청에 따른 데이터 필터릴을 하기위해서는 2가지 방법 형태로 존재한다. 전체 일괄적용하는 방법 또는 응답에 대한 개별적용 방법이다. 전체 일괄적용은 이미지, 텍스트파일, 기타 프론트용 js파일에도 영향을 미친다. Express 모듈 기준으로 작성되어 있다. * 전체 일괄 적용 const express = require('express'); const app = express(); app.use(function(req, res, next) { //인터셉터 역할 부여 next(); }); * 응답에 대한 개별 적용 const express = require('express'); const router = express.Router(); router.all('/매핑주소.. 2019. 7. 18.
Angular Guard를 활용한 인터셉터 구현 앵귤러에서는 Guard라는 인터페이스를 통해서 통상 서버에서 사용하던 인터셉터 기능을 사용 할 수 있게 해준다. Guard를 사용하기위해서는 직접 코딩해도 상관없지만 명령어를 통해서 쉽게 만들 수 있다. ng g guard angular-aop 만들어진 클래스는 아래처럼 기본적으로 세팅되어 생성된다. import { Injectable } from '@angular/core'; import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; import { Observable } from 'rxjs'; @Injectable({ providedIn: 'root' }) export class AuthGuard.. 2019. 4. 28.