본문으로 건너뛰기

GitHub Personal Access Token (Fine-grained) 생성 및 관리 규칙

등록일: 2026. 4. 4. 11:01


1. 토큰 네이밍 원칙 (Naming Convention)

표준화된 관리를 위해 [행위]-[대상]-[환경]-[날짜] 순으로 명명하며, 가독성과 식별력을 위해 전체 대문자(Upper Case) 사용을 권장한다.

  • 행위(Action): 토큰의 주된 권한 (예: PUSH, READ, ADMIN)
  • 대상(Target): 토큰이 접근하는 리포지토리 또는 서비스명 (예: VAULT, NEXUS)
  • 환경(Environment): 사용되는 시스템 환경 (예: PROD, DEV, STG)
  • 날짜(Date): 생성 시점의 날짜 (YYYYMMDD 형식)

2. 토큰 유형 및 보안 설정

보안 위협을 최소화하기 위해 'Fine-grained tokens' 사용을 원칙으로 한다.

  • Repository selection: 'Only select repositories'를 선택하여 대상 리포지토리(Vault)만 지정.
  • Permissions:
    • Contents: 'Read and write' (파일 생성 및 커밋/푸시를 위해 필수)
    • Metadata: 'Read-only' (자동 지정)
  • Expiration: 개인 프로젝트의 경우 관리 편의를 위해 90일 또는 1년 이내로 설정.

3. 시스템 연동 및 관리 주의사항

  • 인증 방식: GitHub API 직접 호출 시 Header에 'Authorization: Bearer [TOKEN]' 형식을 사용한다.
  • 설정 관리: 토큰 값은 소스 코드나 공용 설정 파일에 직접 노출하지 않으며, .env 파일 또는 시스템 환경변수를 통해 주입한다.
  • 보안 유지: .env 파일이 GitHub 등 원격 저장소에 업로드되지 않도록 .gitignore 설정을 철저히 확인한다. 만약 유출이 의심될 경우 즉시 해당 토큰을 Revoke(만료) 처리하고 새로 발급한다.