Skip to main content
설명서에 자주 업데이트를 게시하며 이 페이지의 번역이 계속 진행 중일 수 있습니다. 최신 정보는 영어 설명서를 참조하세요.

GitHub 앱 대한 권한 선택

GitHub 앱 권한은 앱이 GitHub의 API로 수행할 수 있는 작업과 앱이 받을 수 있는 웹후크를 결정합니다.

GitHub App 권한 정보

GitHub Apps에는 기본적으로 권한이 없습니다. GitHub App을(를) 등록할 때 앱에 대한 권한을 선택할 수 있습니다. 선택한 권한은 앱이 GitHub의 API로 수행할 수 있는 작업과 앱이 구독할 수 있는 웹후크를 결정합니다. 앱에 필요한 최소 권한을 선택해야 합니다.

GitHub Apps에는 기본적으로 권한이 없지만 사용자를 대신하여 작업할 때 공용 리소스를 읽을 수 있는 암시적 권한이 있습니다. 사용자가 앱을 대신하여 작업할 수 있는 권한을 부여하면 GitHub App는 결과 사용자 액세스 토큰을 사용하여 REST API 및 GraphQL API를 사용하여 공용 리소스를 읽을 수 있습니다. 사용자를 대신하여 행동하는 방법에 대한 자세한 내용은 "사용자를 대신하여 GitHub 앱 인증"을 참조하세요.

앱 권한은 리포지토리, organization 또는 계정 권한으로 분류됩니다. 리포지토리 권한을 사용하면 앱이 설치된 계정에서 소유한 리포지토리와 관련된 리소스에 액세스할 수 있습니다. 조직 권한을 사용하면 앱이 organization 계정에 설치된 경우 앱이 설치된 organization 관련된 리소스에 액세스할 수 있습니다. 계정 권한을 사용하면 사용자가 앱에 권한을 부여한 경우 앱에서 사용자와 관련된 리소스에 액세스할 수 있습니다. 앱의 사용자 권한 부여에 대한 자세한 내용은 "사용자를 대신하여 GitHub 앱 인증.

사용자가 자신의 계정 또는 organization 앱을 설치하면 앱이 요청한 리포지토리 및 organization 권한을 보고 부여합니다. 또한 앱이 개별 사용자에게 요청할 수 있는 계정 권한 목록도 표시됩니다. 사용자가 앱을 대신하여 작업할 수 있는 권한을 부여하면 앱이 요청한 계정 권한을 보고 부여합니다.

사용자 액세스 토큰을 사용하는 API 요청의 성공 여부는 사용자의 권한과 앱의 권한에 따라 달라집니다. 예를 들어 앱에 리포지토리의 콘텐츠를 쓸 수 있는 권한이 부여되었지만 사용자가 콘텐츠만 읽을 수 있는 경우 사용자 액세스 토큰은 콘텐츠만 읽을 수 있습니다. 설치 액세스 토큰을 사용하는 API 요청의 성공 여부는 앱의 권한에 따라 달라집니다.

언제든지 앱에 대한 권한을 수정할 수 있습니다. 사용 권한을 수정하면 앱이 설치된 각 계정의 소유자에게 새 권한을 승인하라는 메시지가 표시됩니다. 계정 소유자가 새 권한을 승인하지 않으면 설치 시 이전 사용 권한을 계속 사용합니다.

일부 웹후크 및 API 액세스에는 "관리" 권한이 필요합니다. 앱에 "관리" 권한이 필요한 경우 앱 홈페이지에서 이 요구 사항을 설명하는 것이 좋습니다. 이렇게 하면 사용자가 앱에 높은 수준의 권한이 필요한 이유를 이해하는 데 도움이 됩니다.

GitHub App 등록 중에 사용 권한을 지정하는 방법에 대한 자세한 내용은 "GitHub 앱 등록. 권한 수정에 대한 자세한 내용은 "GitHub 앱 등록 수정"을 참조하세요.

웹후크 액세스 권한 선택

웹후크 설명서는 각 웹후크를 GitHub Apps에 사용할 수 있는지 여부를 나타냅니다. 구독하려는 각 웹후크에 대해 웹후크 설명서를 참조하여 GitHub App에서 해당 웹후크를 구독하는 데 필요한 권한을 확인합니다. 자세한 내용은 "웹후크 이벤트 및 페이로드"을 참조하세요.

예를 들어 앱에서 이벤트를 구독 team 하려면 앱에 "멤버" organization 권한이 있어야 합니다.

GitHub App 등록 페이지에서 앱의 권한을 변경하면 사용 가능한 웹후크 이벤트가 변경됩니다. GitHub App에서 이벤트를 구독할 수 있는 충분한 권한을 선택하지 않은 경우 이벤트는 앱 등록 페이지에 옵션으로 표시되지 않습니다.

REST API 액세스에 대한 권한 선택

각 권한으로 액세스할 수 있는 REST API 엔드포인트에 대한 자세한 내용은 "GitHub 앱에 필요한 권한"을 참조하세요. 일부 엔드포인트에는 여러 권한이 필요할 수 있으며 일부 엔드포인트에는 여러 권한 중 하나가 필요할 수 있습니다. 자세한 내용은 엔드포인트에 대한 설명서를 참조하세요.

예를 들어 엔드포인트를 GET /orgs/{org}/dependabot/secrets 사용하려면 앱에 "organization dependabot 비밀" 권한에 대한 읽기 수준 이상의 권한이 있어야 합니다.

앱이 권한이 부족한 REST API 요청을 만드는 경우 API는 응답을 반환 403 합니다.

GraphQL API 액세스에 대한 권한 선택

GraphQL 요청의 경우 앱을 테스트하여 만들려는 GraphQL 쿼리 및 변형에 필요한 권한이 있는지 확인해야 합니다.

앱이 권한이 부족한 GraphQL API 쿼리 또는 변형을 만드는 경우 API는 응답을 반환 401 합니다.

Git 액세스 권한 선택

앱이 설치 또는 사용자 액세스 토큰을 사용하여 HTTP 기반 Git 액세스를 인증하도록 하려면 "콘텐츠" 리포지토리 권한을 요청해야 합니다. 앱이 디렉터리에서 .workflows Actions 파일에 액세스하거나 편집해야 하는 경우 "워크플로" 리포지토리 권한을 요청합니다.

그런 다음 액세스 토큰을 HTTP 암호로 사용할 수 있습니다. 을 액세스 토큰으로 바꿉다 TOKEN .

git clone https://x-access-token:TOKEN@github.com/owner/repo.git"