조직에 대한 GitHub Actions 권한 정보
기본적으로 GitHub Actions는 모든 리포지토리 및 조직에서 사용하도록 설정됩니다. GitHub Actions를 사용하지 않거나 조직의 작업 및 재사용 가능한 워크플로로 제한하도록 선택할 수 있습니다. GitHub Actions에 대한 자세한 내용은 "워크플로 작성"을(를) 참조하세요.
조직의 모든 리포지토리에 대해 GitHub Actions를 사용하도록 설정할 수 있습니다. GitHub Actions을(를) 사용하도록 설정하면 워크플로는 리포지토리 및 다른 퍼블릭 리포지토리 내의 작업 및 재사용 가능한 워크플로 항목을 실행할 수 있습니다. 조직의 모든 리포지토리에 대해 GitHub Actions를 사용하지 않도록 설정할 수 있습니다. GitHub Actions를 사용하지 않도록 설정하면 리포지토리에서 워크플로가 실행되지 않습니다.
또는 조직의 모든 리포지토리에 대해 GitHub Actions를 사용하도록 설정할 수 있지만, 워크플로가 실행할 수 있는 작업 및 재사용 가능한 워크플로를 제한할 수 있습니다.
조직에 대한 GitHub Actions 권한 관리
조직의 모든 리포지토리에 대해 GitHub Actions를 사용하지 않도록 설정하거나 특정 리포지토리만 허용하도록 선택할 수 있습니다. 또한 퍼블릭 작업 및 재사용 가능한 워크플로의 사용을 제한할 수 있으므로 사용자는 조직에 있는 로컬 작업 및 재사용 가능한 워크플로만 사용할 수 있습니다.
참고: 조직이 재정의 정책을 사용하는 엔터프라이즈에서 관리되는 경우 이러한 설정을 관리하지 못할 수 있습니다. 자세한 내용은 "엔터프라이즈에서 GitHub Actions에 대한 정책 적용"을(를) 참조하세요.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
-
조직 옆에 있는 설정을 클릭합니다.
-
왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
-
“정책”에서 옵션을 선택합니다.
소유자 허용, 비소유자, 작업, 재사용 가능한 워크플로 선택____를 선택하면 조직 내의 작업 및 재사용 가능한 워크플로가 허용되며 다른 특정 작업 및 재사용 가능한 워크플로를 허용하는 추가 옵션이 있습니다. 자세한 내용은 “선택 작업 및 재사용 가능 워크플로 실행 허용”을 참조하세요.
조직 작업 및 재사용 가능한 워크플로를 허용하면 정책이 GitHub에서 작성한 작업에 대한 모든 액세스를 차단합니다. 예를 들어
actions/checkout
작업에 액세스할 수 없습니다. -
저장을 클릭합니다.
선택 작업 및 재사용 가능한 워크플로 실행 허용
소유자 허용, 비소유자, 작업, 재사용 가능한 워크플로 선택____를 선택하면 로컬 작업 및 재사용 가능한 워크플로가 허용되며 다른 특정 작업 및 재사용 가능한 워크플로를 허용하는 추가 옵션이 있습니다.
참고: 이러한 설정은 조직에 재정의 정책이 있거나 재정의 정책이 있는 엔터프라이즈에서 관리하는 경우 관리하지 못할 수 있습니다. 자세한 내용은 "조직의 GitHub Actions 사용 안 함 또는 제한" 또는 "엔터프라이즈에서 GitHub Actions에 대한 정책 적용"을 참조하세요.
-
GitHub에 의해 만들어진 작업을 허용합니다. GitHub에서 만든 모든 작업을 워크플로에서 사용하도록 허용할 수 있습니다. GitHub에서 만든 작업은
actions
및github
조직에 있습니다. 자세한 내용은actions
및github
조직을 참조하세요. -
확인된 작성자의 Marketplace 작업을 허용합니다. 확인된 작성자가 만든 모든 GitHub Marketplace 작업을 워크플로에서 사용하도록 허용할 수 있습니다. GitHub가 작업 작성자를 파트너 조직으로 확인하면 배지가 GitHub Marketplace의 작업 옆에 표시됩니다.
-
지정된 작업 및 재사용 가능한 워크플로를 허용합니다. 특정 조직 및 리포지토리에서 작업 및 재사용 가능한 워크플로를 사용하도록 워크플로를 제한할 수 있습니다. 지정된 작업은 1000 이하로 설정할 수 있습니다.
특정 태그에 대한 액세스를 제한하거나 작업 또는 재사용 가능한 워크플로의 SHA를 커밋하려면 워크플로에서 사용된 것과 동일한 구문을 사용하여 작업 또는 재사용 가능한 워크플로를 선택합니다.
- 작업의 경우 구문은
OWNER/REPOSITORY@TAG-OR-SHA
입니다. 예를 들어actions/javascript-action@v1.0.1
을 사용하여 태그를 선택하거나actions/javascript-action@a824008085750b8e136effc585c3cd6082bd575f
를 사용하여 SHA를 선택합니다. 자세한 내용은 "워크플로에서 미리 작성된 구성 요소 사용"을(를) 참조하세요. - 재사용 가능한 워크플로의 경우 구문은
OWNER/REPOSITORY/PATH/FILENAME@TAG-OR-SHA
입니다. 예들 들어octo-org/another-repo/.github/workflows/workflow.yml@v1
입니다. 자세한 내용은 "워크플로 다시 사용"을(를) 참조하세요.
*
와일드카드 문자를 사용하여 패턴을 일치시킬 수 있습니다. 예를 들어space-org
로 시작하는 조직에서 모든 작업 및 재사용 가능한 워크플로를 허용하려면space-org*/*
를 지정할 수 있습니다. octocat으로 시작하는 리포지토리에서 모든 작업 및 재사용 가능한 워크플로를 허용하려면*/octocat**@*
을 사용할 수 있습니다.*
와일드카드 사용에 대한 자세한 정보는 "GitHub Actions에 대한 워크플로 구문”을 참조하세요. - 작업의 경우 구문은
참고: GitHub Free, GitHub Pro, GitHub Free 조직, 또는 GitHub Team 플랜인 경우, 지정된 작업 및 재사용 가능 워크플로 옵션은 퍼블릭 리포지토리에서만 사용할 수 있습니다.
이 프로시저에서는 지정된 작업 및 재사용 가능한 워크플로를 허용 목록에 추가하는 방법을 보여 줍니다.
- GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
- 조직 옆에 있는 설정을 클릭합니다.
- 왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
- "정책"에서 소유자 허용, 비소유자, 작업, 재사용 가능한 워크플로 선택____를 선택하고 필요한 작업 및 재사용 가능한 워크플로를 목록에 추가합니다.
- 저장을 클릭합니다.
자체 호스팅 실행기의 사용 제한
GitHub의 자체 호스트형 실행기가 임시 클린 가상 머신에서 호스트된다는 보장은 없습니다. 이에 따라 워크플로에서 신뢰할 수 없는 코드로 손상될 수 있습니다.
마찬가지로,리포지토리를 포크하고 끌어오기 요청을 할 수 있는 사람(일반적으로 리포지토리에 대한 읽기 액세스 권한이 있는 사용자)은 비밀 및 GITHUB_TOKEN
에 대한 액세스 권한을 얻는 것을 포함하여, 설정에 따라 리포지토리에 대한 쓰기 권한을 부여할 수 있는 자체 호스팅 실행기 환경을 손상시킬 수 있습니다. 워크플로는 환경 및 필수 검토를 사용하여 환경 비밀에 대한 액세스를 제어할 수 있지만 워크플로는 격리된 환경에서 실행되지 않으며 자체 호스팅 실행기에서 실행될 때 동일한 위험에 여전히 취약합니다.
이러한 이유와 기타 이유로 리포지토리 수준에서 사용자가 자체 호스팅 실행기를 만들지 못하도록 설정할 수 있습니다.
사용하지 못하도록 설정한 경우 리포지토리에 자체 호스팅 실행기가 이미 있으면 해당 실행기는 "사용 안 함"이라는 상태와 함께 나열되며 새 워크플로 작업이 할당되지 않습니다.
Note
리포지토리 수준 자체 호스트형 실행기 생성을 사용하지 않도록 설정한 경우 워크플로는 엔터프라이즈 또는 조직 수준에서 자체 호스트형 실행기에 계속 액세스할 수 있습니다.
- GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
- 조직 옆에 있는 설정을 클릭합니다.
- 왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
- "실행기"에서 드롭다운 메뉴를 사용하여 원하는 설정을 선택합니다.
- 모든 리포지토리 - 조직의 모든 리포지토리에 자체 호스팅 실행기를 사용할 수 있습니다.
- 선택한 리포지토리 - 선택한 리포지토리에만 자체 호스팅 실행기를 사용할 수 있습니다.
- 사용 안 함 - 리포지토리 수준에서 자체 호스팅 실행기를 만들 수 없습니다.
- 선택한 리포지토리를 선택한 경우:
- 을(를) 클릭합니다.
- 자체 호스팅 실행기를 허용하려는 리포지토리의 확인란을 선택합니다.
- 리포지토리 선택을 클릭합니다.
퍼블릭 포크에서 워크플로에 필요한 승인 구성
누구나 퍼블릭 리포지토리를 포크한 다음 리포지토리의 GitHub Actions 워크플로에 대한 변경 내용을 제안하는 끌어오기 요청을 제출할 수 있습니다. 포크의 워크플로는 비밀과 같은 중요한 데이터에 액세스할 수 없지만 악의적인 목적으로 수정된 경우 유지 관리자에게 성가신 일이 될 수 있습니다.
이를 방지하기 위해 일부 외부 기여자로부터 퍼블릭 리포지토리에 대한 끌어오기 요청 워크플로는 자동으로 실행되지 않으며 먼저 승인되어야 할 수 있습니다. 기본적으로 모든 최초 참가자는 워크플로를 실행하려면 승인이 필요합니다.
참고: pull_request_target
이벤트에 의해 트리거되는 워크플로는 기본 분기의 컨텍스트에서 실행됩니다. 기본 분기는 신뢰할 수 있는 것으로 간주되므로 이러한 이벤트에 의해 트리거되는 워크플로는 승인 설정에 관계없이 항상 실행됩니다. pull_request_target
이벤트에 대한 자세한 내용은 "워크플로를 트리거하는 이벤트"를 참조하세요.
아래 절차를 사용하여 조직에 대해 이 동작을 구성할 수 있습니다. 이 설정을 수정하면 엔터프라이즈 수준에서 구성 세트가 재정의됩니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
-
조직 옆에 있는 설정을 클릭합니다.
-
왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
-
외부 공동 작업자의 포크 끌어오기 요청 워크플로에서 다음 옵션 중 하나를 선택합니다.
- GitHub를 처음 사용하는 기여자에 대한 승인 필요. 이 옵션은 리포지토리에 커밋한 적이 없으며 새 GitHub 계정이 있는 사용자가 워크플로를 실행하려면 승인이 필요합니다.
- 처음 참여하는 기여자에 대한 승인 필요. 이 옵션은 리포지토리에 커밋한 적이 없는 사용자가 워크플로를 실행하려면 승인이 필요합니다.
- 모든 외부 공동 작업자에 대한 승인 필요. 이 옵션은 리포지토리 공동 작업자가 아닌 모든 사용자가 워크플로를 실행하려면 승인이 필요합니다. 리포지토리가 조직 소유인 경우 이 옵션을 사용하면 조직 구성원이 아닌 모든 리포지토리 공동 작업자가 워크플로를 실행하려면 승인이 필요합니다.
-
저장을 클릭하여 설정을 적용합니다.
이 정책이 적용되는 워크플로 실행 승인에 대한 자세한 내용은 “퍼블릭 포크에서 워크플로 실행 승인”을 참조하세요.
프라이빗 리포지토리 포크에 워크플로 사용
프라이빗 리포지토리의 포크를 사용하는 경우 사용자가 pull_request
이벤트에서 워크플로를 실행하는 방법을 제어하는 정책을 구성할 수 있습니다. 프라이빗 리포지토리에서만 사용할 수 있으며 조직 또는 리포지토리에 대해 이러한 정책 설정을 구성할 수 있습니다.
조직에 대해 정책을 사용하지 않도록 설정하면 리포지토리에서 정책을 사용하도록 설정할 수 없습니다. 조직에서 정책을 사용하도록 설정하면 개별 리포지토리에 대해 정책을 사용하지 않도록 설정할 수 있습니다.
- 포크 끌어오기 요청에서 워크플로 실행 - 사용자가 포크 끌어오기 요청에서 워크플로를 실행할 수 있도록 허용하고, 읽기 전용 권한이 있는
GITHUB_TOKEN
을 사용하며, 비밀에 액세스할 수 없습니다. - 끌어오기 요청에서 워크플로에 쓰기 토큰 보내기 - 포크에서 끌어오기 요청이 쓰기 권한으로
GITHUB_TOKEN
을 사용할 수 있도록 허용합니다. - 끌어오기 요청에서 워크플로로 비밀 보내기 - 끌어오기 요청에 모든 비밀을 사용할 수 있도록 합니다.
- 포크 끌어오기 요청 워크플로 승인 필요 - 쓰기 권한이 없는 공동 작업자의 끌어오기 요청에서 워크플로를 실행하려면 쓰기 권한이 있는 사용자의 승인이 필요합니다.
조직에 대한 프라이빗 포크 정책 구성
- GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
- 조직 옆에 있는 설정을 클릭합니다.
- 왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
- 포크 끌어오기 요청 워크플로에서 옵션을 선택합니다.
- 저장을 클릭하여 설정을 적용합니다.
조직에 대한 GITHUB_TOKEN
의 권한 설정
GITHUB_TOKEN
에 부여된 기본 사용 권한을 설정할 수 있습니다. GITHUB_TOKEN
의 자세한 내용은 "자동 토큰 인증"을 참조하세요. 제한된 사용 권한 집합을 기본값으로 선택하거나 허용 설정을 적용할 수 있습니다.
조직 또는 리포지토리의 설정에서 GITHUB_TOKEN
에 대한 기본 권한을 설정할 수 있습니다. 조직 설정에서 제한 옵션을 기본값으로 선택하면 조직 내 리포지토리 설정에서 동일한 옵션이 선택되고 허용 옵션이 사용하지 않도록 설정됩니다. 조직이 GitHub Enterprise 계정에 속하고 엔터프라이즈 설정에서 더 제한적인 기본값이 선택된 경우 조직 설정에서 더 허용적인 기본값을 선택할 수 없습니다.
리포지토리에 대한 쓰기 권한이 있는 사용자는 워크플로 파일에서 GITHUB_TOKEN
키를 편집하여 필요에 따라 액세스를 추가하거나 제거하여 permissions
에 부여된 권한을 수정할 수 있습니다. 자세한 내용은 permissions
를 참조하세요.
기본 GITHUB_TOKEN
권한 구성
기본적으로 새 조직을 만들 때 GITHUB_TOKEN
에는 contents
및 packages
범위에 대한 읽기 권한만 있습니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭하고 프로필을 클릭합니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
-
조직 옆에 있는 설정을 클릭합니다.
-
왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
-
"워크플로 사용 권한"에서
GITHUB_TOKEN
이(가) 모든 권한(허용 설정)에 대한 읽기 및 쓰기 권한을 가질지 또는contents
및packages
권한(제한된 설정)에 대한 읽기 권한만 가질지 선택합니다. -
저장을 클릭하여 설정을 적용합니다.
GitHub Actions가 끌어오기 요청을 만들거나 승인하는 것 방지
GitHub Actions 워크플로가 끌어오기 요청을 만들거나 승인하는 것을 허용 또는 차단하도록 선택할 수 있습니다.
기본적으로 새 조직을 만들 때 워크플로는 끌어오기 요청을 만들거나 승인할 수 없습니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭하고 프로필을 클릭합니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
-
조직 옆에 있는 설정을 클릭합니다.
-
왼쪽 사이드바에서 작업을 클릭한 다음 일반을 클릭합니다.
-
“워크플로 권한”에서 GitHub Actions를 사용하여 끌어오기 요청을 만들고 승인하도록 허용 설정을 사용하여
GITHUB_TOKEN
이 끌어오기 요청을 만들고 승인할 수 있는지 여부를 구성합니다. -
저장을 클릭하여 설정을 적용합니다.
조직의 GitHub Actions 캐시 스토리지 관리
조직 관리자는 조직 내 모든 리포지토리의 GitHub Actions 캐시 스토리지를 볼 수 있습니다.
리포지토리별 GitHub Actions 캐시 스토리지 보기
조직의 각 리포지토리별로, 리포지토리에서 사용하는 캐시 스토리지 양, 활성 캐시 수 및 리포지토리가 총 캐시 크기 제한에 근접했는지 여부를 확인할 수 있습니다. 캐시 사용량 및 제거 프로세스에 대한 자세한 내용은 "워크플로 속도를 높이기 위한 종속성 캐싱"을(를) 참조하세요.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭하고 프로필을 클릭합니다.
-
GitHub의 오른쪽 위 모서리에서 프로필 사진을 선택하고 조직을 클릭합니다.
-
조직 옆에 있는 설정을 클릭합니다.
-
왼쪽 사이드바에서 작업을 클릭한 다음 캐시를 클릭합니다.
-
해당 GitHub Actions 캐시에 대한 정보는 리포지토리 목록을 검토하세요. 리포지토리 이름을 클릭하여 리포지토리의 캐시에 대한 자세한 정보를 볼 수 있습니다.