백엔드

인증-보안

2FA, RBAC, 세션, 암호화, Crypto

21개의 글
  1. 백엔드/Prisma

    Prisma $extends 테넌트 격리와 $transaction 사이의 타협: 수동 orgId 주입 전략

    SaaS 모드에서 Project 쿼리에 organizationId를 자동 주입하던 $extends 확장이 $transaction 콜백 안에서는 동작하지 않았다. 테넌트 격리를 포기할 수도, 트랜잭션을 포기할 수도 없어서 '수동 orgId 주입' 패턴으로 절충한 기록.

    13분 읽기
  2. 백엔드/인증-보안

    Next.js에서 2FA/TOTP 인증 구현하기: 라이브러리 없이 RFC 6238 표준 준수

    외부 라이브러리 없이 RFC 6238 TOTP 표준을 직접 구현했습니다. Dynamic Truncation 알고리즘 동작 원리와 Next.js 미들웨어에서 2FA를 강제하는 방법을 공유합니다.

    10분 읽기
  3. 백엔드/인증-보안

    Next.js App Router에서 CSRF 토큰 관리하기: Double Submit Cookie 패턴

    CSRF 공격을 방어하기 위해 Double Submit Cookie 패턴을 구현했습니다. Edge Runtime 호환, 타이밍 공격 방지, 그리고 useCsrfToken 훅까지의 경험을 공유합니다.

    9분 읽기
  4. 프론트엔드/크롬확장

    크롬 확장 보안 강화: CSP와 최소 권한 원칙

    크롬 확장은 강력한 권한을 가지므로 보안이 중요합니다. CSP로 인라인 스크립트와 동적 코드 실행을 차단하고, 불필요한 권한과 리소스 노출을 제거하여 공격 표면을 최소화했습니다.

    10분 읽기
  5. 프론트엔드/Next.js

    Next.js 로컬 개발 환경 HTTP → HTTPS 전환 완전 가이드: mkcert, NextAuth v5 쿠키 문제 해결까지

    로컬 개발 환경에서 HTTPS가 필요할 때 — mkcert 인증서 생성부터 NextAuth v5의 쿠키 프리픽스 문제 해결까지, 실전에서 마주치는 모든 함정과 해결법을 정리합니다.

    12분 읽기
  6. 인프라/네트워크

    Tailscale VPN 적용 후 GitHub Actions SSH 배포 복구하기

    Oracle Cloud 서버에 Tailscale SSH를 적용했더니 CI/CD 배포가 깨졌습니다. appleboy/ssh-action에서 tailscale ssh로 전환하여 SSH 키 없이 안전하게 배포하는 전체 과정을 공유합니다.

    13분 읽기
  7. 백엔드/Prisma

    Prisma Extension으로 민감 데이터 암호화 자동화하기

    개인정보보호법 준수를 위해 DB 민감 데이터를 암호화해야 했습니다. Prisma Extension으로 투명한 암호화를 구현하고, Blind Index로 검색 문제까지 해결한 경험을 공유합니다.

    12분 읽기
  8. 백엔드/인증-보안

    Express 프록시 레이어에서 파일 다운로드 자동 암호화 구현하기

    http-proxy-middleware의 selfHandleResponse 옵션을 활용해 파일 다운로드 응답을 가로채고 AES-256-GCM으로 암호화하는 방법. 전략 패턴으로 사내 API 연동도 준비.

    13분 읽기
  9. 백엔드/인증-보안

    민감 데이터 접근 추적: Audit Logging 구현하기

    개인정보보호법과 GDPR 준수를 위해 민감 데이터 접근 이력을 추적해야 했습니다. Context 기반 감사 로깅과 Fire-and-forget 패턴으로 구현한 경험을 공유합니다.

    9분 읽기
  10. 자동화/n8n

    n8n 셀프 호스팅에 사내 SSO 연동하기: 인증 게이트웨이 구축 완벽 가이드

    n8n을 사내에 도입하면서 직원들이 별도 계정 없이 사번/비밀번호로 로그인할 수 있게 만들었습니다. Enterprise 라이선스 없이 Community Edition에서 인증 게이트웨이를 구축한 과정을 공유합니다.

    16분 읽기