Secret Lifecycle

값의 소유 위치와 차단 기준을 단계마다 정한다

생성, 저장, 주입, 검증, 교체가 이어져야 코드 저장소에 비밀 값이 남지 않는다.

1
Create

DB 암호, JWT secret, API key는 관리 도구에서 만든다.

2
Store

.env 대신 Secret Manager, Vault, CI/CD Secrets에 둔다.

3
Inject

컨테이너, 서버, 파이프라인 실행 시점에 주입한다.

4
Validate

Joi 스키마로 누락과 잘못된 형식을 부팅 단계에서 막는다.

5
Rotate

유출 의심, 권한 변경, 정기 보안 정책에 맞춰 교체한다.

안전한 흐름
코드에는 변수 이름과 검증 규칙만 남김

로그에는 로드 여부와 키 이름만 기록하고 실행 계정은 필요한 secret만 읽는다.

즉시 수정 신호
Git 기록, 배포 로그, 에러 응답, 공유 문서에 실제 값이 보임

키 교체와 접근 범위 점검을 함께 진행한다.