Skip to main content

エンタープライズで GitHub Actions のポリシーを適用する

Enterprise の Organization 内で GitHub Actions に対してポリシーを適用したり、各 Organization でポリシーを設定したりできます。

Who can use this feature

Enterprise owners can enforce policies for GitHub Actions in an enterprise.

エンタープライズの GitHub Actions のポリシーについて

GitHub Actions は、エンタープライズのメンバーが GitHub Enterprise Server でソフトウェア開発のワークフローを自動化する際に役立ちます。 詳細については、「GitHub Actions について」を参照してください。

GitHub Actions を有効にした場合、your GitHub Enterprise Server instance のいかなる組織でも、GitHub Actions を使用できます。 GitHub Enterprise Server のエンタープライズのメンバーが GitHub Actions を使用する方法を制御するポリシーを適用できます。 既定では、組織の所有者は、メンバーが GitHub Actions を使用する方法を管理できます。 詳細については、「組織での GitHub Actions の無効化または制限」を参照してください。

エンタープライズで GitHub Actions の使用を制限するポリシーを適用する

Enterprise 内のすべての Organization に対して GitHub Actions を無効化するか、特定の Organization のみを許可するかを選択できます。 また、パブリック アクションの使用を制限して、Enterprise 内に存在するローカル アクションのみを使用できるようにすることもできます。

  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. Enterprise サイドバーで、 [ポリシー] をクリックします。 [Enterprise アカウント] サイドバーの [ポリシー] タブ 1. [ ポリシー] で、 [アクション] をクリックします。

  2. "Policies(ポリシー)"の下で、オプションを選択してください。

    **[Allow select actions]\(選択したアクションを許可する\)**  を選択した場合、エンタープライズ内のアクションが許可され、追加のオプションで、その他の特定のアクションも許可されます。 詳細については、「[選択したアクションの実行の許可](#allowing-select-actions-to-run)」を参照してください。
    

    注: パブリック アクションへのアクセスを有効にするには、まず your GitHub Enterprise Server instance を構成して、GitHub.com に接続する必要があります。 詳細については、「GitHub Connect を使用して GitHub.com アクションへの自動アクセスを有効にする」を参照してください。

    ![この Enterprise アカウントのアクションを有効化、無効化、または制限する](/assets/images/help/organizations/enterprise-actions-policy.png)
  3. [保存] をクリックします。

選択したアクションの実行の許可

[ [Allow select actions](選択したアクションを許可する) ] を選ぶと、ローカル アクションが許可され、他の特定のアクションを許可するための追加のオプションがあります。

  • [GitHub によって作成されたアクションを許可する]: GitHub によって作成されたすべてのアクションを、ワークフローで使用できるようにします。 GitHub によって作成されたアクションは、actions および github 組織にあります。 詳しくは、actions および github の Organization をご覧ください。

  • [検証済みの作成者による Marketplace アクションを許可する]: このオプションは、GitHub Connect が有効になっていて、GitHub Actions で構成されている場合に使用できます。 詳細については、「GitHub Connect を使用して GitHub.com アクションへの自動アクセスを有効にする」を参照してください。検証済みの作成者によって作成されたすべての GitHub Marketplace アクションを、ワークフローで使用できるようにします。 GitHubがアクションの作者をパートナーOrganizationとして検証すると、GitHub Marketplaceでアクションの隣にバッジが表示されるようになります。

  • [指定したアクションを許可する]: ワークフローで使用できるアクションを、特定の組織とリポジトリのものに制限します。

    アクションの特定のタグまたはコミット SHA へのアクセスを制限するには、ワークフローで使われているのと同じ構文を使って、アクションを選びます。

    • アクションの場合の構文は、<OWNER>/<REPO>@<TAG OR SHA> です。 たとえば、タグを選択するには actions/javascript-action@v1.0.1 を使用し、SHA を選択するには actions/javascript-action@172239021f7ba04fe7327647b213799853a9eb89 を使用します。 詳細については、「アクションの検索とカスタマイズ」を参照してください。

    パターンのマッチには、ワイルドカード文字 * を使用できます。 たとえば、space-org で始まる Organization のすべてのアクションを許可するには、space-org*/* と指定できます。 octocat で始まるリポジトリのすべてのアクションを許可するには、*/octocat**@* を使用できます。 * ワイルドカードの使用の詳細については、「GitHub Actions のワークフロー構文」を参照してください。

この手順では、特定のアクションを許可リストに追加する方法を示します。

  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. Enterprise サイドバーで、 [ポリシー] をクリックします。 [Enterprise アカウント] サイドバーの [ポリシー] タブ 1. [ ポリシー] で、 [アクション] をクリックします。
  2. [ポリシー] で [ [Allow select actions](選択したアクションを許可する) ] を選び、必要なアクションを一覧に追加します。 アクションを許可リストに追加する

エンタープライズで成果物とログの保持に関するポリシーを適用する

GitHub Actions では、成果物とログのファイルを格納できます。 詳細については、「ワークフロー成果物のダウンロード」を参照してください。

デフォルトでは、ワークフローによって生成された成果物とログファイルは、90日間保持された後自動的に削除されます。 この保持時間を 1 から 400 日の間で変更できます。

保持期間をカスタマイズした場合、適用されるのは新しい成果物とログファイルに対してであり、既存のオブジェクトにさかのぼっては適用されません。 管理されたリポジトリ及びOrganizationについては、最大の保持期間は管理するOrganizationあるいはEnterpriseによって設定された上限を超えることはできません。

  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. Enterprise サイドバーで、 [ポリシー] をクリックします。 [Enterprise アカウント] サイドバーの [ポリシー] タブ 1. [ ポリシー] で、 [アクション] をクリックします。 1. [成果物とログの保持] で、新しい値を入力します。
  2. [保存] をクリックして変更を適用します。

エンタープライズでフォーク pull request のポリシーを適用する

エンタープライズのメンバーがフォークからワークフローを実行する場合に、your GitHub Enterprise Server instance に対する GitHub Actions の動作を制御するポリシーを適用できます。

非公開リポジトリでのフォーク pull request のポリシーを適用する

プライベート リポジトリのフォークの利用に依存している場合、pull_request イベントの際にユーザーがどのようにワークフローを実行できるかを制御するポリシーを構成できます。 プライベート リポジトリと内部リポジトリでのみ使用でき、エンタープライズ、組織、またはリポジトリに対してこれらのポリシー設定を構成できます。

エンタープライズでポリシーが有効になっている場合は、個々の組織またはリポジトリでポリシーを選択的に無効にすることができます。 エンタープライズでポリシーが無効になっている場合は、個々の組織またはリポジトリでそれを有効にすることはできません。

  • フォーク pull request からワークフローを実行する - 読み取り専用権限を持ち、シークレットへのアクセス権を持たない GITHUB_TOKEN を使用して、フォーク pull request からワークフローを実行できます。
  • pull request からワークフローに書き込みトークンを送信する - フォークからの pull request で書き込み権限を持つ GITHUB_TOKEN を使用できます。
  • pull request からワークフローにシークレットを送信する - すべてのシークレットを pull request で利用できるようにします。
  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. Enterprise サイドバーで、 [ポリシー] をクリックします。 [Enterprise アカウント] サイドバーの [ポリシー] タブ 1. [ ポリシー] で、 [アクション] をクリックします。 1. [Fork pull request workflows](pull request ワークフローのフォーク) で、オプションを選択します。 例: このリポジトリのアクションを有効化、無効化、または制限する
  2. [保存] をクリックして設定を適用します。

エンタープライズでワークフロー アクセス許可のポリシーを適用する

GITHUB_TOKEN に付与される既定のアクセス許可を設定できます。 GITHUB_TOKEN の詳細については、「自動トークン認証」を参照してください。 デフォルトとして制限付きアクセス許可セットを選択するか、より幅広く許可をする設定を適用できます。

エンタープライズ、組織、またはリポジトリの設定で、GITHUB_TOKEN の既定のアクセス許可を設定できます。 エンタープライズの設定で制限付きオプションを既定値として選択した場合、組織またはリポジトリの設定では、より制限の緩い設定は選択されなくなります。

リポジトリへの書き込みアクセス権を持っている人は誰でも、ワークフロー ファイルの permissions キーを編集して、GITHUB_TOKEN に付与されたアクセス許可を変更でき、必要に応じて追加または削除できます。 詳細については、permissions をご覧ください。

既定の GITHUB_TOKEN のアクセス許可の構成

  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. Enterprise サイドバーで、 [ポリシー] をクリックします。 [Enterprise アカウント] サイドバーの [ポリシー] タブ 1. [ ポリシー] で、 [アクション] をクリックします。

  2. [ワークフローのアクセス許可] で、GITHUB_TOKEN に対して、すべてのスコープでの読み取りと書き込みアクセスを許可するか、contents スコープでの読み取りアクセスのみを許可するかを選択します。

    このエンタープライズの GITHUB_TOKEN アクセス許可を設定する

  3. [保存] をクリックして設定を適用します。