경고: 액세스 토큰을 암호와 같이 처리합니다.
명령줄에서 GitHub에 액세스하려면 personal access token을(를) 만드는 대신 GitHub CLI 또는 Git 자격 증명 관리자 를 사용하는 것이 좋습니다.
스크립트에서 personal access token를 사용하는 경우 토큰을 비밀로 저장하고 GitHub Actions를 통해 스크립트를 실행하는 것이 좋습니다. 자세한 내용은 "암호화된 비밀"을 참조하세요.
이러한 옵션을 사용할 수 없는 경우 1Password CLI와 같은 다른 서비스를 사용하여 토큰을 안전하게 저장하는 것이 좋습니다.
personal access tokens 정보
Personal access token는 GitHub API 또는 명령줄을 사용할 때 GitHub에 대한 인증에 암호를 사용하는 대안입니다. Personal access tokens은(는) 자신을 대신하여 GitHub 리소스에 액세스하기 위한 것입니다. 조직을 대신하여 또는 수명이 긴 통합을 위해 리소스에 액세스하려면 GitHub App을(를) 사용해야 합니다. 자세한 내용은 “앱 정보”를 참조하세요.
GitHub은(는) 현재 personal access tokens의 두 가지 유형인 fine-grained personal access tokens 및 personal access tokens (classic)을(를) 지원합니다. GitHub은(는) 가능하면 personal access tokens (classic) 대신 fine-grained personal access tokens을(를) 사용하는 것이 좋습니다. Fine-grained personal access tokens에는 personal access tokens (classic)에 비해 몇 가지 보안 이점이 있습니다.
- 각 토큰은 단일 사용자 또는 조직이 소유한 리소스에만 액세스할 수 있습니다.
- 각 토큰은 특정 리포지토리에만 액세스할 수 있습니다.
- 각 토큰에는 personal access tokens (classic)에 부여된 범위보다 더 많은 제어를 제공하는 특정 권한이 부여됩니다.
- 각 토큰에는 만료 날짜가 있어야 합니다.
- 조직 소유자는 조직의 리소스에 액세스할 수 있는 fine-grained personal access tokens에 대한 승인을 요구할 수 있습니다.
또한 조직 소유자는 조직에 대한 personal access token (classic)의 액세스를 제한할 수 있습니다.
참고: 현재 일부 기능은 personal access tokens (classic)만 작동합니다.
- personal access tokens (classic)만 사용자 또는 사용자가 구성원이 아닌 조직이 소유하지 않은 퍼블릭 리포지토리에 대한 쓰기 권한이 있습니다.
- 외부 협력자는 personal access tokens (classic)만 사용하여 공동 작업자인 조직 리포지토리에 액세스할 수 있습니다.
- 다음 API는 personal access tokens (classic)만 지원합니다. fine-grained personal access token에 대해 지원되는 REST API 작업 목록은 "fine-grained personal access tokens에 사용할 수 있는 엔드포인트"를 참조하세요.
- GraphQL API
- Projects (classic)을(를) 관리하는 REST API
- GitHub Packages을(를) 관리하는 REST API
- 알림을 관리하는 REST API
- 리포지토리를 전송하는 REST API
- 템플릿에서 리포지토리를 만드는 REST API
- REST API를 사용하여 인증된 사용자에 대한 리포지토리 만들기
보안 예방 조치로 GitHub은(는) 1년 동안 사용되지 않은 personal access token을(를) 자동으로 제거합니다. 추가 보안을 제공하려면 personal access tokens에 만료를 추가하는 것이 좋습니다.
fine-grained personal access token 만들기
참고: Fine-grained personal access token은(는) 현재 베타 버전이며 변경될 수 있습니다. 피드백을 남기려면 피드백 토론을 참조하세요.
-
전자 메일 주소가 아직 확인되지 않은 경우 확인합니다. 1. 페이지의 오른쪽 위 모서리에서 프로필 사진을 클릭한 다음 설정 클릭합니다.
-
왼쪽 사이드바에서 개발자 설정을 클릭합니다.
-
왼쪽 사이드바의 Personal access tokens 아래에서 세분화된 토큰을 클릭합니다.
-
새 토큰 생성을 클릭합니다.
-
토큰 이름에서 토큰의 이름을 입력합니다.
-
만료에서 토큰의 만료를 선택합니다.
-
필요에 따라 설명에서 토큰의 용도를 설명하는 메모를 추가합니다.
-
리소스 소유자에서 리소스 소유자를 선택합니다. 토큰은 선택한 리소스 소유자가 소유한 리소스에만 액세스할 수 있습니다. 조직에서 fine-grained personal access tokens에 옵트인하지 않는 한 구성원인 조직은 표시되지 않습니다. 자세한 내용은 "조직에 대한 personal access token 정책 설정"을 참조하세요.
-
필요에 따라 리소스 소유자가 fine-grained personal access tokens에 대한 승인이 필요한 조직인 경우 리소스 소유자 아래의 상자에 요청에 대한 근거를 입력합니다.
-
리포지토리 액세스에서 토큰에 액세스할 리포지토리를 선택합니다. 요구 사항에 맞는 최소 리포지토리 액세스를 선택해야 합니다. 토큰에는 항상 GitHub의 모든 퍼블릭 리포지토리에 대한 읽기 전용 액세스가 포함됩니다.
-
이전 단계에서 리포지토리만 선택을 선택한 경우 선택한 리포지토리 드롭다운에서 토큰에 액세스할 리포지토리를 선택합니다.
-
사용 권한에서 토큰을 부여할 권한을 선택합니다. 리소스 소유자 및 지정한 리포지토리 액세스에 따라 리포지토리, 조직 및 계정 권한이 있습니다. 필요에 필요한 최소한의 권한을 선택해야 합니다. 각 REST API 작업에 필요한 권한에 대한 자세한 내용은 "fine-grained personal access tokens에 필요한 권한"을 참조하세요.
-
토큰 생성을 클릭합니다.
리소스 소유자로 조직을 선택했고 조직에서 fine-grained personal access tokens에 대한 승인이 필요한 경우 조직 관리자가 토큰을 검토할 때까지 토큰이 로 pending 표시됩니다. 토큰은 승인될 때까지만 공용 리소스를 읽을 수 있습니다. 조직의 소유자인 경우 요청이 자동으로 승인됩니다. 자세한 내용은 "조직에서 personal access tokens 검토 및 취소"를 참조하세요.
personal access token (classic) 만들기
참고: 조직 소유자는 조직에 대한 personal access token (classic)의 액세스를 제한할 수 있습니다. personal access token (classic)을(를) 사용하여 personal access token (classic) 액세스를 사용하지 않도록 설정한 조직의 리소스에 액세스하려고 하면 요청이 403 응답으로 실패합니다. 대신 GitHub App, OAuth App 또는 fine-grained personal access token을(를) 사용해야 합니다.
참고: personal access token (classic)은 액세스할 수 있는 모든 리포지토리에 액세스할 수 있습니다. GitHub은 특정 리포지토리로 제한할 수 있는 fine-grained personal access token을(를) 대신 사용하는 것이 좋습니다. Fine-grained personal access tokens을(를) 사용하면 광범위한 범위 대신 세분화된 권한을 지정할 수 있습니다.
-
전자 메일 주소가 아직 확인되지 않은 경우 확인합니다. 1. 페이지의 오른쪽 위 모서리에서 프로필 사진을 클릭한 다음 설정 클릭합니다.
-
왼쪽 사이드바에서 개발자 설정을 클릭합니다.
-
왼쪽 사이드바의 Personal access tokens에서 토큰(클래식) 을 클릭합니다. 1. 새 토큰 생성을 선택한 다음, 새 토큰 생성(클래식)을 클릭합니다.
-
토큰에 설명이 포함된 이름을 지정합니다.

-
토큰에 만료일을 지정하려면 Expiration(만료) 드롭다운 메뉴를 선택한 다음 기본값을 클릭하거나 일정 선택기를 사용합니다.

-
이 토큰을 부여하려는 범위를 선택합니다. 토큰을 사용하여 명령줄에서 리포지토리에 액세스하려면 repo(리포지토리)를 선택합니다. 할당된 범위가 없는 토큰은 공용 정보에만 액세스할 수 있습니다. 자세한 내용은 “사용 가능한 범위”를 참조하세요.
-
토큰 생성을 클릭합니다.
-
토큰을 사용하여 SAML Single Sign-On을 사용하는 조직이 소유한 리소스에 액세스하려면 토큰에 권한을 부여합니다. 자세한 내용은 GitHub Enterprise Cloud 설명서의 "SAML Single Sign-On에 사용할 personal access token 권한 부여"를 참조하세요.
명령줄에서 토큰 사용
토큰이 있으면 HTTPS를 통해 Git 작업을 수행할 때 암호 대신 토큰을 입력할 수 있습니다.
예를 들어 명령줄에서 다음을 입력합니다.
$ git clone https://github.com/USERNAME/REPO.git
Username: YOUR_USERNAME
Password: YOUR_TOKEN
Personal access tokens는 HTTPS Git 작업에만 사용할 수 있습니다. 리포지토리에서 SSH 원격 URL을 사용하는 경우 원격을 SSH에서 HTTPS로 전환해야 합니다.
사용자 이름과 암호를 묻는 메시지가 표시되지 않으면 자격 증명이 컴퓨터에 캐시될 수 있습니다. 키 집합에서 자격 증명을 업데이트하여 이전 암호를 토큰으로 바꿀 수 있습니다.
모든 HTTPS Git 작업에 대해 personal access token을(를) 수동으로 입력하는 대신 Git 클라이언트를 사용하여 personal access token을(를) 캐시할 수 있습니다. Git은 만료 간격이 경과할 때까지 자격 증명을 일시적으로 메모리에 저장합니다. 또한 모든 요청 전에 Git에서 읽을 수 있는 일반 텍스트 파일에 토큰을 저장할 수도 있습니다. 자세한 내용은 “Git에서 GitHub 자격 증명 캐싱”을 참조하세요.