Skip to main content

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

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

Who can use this feature

Enterprise owners can enable access to all 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, からのアクションを使用するには、your GitHub Enterprise Server instance と セルフホステッド ランナーを、GitHub.com への送信接続が可能であるようにする必要があります。 GitHub.com からの受信接続は必要ありません。 詳しくは、 詳細については、セルフホステッド ランナーに関する記述をご覧ください。

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

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

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

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

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

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

  1. GitHub Enterprise Server の右上で、ご自分のプロファイル写真をクリックしてから、 [Enterprise 設定] をクリックします。 GitHub Enterprise Server のプロファイル写真のドロップダウン メニューの [自分の Enterprise] 1. [Enterprise アカウント] サイドバーで、 [GitHub Connect] をクリックします。 [Enterprise アカウント] サイドバーの [Github Connect] タブ
  2. [ユーザーはワークフローの実行で GitHub.com のアクションを利用できます] で、ドロップダウン メニューを使用して [有効] を選択します。 ワークフロー実行内の GitHub.com からアクションへのドロップダウン メニュー
  3. GitHub Connectを有効化した後は、Enterprise内のリポジトリでどのパブリックなアクションが使えるかを制限するポリシーが利用できます。 詳細については、「エンタープライズでの GitHub Actions ポリシーの適用」を参照してください。

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

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

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

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

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

    サイト管理者設定にアクセスするための宇宙船アイコンのスクリーンショット

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

    [サイト管理者] リンクのスクリーンショット

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

  4. your GitHub Enterprise Server instanceで使用する名前空間を見つけて、 [廃止の取り消し] をクリックします。 名前空間の廃止を取り消す

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

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