GitHub Enterprise Cloud 向けに、Enterprise アカウントへ GitHub App を載せる enterprise installations が 10 月 23 日付で一般提供。エンタープライズおよび組織の自動化でクラシック PAT を GitHub App に置き換えやすくなり、ガバナンス・セキュリティ・管理設定向けの permission と API が新設・拡張。組織レベルで残っていた二点の API ギャップも解消。
Enterprise に載せた App は enterprise 向け permission だけが付与され、組織やリポジトリの permission は別途各組織へのインストールが必要。Enterprise インストール単体では webhook も届かない。多数組織へ同じ App を載せる場合は、Enterprise 配下組織へのインストール自動化 API を使う。
新規 permission と API
App 設定で workflow に必要な permission を選ぶ。
- Enterprise organization and repository policies(read/write):
EnterpriseOwnerInfoの policy フィールド参照。プライベートリポジトリの fork、既定のリポジトリアクセス、可視性変更、作成・削除、issue 削除、コラボレーター招待、deploy key、保護ブランチ更新、dependency insights、organization/repository projects 設定の更新。 - Enterprise bypass requests(read): push-rule と repository-policy の bypass 要求を読む。
- Enterprise settings(read/write):
EnterpriseOwnerInfo経由で server installations や organization 招待を含む enterprise データを読む。プロフィール更新。organization/repository policies へのアクセスには read が前提。 - Enterprise two-factor authentication(read/write): 2FA フィールドの参照と、要件・禁止認証方式の更新。
- Enterprise / organization verifiable domains(write): enterprise または organization の
VerifiableDomain。 - Enterprise / organization IP allowlist(read/write):
IpAllowListEntryの CRUD、allowlist 強制、GitHub Apps 信頼、Enterprise Managed Users のユーザー単位強制の切替。 - Enterprise access restrictions(write): enterprise access restrictions の有効・無効。
- Enterprise repository rulesets(write): enterprise rules REST と GraphQL の
RepositoryRuleset。
既存 permission の拡張
- Enterprise people(read/write):
EnterpriseRepositoryInfoとEnterpriseOwnerInfo.outsideCollaborators経由のリポジトリ詳細。owner または member ロールで自分を organization に追加。 - Enterprise billing(write): Marketplace の member purchasing 設定の更新。
同一変更は GitHub Enterprise Server 3.24 にも載る予定。