Files
experts_page/docs/PRD.md
Lectom C Han ab8f278fb9 초기셋팅
2025-09-15 13:30:09 +09:00

4.5 KiB

제품 요구사항 문서 (PRD): 전문가용 보안 정보 사이트 (초안)

1. 개요

본 문서는 특정 분야의 전문가들에게만 민감한 정보를 제공하기 위한 보안 웹사이트의 요구사항을 정의합니다. 사용자는 여러 단계의 강력한 인증 절차와 법적 동의(NDA)를 거쳐야만 내부 정보에 접근할 수 있습니다.

2. 목표

  • 보안: 검증되고 신원이 확인된 사용자만이 정보에 접근할 수 있도록 보장합니다.
  • 사용자 경험: 복잡한 인증 절차를 최대한 명확하고 원활하게 안내하여 이탈을 최소화합니다.
  • 효율성: 콘텐츠 변경 시, 대상 사용자에게 신속하게 알림을 전달하여 정보의 적시성을 확보합니다.

3. 사용자 페르소나

  • 대상: 특정 산업 분야(예: 금융, 법률, 의료)의 전문가, 연구원, 고위 관계자.
  • 특징: 제공되는 정보의 가치와 민감도를 이해하고 있으며, 다소 복잡하더라도 보안 절차를 준수할 의향이 있습니다.

4. 핵심 기능 요구사항 (Features)

4.1. 사용자 인증 및 접근 흐름

  • Public Zone (랜딩 페이지):
    • 프로젝트의 목적과 개요를 설명하는 정적 페이지.
    • 인증 절차를 시작할 수 있는 ‘콘텐츠 보기’ 또는 ‘로그인/인증’ 버튼을 제공합니다.
  • Authentication Zone (인증 페이지):
    • 1단계: NICE 본인인증: 사용자는 NICE 실명인증 서비스를 통해 본인임을 증명해야 합니다.
    • 2단계: 카카오톡 또는 전화번호 인증: 본인인증 완료 후, 추가적인 연락처 확인을 위해 카카오톡 또는 SMS 인증을 거쳐야 합니다.
    • 모든 인증 정보는 안전하게 관리되어야 하며, 세션 또는 토큰 기반으로 인증 상태가 유지되어야 합니다.
  • Legal Zone (NDA 서명):
    • 3단계: NDA 서명: 모든 인증을 통과한 사용자는 eFormSign을 통해 온라인으로 NDA(비밀유지협약)에 서명해야 합니다.
    • 서명 완료 전까지는 콘텐츠에 접근할 수 없으며, 서명 페이지로 강제 이동됩니다.
  • Private Zone (콘텐츠 페이지):
    • 모든 인증 및 NDA 서명을 완료한 사용자에게만 노출되는 보안 콘텐츠 영역입니다.
    • URL을 직접 입력하여 접근하더라도, 인증 및 서명 상태를 확인하여 권한이 없으면 인증 페이지로 리디렉션해야 합니다.
    • 해당 내용은 메인 페이지 뿐 아니라, 모든 이미지 영상 등의 리소스에도 해당합니다.

4.2. 푸시 알림

  • 트리거: 관리자가 새로운 콘텐츠를 게시하거나 중요 업데이트를 할 경우.
  • 채널: 사용자가 2단계 인증 시 제공한 카카오톡 또는 전화번호를 통해 알림을 발송합니다.
  • 내용: “새로운 정보가 업데이트되었습니다.“와 같이 간결한 메시지와 함께 사이트 링크를 포함합니다.

4.3. 디지털 워터마킹 (Digital Watermarking)

  • 목표: 콘텐츠 내 모든 이미지와 비디오에 사용자 식별 정보를 삽입하여, 유출 시 출처를 추적할 수 있도록 합니다.
  • 적용 대상: Private Zone에서 제공되는 모든 이미지 및 비디오 리소스.
  • 구현 방식:
    • 이미지 (보이지 않는 워터마크):
      • 서버 사이드에서 스테가노그래피(Steganography) LSB(최하위 비트) 변조 방식을 사용합니다.
      • 사용자가 이미지를 요청할 때, 실시간으로 해당 사용자의 고유 식별자를 이미지 픽셀 데이터에 보이지 않게 삽입하여 제공합니다.
    • 비디오 (보이는 워터마크):
      • 비디오 플레이어 화면 위에 사용자의 식별 정보(예: 이메일, IP 주소)를 반투명 텍스트 오버레이로 표시합니다.
      • 이 워터마크는 비디오 재생 내내 표시되어 스크린 녹화를 통한 유출을 억제하고, 유출 시 출처를 명확히 합니다.

5. 비기능적 요구사항

  • 보안: 모든 API 통신은 HTTPS를 사용하며, 민감한 사용자 데이터는 안전하게 처리되어야 합니다.
  • 성능: Vite 기반의 빠른 페이지 로딩 속도를 보장해야 합니다.
  • 호환성: 최신 버전의 주요 웹 브라우저(Chrome, Safari, Edge)에서 정상적으로 동작해야 합니다.

6. 기술 스택 제안

  • 프론트엔드: React, Vite, React Router
  • 상태 관리: Zustand
  • 백엔드 (필요 시): Node.js/Express - 인증 콜백 처리, 알림 발송 등