다운 규약 문서

규약 목록 개발 규약

보안 기본 규칙

비밀값을 이슈·커밋·로그·문서에 남기지 않기, 로그인 화면 기본 계정 노출 금지, 서명 키 보관, 새 저장소는 비공개 기본.

공개범위
공개
버전
1.0.0
수정일
2026-10-27
담당
서버개발팀
원본
마크다운

#security#secrets#login#keys

이 문서의 목차
  1. 1. 비밀값은 어디에도 남기지 않는다
  2. 2. 로그인 화면에 기본 계정을 보여 주지 않는다
  3. 3. 서명 키·업데이트 키
  4. 4. 새 저장소는 비공개가 기본
  5. 5. 현장 자료
  6. 6. 점검 결과를 정상으로 간주하지 않는다
  7. 7. .gitignore 로 막기

1. 비밀값은 어디에도 남기지 않는다

비밀번호·토큰·API 키·개인 키(private key)·서명 비밀번호는 다음 어디에도 쓰지 않습니다.

남기면 안 되는 곳흔한 실수
소스 코드상수로 박아 넣기
커밋·커밋 메시지설정 파일을 통째로 git add
이슈·PR·릴리스 노트재현용으로 설정값 붙여넣기
로그요청 헤더·접속 문자열을 그대로 출력
문서·채팅접속 방법을 설명하며 비밀번호까지 적기
git 원격 URLhttps://<토큰>@github.com/... 꼴로 등록
  • 비밀값은 환경변수나 운영자 전용 보관소에서 읽습니다.
  • 설정 파일에는 비밀값 칸을 비워 둔 견본만 저장소에 넣습니다.
  • 실수로 올렸다면 지우는 것만으로는 부족합니다. 그 값을 폐기·재발급합니다(git 기록에 남기 때문).

왜 — 실제로 원격 URL 에 개인 토큰이 박힌 채 오래 방치된 저장소가 발견된 적이 있습니다. URL 은 화면·로그에 쉽게 찍힙니다.

2. 로그인 화면에 기본 계정을 보여 주지 않는다

로그인 화면에는 기본 아이디·비밀번호를 어떤 형태로도 노출하지 않습니다.

금지 형태예
안내 문구"초기 계정: admin / 1234"
입력칸 힌트(placeholder)placeholder="admin"
자동 입력기본값을 입력칸에 미리 채우기
화면 소스 주석<!-- test: admin/1234 -->

기본 계정 정보가 필요하면 설치·운영 문서에만 적고, 첫 로그인 뒤 변경하게 합니다.

3. 서명 키·업데이트 키

  • 개인 키는 소스·로그·앱·서버 어디에도 두지 않고, 운영자만 접근하는 보관소에 둡니다.
  • 서명 비밀번호는 빌드 직전에 세션 환경변수로만 올리고, 화면·로그·문서·커밋에 남기지 않습니다.
  • 키 파일 자체는 잃어버리면 복구할 수 없으므로 별도 백업을 유지합니다.
  • 이미 쓰고 있는 키·제품 식별자는 바꾸지 않습니다(바꾸면 기존 설치본이 업데이트를 받지 못합니다).

4. 새 저장소는 비공개가 기본

  • 저장소를 새로 만들 때 공개 범위를 따로 정하지 않았으면 비공개(private) 로 만듭니다.
  • 공개 여부는 담당자에게 확인을 받은 뒤 바꿉니다.

5. 현장 자료

  • 현장 로그 원본은 공유 저장소에 올리지 않습니다(용량·개인정보). 필요한 것은 요약(명령별 필드·값 집합 등)만 올립니다.
  • 고객(목장) 이름·연락처·주소는 공개 문서에 쓰지 않습니다.

6. 점검 결과를 정상으로 간주하지 않는다

자동 보안 검사가 실패했거나 확인하지 못한 항목을 "문제없음"으로 보고하지 않습니다. 확인한 범위와 확인하지 못한 범위를 나눠 적습니다.

7. .gitignore 로 막기

비밀값이 든 파일(.env, 키 파일, 로컬 설정)은 .gitignore 로 처음부터 제외합니다. 기본 목록은 '.gitignore 기본' 문서를 참조하세요.