환경 변수는 값을 코드 밖으로 빼고, 읽히는 위치를 통제한다

변수 이름, 저장 위치, 배포 환경, 빌드 시점이 함께 맞아야 안전하다.

Where.env.local / Vercel / CI값의 저장 위치
Who readsserver / client노출 경계
Whenbuild / runtime반영 시점
NameNEXT_PUBLIC_*클라이언트 노출 신호
구분
서버 변수
클라이언트 변수
비밀
가능
금지
접두사
자유
NEXT_PUBLIC_
변경 반영
runtime 또는 재시작
대개 재빌드 필요
핵심환경 변수의 위험은 값 자체보다 누가 언제 읽는지 모르는 데서 생긴다.