AWS Secrets Manager와 Parameter Store
AWS 데이터 스토어 활용
Dunieski Otano
AWS Solutions Architect
하드코딩된 비밀번호의 위험
- 개발자가 코드에 데이터베이스 비밀번호를 하드코딩
- 코드가 공개 GitHub 저장소에 푸시됨
- 공격자가 12분 만에 비밀번호 발견
- 데이터베이스 삭제 후 랜섬 요구
시크릿을 절대 하드코딩하면 안 되는 이유
- 흔한 실수
- 소스 코드에 하드코딩
- 설정 파일에 평문 저장
- 버전 관리 시스템에 커밋
- 결과
- 공개 저장소에 노출
- 교체가 어려움
- 감사 추적 불가
AWS Secrets Manager 개요
- 목적
- 저장 대상
- 데이터베이스 비밀번호, API 키, OAuth 토큰
- 주요 기능
Secrets Manager 자동 교체
- 교체 프로세스
- 교체 주기
- 무중단
- 교체 중 기존 비밀번호와 새 비밀번호 모두 사용 가능
JSON 형식으로 시크릿 저장하기
- 구조화된 시크릿
- JSON 형식
- {"username": "admin", "password": "...", "host": "db.example.com"}
- 조회 및 파싱
Parameter Store 개요
- 소속 AWS Systems Manager
- 목적
- 계층적 구조
- /app/prod/db/password
- /app/dev/api-key
- 무료 티어
- 표준 파라미터 최대 10,000개 (최대 4 KB)
- 고급 파라미터 (최대 8 KB)는 유료
Parameter Store 파라미터 유형
- String
- StringList
- SecureString
Secrets Manager vs Parameter Store 선택 가이드
- Secrets Manager 사용 시
- 자동 교체가 필요할 때
- 데이터베이스 자격 증명 저장 시
- Parameter Store 사용 시
- 정적 설정값 저장 시
- 비용 절감이 중요할 때 (무료 티어)
- 함께 사용
Preparing Video For Download...