リポジトリの GitHub Actions 権限について
既定では、GitHub Actions の後の GitHub Actions ですべてのリポジトリと組織で有効になります。 GitHub Actions を無効にするか、または Enterprise のアクションと再生可能なワークフローに制限することができます。 GitHub Actions について詳しくは、「ワークフローの書き込み」を参照してください。
リポジトリで GitHub Actions を有効化できます。 GitHub Actions を有効にすると、ワークフローはリポジトリ内および他のパブリックまたは内部のリポジトリに配置されているアクションと再利用可能なワークフローを実行できます。 リポジトリの GitHub Actions を完全に無効化することができます。 GitHub Actionsを無効化すると、リポジトリでワークフローが実行されなくなります。
または、リポジトリで GitHub Actions を有効にしながら、ワークフローが実行できるアクションと再利用可能なワークフローを制限することもできます。
リポジトリの GitHub Actions 権限を管理する
リポジトリの GitHub Actions を無効にしたり、リポジトリで使用できるアクションと再利用可能なワークフローを構成するポリシーを設定したりすることもできます。
メモ
Organization に優先ポリシーがある場合、または優先ポリシーのある Enterprise によって管理されている場合は、これらの設定を管理できない場合があります。 詳細については、「組織のGitHub Actionsの無効化または制限」または「企業でGitHub Actionsのポリシーを適用する」を参照してください。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[Actions permissions] で、オプションを選択します。
データ 再利用可能なアクション.アクションの使用ポリシー設定 %}
-
**[保存]** をクリックします。
選択したアクションと再利用可能なワークフローの実行の許可
[ [Allow enterprise, and select non-enterprise, actions and reusable workflows](エンタープライズを許可し、非エンタープライズ、アクション、再利用可能なワークフローを選択する) ] を選ぶと、ローカル アクションと再利用可能なワークフローが許可され、他の特定のアクションや再利用可能なワークフローを許可するための追加のオプションがあります。
メモ
Organization に優先ポリシーがある場合、または優先ポリシーのある Enterprise によって管理されている場合は、これらの設定を管理できない場合があります。 詳細については、「組織のGitHub Actionsの無効化または制限」または「企業でGitHub Actionsのポリシーを適用する」を参照してください。
-
**[GitHub によって作成されたアクションを許可する]:** GitHub によって作成されたすべてのアクションを、ワークフローで使用できるようにします。 GitHub によって作成されたアクションは、`actions` および `github` 組織にあります。 詳細については、「[`actions`](https://github.com/actions) および [`github`](https://github.com/github) 組織」を参照してください。 -
**[検証済みの作成者による Marketplace アクションを許可する]:** 検証済みの作成者が作成したすべての GitHub Marketplace アクションをワークフローで使用できるようにできます。 GitHubがアクションの作者をパートナーOrganizationとして検証すると、GitHub Marketplaceでアクションの隣に<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-verified" aria-label="The verified badge" role="img"><path d="m9.585.52.929.68c.153.112.331.186.518.215l1.138.175a2.678 2.678 0 0 1 2.24 2.24l.174 1.139c.029.187.103.365.215.518l.68.928a2.677 2.677 0 0 1 0 3.17l-.68.928a1.174 1.174 0 0 0-.215.518l-.175 1.138a2.678 2.678 0 0 1-2.241 2.241l-1.138.175a1.17 1.17 0 0 0-.518.215l-.928.68a2.677 2.677 0 0 1-3.17 0l-.928-.68a1.174 1.174 0 0 0-.518-.215L3.83 14.41a2.678 2.678 0 0 1-2.24-2.24l-.175-1.138a1.17 1.17 0 0 0-.215-.518l-.68-.928a2.677 2.677 0 0 1 0-3.17l.68-.928c.112-.153.186-.331.215-.518l.175-1.14a2.678 2.678 0 0 1 2.24-2.24l1.139-.175c.187-.029.365-.103.518-.215l.928-.68a2.677 2.677 0 0 1 3.17 0ZM7.303 1.728l-.927.68a2.67 2.67 0 0 1-1.18.489l-1.137.174a1.179 1.179 0 0 0-.987.987l-.174 1.136a2.677 2.677 0 0 1-.489 1.18l-.68.928a1.18 1.18 0 0 0 0 1.394l.68.927c.256.348.424.753.489 1.18l.174 1.137c.078.509.478.909.987.987l1.136.174a2.67 2.67 0 0 1 1.18.489l.928.68c.414.305.979.305 1.394 0l.927-.68a2.67 2.67 0 0 1 1.18-.489l1.137-.174a1.18 1.18 0 0 0 .987-.987l.174-1.136a2.67 2.67 0 0 1 .489-1.18l.68-.928a1.176 1.176 0 0 0 0-1.394l-.68-.927a2.686 2.686 0 0 1-.489-1.18l-.174-1.137a1.179 1.179 0 0 0-.987-.987l-1.136-.174a2.677 2.677 0 0 1-1.18-.489l-.928-.68a1.176 1.176 0 0 0-1.394 0ZM11.28 6.78l-3.75 3.75a.75.75 0 0 1-1.06 0L4.72 8.78a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L7 8.94l3.22-3.22a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg>バッジが表示されるようになります。 -
** を許可するか 指定したアクション および再利用可能なワークフローを拒否する:** 特定の組織やリポジトリでアクション および再利用可能な を使用すると、ワークフローを制限できます。 指定したアクションは、1000 を超えるアクションに設定できません。アクションまたは再利用可能なワークフローの特定のタグまたはコミット SHA へのアクセスを制限するには、ワークフローで使われているのと同じ構文を使って、アクションまたは再利用可能なワークフローを選びます。
- アクションの場合の構文は、
OWNER/REPOSITORY@TAG-OR-SHAです。 たとえば、タグを選択するにはactions/javascript-action@v1.0.1を使用し、SHA を選択するにはactions/javascript-action@a824008085750b8e136effc585c3cd6082bd575fを使用します。 詳しくは、「ワークフローで事前に作成されたビルディング ブロックを使用する」をご覧ください。 (この行はGitHub Actionsのフロージャンプのバージョン管理で使用される特定のテンプレート構文を含みます。詳細な説明は技術ドキュメントを参照してください) - 再利用可能なワークフローの場合の構文は、
OWNER/REPOSITORY/PATH/FILENAME@TAG-OR-SHAです。 たとえば、「octo-org/another-repo/.github/workflows/workflow.yml@v1」のように入力します。 詳しくは、「ワークフローを再利用する」をご覧ください。
パターンのマッチには、ワイルドカード文字
*を使用できます。 たとえば、space-orgで始まる Organization のすべてのアクションと再利用可能なワークフローを許可するには、space-org*/*と指定できます。 octocat で始まるリポジトリのすべてのアクションと再利用可能なワークフローを許可するには、*/octocat**@*を使用できます。*ワイルドカードの使用の詳細については、「GitHub Actions のワークフロー構文」を参照してください。,を使用して、パターンを区切ります。 たとえば、octocatとoctokit組織からすべてのアクション と 再利用可能なワークフロー を許可するには、octocat/*, octokit/*を指定します。!プレフィックスを使用してパターンをブロックします。 たとえば、space-org組織からのすべてのアクション と再利用可能なワークフロー を許可し、space-org/actionなどの具体的なアクションをブロックするには、space-org/*, !space-org/action@*を指定できます。 既定では、一覧で指定したアクションと再利用可能なワークフローのみが許可されます。 すべてのアクション と再利用可能なワークフロー を許可する一方で、特定のアクションを禁止するには、*, !space-org/action@*を指定できます。 - アクションの場合の構文は、
この手順では、特定のアクション と再利用可能なワークフロー をリストに追加する方法を示します。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[アクションのアクセス許可] で、[ [Allow enterprise, and select non-enterprise, actions and reusable workflows](エンタープライズを許可し、非エンタープライズ、アクション、再利用可能なワークフローを選択する) ] を選択して、必要なアクションを一覧に追加します。
-
**[保存]** をクリックします。
パブリック リポジトリでのフォークからワークフローへの変更を制御する
データ 再利用可能なアクション: ワークフローラン 承認 パブリック フォーク %}
リポジトリのこの動作は、以下の手順を使用して構成できます。 この設定を変更すると、組織またはエンタープライズのレベルで設定された構成がオーバーライドされます。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[Approval for running fork pull request workflows from contributors] で、pull request に対してワークフローを実行する前に承認を必要とするユーザーのサブセットを選びます。 pull request の作成者と、ワークフローをトリガーする pull request イベントのアクターの両方がチェックされて、承認が必要かどうかを判断されます。 承認が必要な場合、リポジトリへの書き込みアクセス権限を持つユーザーが、実行される pull request ワークフローを承認する必要があります。 「フォークからのワークフロー実行の承認」を参照してください。
警告
初めてのコントリビューターに対してのみ承認を要求する場合 (最初の 2 つの設定)、リポジトリにコミットまたは pull request をマージしたことのあるユーザーは承認を必要としません。 悪意のあるユーザーは、作成した pull request の一部として、または別のユーザーの pull request の一部として、単純な入力ミスや他の無害な変更をメンテナに受け入れさせることで、この要件を満たす可能性があります。
- GitHub を初めて使用する共同作成者の承認が必要です。 GitHub の新規ユーザーと、このリポジトリにコミットまたは pull request をマージしたことがないユーザーについてのみ、ワークフローを実行するための承認が必要です。
- 初めての共同作成者の承認が必要です。 このリポジトリにコミットまたは pull request をマージしたことがないユーザーについてのみ、ワークフローを実行するための承認が必要です。
- [Require approval for all external contributors] このリポジトリのメンバーまたは所有者ではないすべてのユーザー、および organization のメンバーではないすべてのユーザーは、ワークフローを実行するために承認が必要です。
-
[保存] をクリックして設定を適用します。
このポリシーが適用されるワークフロー実行の承認の詳細については、「フォークからのワークフロー実行の承認」を参照してください。
プライベート リポジトリのフォークに対するワークフローを有効にする
プライベート リポジトリのフォークの利用に依存している場合、pull_request イベントの際にユーザーがどのようにワークフローを実行できるかを制御するポリシーを構成できます。 プライベート リポジトリと内部リポジトリでのみ使用でき、Enterprise、Organization、またはリポジトリに対してこれらのポリシー設定を構成できます。
エンタープライズまたは 組織でポリシーが無効になっている場合、リポジトリに対して有効にすることはできません。
データの再利用可能なアクション.プライベートリポジトリのフォークオプション %}
プライベート リポジトリのフォーク ポリシーを構成する
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[Fork pull request workflows](pull request ワークフローのフォーク) で、オプションを選択します。
-
[保存] をクリックして設定を適用します。
リポジトリに対する GITHUB_TOKEN のアクセス許可の設定
GITHUB_TOKEN に付与される既定のアクセス許可を設定できます。 GITHUB_TOKEN の詳細については、「ワークフローでの認証に GITHUB_TOKEN を使用する」を参照してください。 デフォルトとして制限付きアクセス許可セットを選択するか、より幅広く許可をする設定を適用できます。
既定のアクセス許可は、組織の設定でも構成できます。 ご利用のリポジトリが組織に属し、その組織の設定でより制限の厳しい既定値が選択されている場合、リポジトリの設定で同じオプションが選択されて、制限の緩いオプションは無効になります。
リポジトリへの書き込みアクセス権を持っている人は誰でも、ワークフロー ファイルの permissions キーを編集して、GITHUB_TOKEN に付与されたアクセス許可を変更でき、必要に応じて追加または削除できます。 詳細については、permissions をご覧ください。
既定の GITHUB_TOKEN のアクセス許可の構成
既定では、個人用アカウントで新しいリポジトリを作成するとき、GITHUB_TOKEN は contents と packages スコープの読み取りアクセス権のみを持っています。 組織で新しいリポジトリを作成すると、その設定は組織の設定で構成されているものから継承されます。
-
GitHub で、リポジトリのメイン ページに移動します。1. リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
1. 左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。1. [Workflow permissions] で、![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
GITHUB_TOKENに対してすべてのアクセス許可での読み取りと書き込みのアクセスを許可するか (制限の緩い設定)、contentsとpackagesアクセス許可での読み取りアクセスのみを許可するか (制限の厳しい設定) を選びます。 -
**[保存]** をクリックして設定を適用します。
GitHub Actions による pull request の作成または承認を回避する
GitHub Actions ワークフローでの pull request の作成または承認を許可するか禁止するかを選択できます。
既定では、個人用アカウントで新しいリポジトリを作成する場合、ワークフローは pull request の作成または承認を許可されません。 組織で新しいリポジトリを作成すると、その設定は組織の設定で構成されているものから継承されます。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
ワークフローのアクセス許可で、"Allow GitHub Actions to create and approve pull requests" の設定を使用して、
GITHUB_TOKENがプルリクエストを作成および承認できるかどうかを設定します。 -
**[保存]** をクリックして設定を適用します。
内部リポジトリ内のコンポーネントへのアクセスを許可する
内部リポジトリ内のアクションと再利用可能なワークフローは、同じ organization または Enterprise 内の内部およびプライベート リポジトリと共有できます。内部リポジトリの詳細については、「リポジトリについて」を参照してください。
次の手順を使って、内部リポジトリ内のアクションと再利用可能なワークフローにリポジトリの外部からアクセスできるかどうかを構成できます。詳細については、「アクションとワークフローを企業と共有する」を参照してください。 または、REST API を使用して、アクセスのレベルを設定したり、詳しい情報を取得したりすることができます。 詳細については、「GitHub Actionsアクセス許可の REST API エンドポイント」と「GitHub Actionsアクセス許可の REST API エンドポイント」を参照してください。
-
GitHub で、内部リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [ 設定] をクリックします。
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
**[アクセス]** で、次のいずれかのアクセス設定を選択します。* [アクセスできない] - 他のリポジトリ内のワークフローは、このリポジトリにアクセスできません。 * <組織名> 組織内のリポジトリからアクセスできる - <組織名> 組織の一部である他のリポジトリ内の再利用可能なワークフローから、このリポジトリ内のアクションとワークフローにアクセスできます。 プライベートまたは内部リポジトリからのアクセスのみが許可されます。 * <エンタープライズ名> エンタープライズ内のリポジトリからアクセスできる - <エンタープライズ名> エンタープライズの一部である他のリポジトリ内のワークフローから、このリポジトリ内のアクションと再利用可能なワークフローにアクセスできます。 プライベートまたは内部リポジトリからのアクセスのみが許可されます。
-
**[保存]** をクリックして設定を適用します。
プライベート リポジトリ内のコンポーネントへのアクセスを許可する
プライベート リポジトリ内のアクションと再利用可能なワークフローは、同じ組織またはエンタープライズ内の他のプライベート リポジトリと共有できます。 プライベート リポジトリの詳細については、「リポジトリについて」を参照してください。
以下の手順を使って、プライベート リポジトリ内のアクションと再利用可能なワークフローにリポジトリの外部からアクセスできるかどうかを構成できます。 詳細については、「アクションとワークフローを企業と共有する」を参照してください。また、REST API を使ってアクセス レベルを設定することや、詳細を取得することもできます。 詳細については、「GitHub Actionsアクセス許可の REST API エンドポイント」および「GitHub Actionsアクセス許可の REST API エンドポイント」を参照してください。
-
GitHub で、プライベート リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。
-
**[アクセス]** で、次のいずれかのアクセス設定を選択します。* [アクセスできない] - 他のリポジトリ内のワークフローは、このリポジトリにアクセスできません。 * <組織名> 組織内のリポジトリからアクセスできる - <組織名> 組織の一部である他のリポジトリ内の再利用可能なワークフローから、このリポジトリ内のアクションとワークフローにアクセスできます。 アクセスはプライベート リポジトリからのみ許可されます。 * <エンタープライズ名> エンタープライズ内のリポジトリからアクセスできる - <エンタープライズ名> エンタープライズの一部である他のリポジトリ内のワークフローから、このリポジトリ内のアクションと再利用可能なワークフローにアクセスできます。 アクセスはプライベート リポジトリからのみ許可されます。
-
**[保存]** をクリックして設定を適用します。
リポジトリのキャッシュ設定の構成
リポジトリのキャッシュリテンション期間とサイズ設定を構成できます。 この機能はオプトイン方式で、お支払い方法を登録済みの、GitHub Pro、GitHub Team、または GitHub Enterprise Cloud のいずれかのプランのユーザーが使用できます。
キャッシュ設定を構成した組織がリポジトリを所有している場合は、組織によって設定された最大値までの制限を構成できます。 リポジトリがユーザー所有の場合は、グローバル最大値まで構成できます。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[キャッシュ設定] セクションで、次の設定を構成します。 * キャッシュリテンション期間: キャッシュを保持してから自動削除されるまでの日数。 既定値は 7 日です。 パブリック リポジトリの場合は最大 90 日間、プライベート リポジトリと内部リポジトリの場合は最大 365 日を構成できます (または、組織によって設定された制限まで)。 * キャッシュ サイズの削除制限: リポジトリ内のすべてのキャッシュの最大合計サイズ。 既定値は 10 GB です。 リポジトリあたり最大 10,000 GB を構成できます (または、組織が設定した上限まで)。 この制限を超えると、古いキャッシュが削除され、新しいキャッシュ用のスペースが作成されます。
-
**[保存]** をクリックして設定を適用します。
キャッシュの削除の詳細については、「 依存関係キャッシュのリファレンス」を参照してください。
リポジトリ内の GitHub Actions の成果物とログの保持期間を構成する
リポジトリ内の GitHub Actions アーティファクトとログの保持期間を設定できます。
デフォルトでは、ワークフローによって生成された成果物とログファイルは、90日間保持された後自動的に削除されます。 保持期間は、リポジトリの種類によって調整できます。
- パブリックリポジトリの場合: この保持時間を1日から90日の間で変更できます。
- プライベートと内部のリポジトリの場合: この保持期間を 1 から 400 日の間で変更できます。
保持期間をカスタマイズした場合、適用されるのは新しい成果物とログファイルに対してであり、既存のオブジェクトにさかのぼっては適用されません。 管理されたリポジトリ及びOrganizationについては、最大の保持期間は管理するOrganizationあるいはEnterpriseによって設定された上限を超えることはできません。
ワークフローによって作成された特定のアーティファクトのカスタム保存期間を定義することもできます。 詳しくは、「ワークフローの成果物を削除する」をご覧ください。
リポジトリの成果物とログの保持期間の設定
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/cb-28260/images/help/repository/repo-actions-settings.png)
-
左側のサイドバーで、 [Actions] をクリックしてから [General] をクリックします。
-
[Artifact and log retention] に、新しい値を入力します。
-
[保存] をクリックして変更を適用します。