누락·타입 오류를 시작 전에 막고 비밀 노출 경로를 줄인다
process.env를 직접 흩뿌리는 대신 typed config와 검증 스키마를 거쳐 도메인 코드로 전달한다.
DATABASE_URL
민감 연결 정보
연결 URL에는 사용자명과 비밀번호가 포함될 수 있어 검증·마스킹한다.
JWT_SECRET
서명 비밀
짧거나 재사용된 서명 비밀/키는 거부하고 rotation 절차를 둔다.
PORT
공개 실행 설정
환경마다 다를 수 있지만 비밀은 아니므로 타입과 기본값만 검증한다.
FEATURE_FLAG
동작 분기
출시와 롤백을 제어하되 타입과 기본값을 명확히 둔다.
1
분류
공개 설정, 민감 설정, feature flag를 나눈다.
2
검증
ConfigModule 로딩 시 schema로 누락과 형식을 실패시킨다.
3
주입 제한
서비스는 typed provider를 통해 값에 접근한다.
4
노출 차단
로그와 에러 응답에서 token, password, secret을 마스킹한다.
5
교체
비밀값 변경 후 재배포와 재시작 경로를 확인한다.