Skip to main content

GitHub Connect を使用して GitHub.com アクションへの自動アクセスを可能にする

Enterprise 内の GitHub Actions が GitHub.com のアクションを使用できるようにするには、Enterprise インスタンスを GitHub Enterprise Cloud に接続します。

この機能を使用できるユーザーについて

Enterprise owners can enable access to public GitHub.com actions.

注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。

GitHub.com アクションへの自動アクセスについて

既定では、GitHub Enterprise Server の GitHub Actions ワークフローでは、GitHub.com または GitHub Marketplace から直接アクションを使用することはできません。 GitHub.com のすべてのアクションをエンタープライズ インスタンスで使用できるようにするには、GitHub Connect を使用して、GitHub Enterprise Server と GitHub Enterprise Cloud を統合できます。

GitHub.com、 からのアクションを使用するには、GitHub Enterprise Server と セルフホステッド ランナーを、GitHub.com への送信接続が可能であるようにする必要があります。 GitHub.com からの受信接続は必要ありません。 詳しくは、 詳しくは、「セルフホステッド ランナーの概要」を参照してください。

または、エンタープライズで許可されるアクションをより厳密に制御する場合は、actions-sync ツールを使用してアクションを手動でダウンロードしてエンタープライズ インスタンスに同期できます。 詳しくは、「GitHub.com からアクションを手動で同期する」を参照してください。

GitHub Connect を使用したアクションの解決について

ワークフローが、アクションが格納されているリポジトリを参照してアクションを使用する場合、GitHub Actions は最初に お使いの GitHub Enterprise Server インスタンス でリポジトリを検索します。 リポジトリが お使いの GitHub Enterprise Server インスタンス に存在せず、GitHub.com への自動アクセスが有効になっている場合、GitHub Actions は GitHub.com でリポジトリを検索します。

ユーザーが GitHub.com の組織とリポジトリ名に一致する組織とリポジトリを既にエンタープライズに作成している場合は、GitHub.com リポジトリの代わりに、エンタープライズ上のリポジトリが使用されます。 詳細については、「GitHub.com でアクセスされたアクションの名前空間の自動廃止」を参照してください。

公開用 GitHub.com アクションへの自動アクセスを有効化する

エンタープライズの GitHub.com からの公開用アクションへのアクセスを有効にする前に、次を実行する必要があります。

  1. GitHub Enterprise Server の右上で、ご自分のプロフィール フォトをクリックしてから、 [Enterprise 設定] をクリックします。

    GitHub Enterprise Server のプロファイル写真をクリックしたときに表示されるドロップダウン メニューのスクリーンショット。 [エンタープライズ設定] オプションが濃いオレンジ色の枠線で強調表示されています。

  2. [Enterprise アカウント] サイドバーで、 [GitHub Connect] をクリックします。

  3. [ユーザーはワークフローの実行で GitHub.com のアクションを利用できます] で、ドロップダウン メニューを使用して [有効] を選択します。

  4. GitHub Connectを有効化した後は、Enterprise内のリポジトリでどのパブリックなアクションが使えるかを制限するポリシーが利用できます。 詳しくは、「エンタープライズで GitHub Actions のポリシーを適用する」を参照してください。

GitHub.com でアクセスされたアクションの名前空間の自動廃止

GitHub Connect を有効にすると、GitHub Actions は各アクションの お使いの GitHub Enterprise Server インスタンスを検索してから GitHub.com にフォールバックするため、ユーザーから見た既存のワークフローの動作は変わりません。 これにより、エンタープライズが作成したアクションのカスタム バージョンが、GitHub.com の対応するアクションに優先して使用されるようになります。

GitHub.com でアクセスされるアクションの名前空間が自動的に廃止されると、お使いの GitHub Enterprise Server インスタンスにアクセスできる悪意のあるユーザーによる中間者攻撃の可能性がブロックされます。 GitHub.com に対するアクションが初めて使用されると、その名前空間は お使いの GitHub Enterprise Server インスタンスで廃止されます。 これにより、GitHub.com の組織とリポジトリ名に一致する組織とリポジトリをエンタープライズ内に作成しているすべてのユーザーがブロックされます。 これにより、ワークフローの実行時に、意図したアクションが常に実行されるようになります。

GitHub.com からのアクションを使用した後、同じ名前の お使いの GitHub Enterprise Server インスタンスにアクションを作成する場合は、まず、その組織とリポジトリの名前空間を使用できるようにする必要があります。

  1. GitHub Enterprise Server の管理アカウントから、任意のページの右上隅で をクリックします。

  2. [サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。

  3. 左側のサイドバーの [サイト管理者] で、 [廃止された名前空間] をクリックします。

  4. お使いの GitHub Enterprise Server インスタンスで使用する名前空間の右の [廃止の取り消し] をクリックします。

  5. 関連する組織に移動し、新しいリポジトリを作成します。

    ヒント: 名前空間の廃止を取り消す場合は、できるだけ早くその名前の新しいリポジトリを必ず作成してください。 ローカル リポジトリを作成する前に、ワークフローが GitHub.com に関連付けられたアクションを呼び出した場合、名前空間は再び廃止されます。 頻繁に実行されるワークフローで使用されるアクションの場合、ローカル リポジトリを作成する前に名前空間が再び廃止される場合があります。 この場合、新しいリポジトリを作成するまで、関連するワークフローを一時的に無効にすることができます。