/

AWS 인프라 연동 (S3 · 람다 · RDS)

비기능 요구사항 · 인프라 정합

AWS 인프라 연동 (S3 · Lambda · RDS)

RFP가 명시한 대용량 문서 처리·접근 권한·통신 암호화를 AWS 표준 구성으로 충족합니다. 운영자가 데이터 흐름과 비용을 직관적으로 이해할 수 있도록 시각화했습니다.

데이터 흐름 — 외부 포털 → Spring Boot → AWS S3

① CLIENT② BACKEND③ STORAGE★ 직접 업로드 (백엔드 미경유)외부 포털고객 브라우저Presigned URL 요청URL + 단명 토큰Spring Boot APIIAM · Token 발급RDS PostgreSQL · Multi-AZAWS S3 (SSE-KMS)Standard → IA → Glacierlifecycle 정책 자동 전환Lambda · AI 검수 트리거

고객 브라우저 → Spring Boot가 Presigned URL 발급 → 브라우저가 S3로 직접 업로드. 파일이 백엔드 서버를 거치지 않아 대용량(100MB+ 임상자료)에서도 타임아웃이 없습니다.

AWS 핵심 기능 6종 — RFP 비기능 요구사항 매핑

직접 업로드 토큰 (S3 Presigned URL)

RFP · 대용량 문서 업로드 시 타임아웃 방지

  • 백엔드 미경유 직접 업로드
  • 단명 토큰 (5분 만료)
  • 대용량 분할 업로드 (Multipart Upload · 5GB+)

저장 자동 암호화 (SSE-KMS)

RFP · 민감한 인증 문서 외부 유출 방지

  • S3 저장시 자동 암호화
  • 암호화 키 관리 (KMS · 회사별 분리)
  • 삭제·복호화 감사 로그

역할 기반 접근 제어 (IAM)

RFP · 철저한 파일 접근 권한 제어

  • 프로젝트 단위 권한 목록 (ACL)
  • 고객사 ↔ 운영자 ↔ 심사관 분리
  • 단명 임시 권한 (STS Assume Role)

이벤트 허브 + 서버리스 함수 (EventBridge + Lambda)

RFP · 자동화 이벤트 허브 — 검수·Tiering 통합

  • 파일 업로드 감지 (S3 ObjectCreated) → AI 검수
  • 단계 변경 → Glacier 즉시 이동
  • DB 갱신 + 운영자 알림

관계형 DB (RDS PostgreSQL)

RFP · 외부 포털 ↔ Admin 완벽한 데이터 연동

  • 다중 AZ 고가용성 (Multi-AZ)
  • 자동 백업 (35일)
  • 읽기 전용 복제본 분리 (Read Replica)

통신 암호화 + 웹 방화벽 (TLS 1.3 + WAF)

RFP · 통신 암호화 + 웹 방화벽

  • SSL 인증서 자동 갱신 (ACM)
  • 국제 표준 웹 공격 10종 차단 (OWASP Top 10)
  • 봇 차단 + 요청량 제한 (Rate Limit)

S3 저장 등급 자동 전환 흐름 (Lifecycle)

Standard

자주 조회

$0.025 / GB·월

IA (Infrequent Access)

가끔 조회 · 90일 후 자동

$0.0138 / GB·월

Glacier

장기 보관 · ISSUED 시점

$0.0045 / GB·월

★ 인증 문서는 발급 후 거의 조회되지 않습니다 — 자동으로 더 저렴한 등급으로 옮겨 약 23배 비용 절감이 가능합니다. 본 사업 차별화 제안인 Stage-Driven Storage Tiering은 90일 대기 없이 운영자가 단계를 ISSUED로 바꾸는 즉시 Glacier로 강제 이동시킵니다.

S3 운영 비용 시뮬레이터 (Seoul 리전)

입력 조건

500
15 MB
3 개월 (이후 IA로 자동 전환)

연간 예상 비용 (lifecycle 정책 적용)

연간 USD

$1.46

연간 KRW

2,138

총 저장 용량 · 7.3 GB

Standard (3개월) · $0.55

IA (9개월, lifecycle 자동전환) · $0.91

※ 환율 1 USD = 1,465.5 KRW (2026.05.10) · 데이터 전송·요청 비용 별도 (실 운영시 미미)

★ Stage-Driven Storage Tiering

NEW · 추가 제안

AWS 표준 저장 등급 자동 전환 정책(Lifecycle)은 파일 생성 후 최소 90일이 지나야 장기 보관 등급(Glacier)으로 자동 전환됩니다. 본 사업에서는 운영자가 단계를 ISSUED로 바꾸는 즉시 이벤트 허브(EventBridge)가 이벤트를 발행하고 서버리스 함수(Lambda)가 해당 프로젝트의 S3 파일을 장기 보관 등급으로 강제 이동시킵니다 — 자동으로 더 저렴한 등급으로 옮겨 첫 날부터 비용 절감이 발효됩니다.

① TRIGGER② EVENT③ COMPUTE④ STORAGE운영자 단계 변경a-pipeline 화면→ ISSUED(단계 정책 매칭)EventBridgeproject.stage.changedrule: stage = ISSUEDtarget: LambdaLambdaListObjectsV2CopyObject (Glacier)+ 감사 로그 기록S3 → Glacier객체 즉시 이동$0.023 → $0.00099/GB · 월 (23배 ↓)★ ISSUED 진입 ~ 수 분 이내 — 절감이 첫 날부터 발효

AWS 표준 Lifecycle

90일 대기

ISSUED 후에도 90일간 Standard 단가 ($0.023/GB·월)

본 사업 Stage-Driven

즉시 이동

ISSUED 진입 ~ 수 분 이내 Glacier 단가 ($0.00099/GB·월)

단가 절감

23배

$0.023 → $0.00099 — ISSUED 후 첫 달부터 발효

실제 운영 시나리오 3건

시나리오 1

100MB 임상시험 보고서 업로드

  1. 1.고객이 web 화면에서 100MB PDF 선택
  2. 2.Spring Boot가 Multipart Presigned URL 발급
  3. 3.브라우저 → S3 직접 업로드 (병렬 5MB chunk)
  4. 4.S3 ObjectCreated → Lambda → AI 1차 검수 → DB 갱신
  5. 5.운영자 대시보드에 업로드 알림 즉시 표시
결과총 소요 시간 약 30~60초 (백엔드 미경유)
시나리오 2

권한 없는 사용자 접근 시도

  1. 1.타사 직원이 다른 회사 문서 URL 추측 접근
  2. 2.S3 IAM Policy → 회사별 prefix 차단
  3. 3.STS 단명 토큰도 회사 ID 검증
  4. 4.WAF가 비정상 패턴 감지시 자동 차단
  5. 5.감사 로그에 접근 시도 기록 (90일 보관)
결과403 Forbidden + 운영자 보안 알림
시나리오 3

DB 장애 발생

  1. 1.RDS Primary 인스턴스 장애 발생
  2. 2.Multi-AZ Standby로 자동 페일오버 (~60초)
  3. 3.어플리케이션 재연결 풀 자동 복구
  4. 4.장애 동안 S3 읽기는 정상 (분리 운영)
  5. 5.CloudWatch 알람 → 슬랙 + 메일 즉시 통지
결과다운타임 60초 이내 자동 복구