Organization または Enterprise で GitHub Copilot を有効にすると、ユーザーがライセンスを要求できるようにセルフサービス ワークフローを設定できます。 こうすることで、必要とするユーザーにライセンスを割り当てることができます。つまり、ユーザーはすぐに Copilot を使い始めることができます。
GitHub は、成功したロールアウトの多くが、開発者が承認なしでライセンスを要求できる完全なセルフサービス モデルを提供していることを検出しました。
この記事では、会社が講じることができる 2 つのアプローチについて説明します。
- GitHub の Copilot Business に対するアクセスの要求機能。セットアップは必要ありませんが、管理者が明示的に承認する必要があります
-
**GitHub の API** と独自に統合することで、即時アクセス機能を備える独自のプロセスを作成できます
アプローチ 1: GitHub の "アクセスの要求" 機能を使う
Copilot Business プランをお持ちの場合、組織のメンバーは設定ページから Copilot へのアクセスをリクエストできます。 次に、organization 所有者は各要求をレビューして承認する必要があります。
**ユーザーとコミュニケーションを取る**必要があるプロセスは次のとおりです。
- Organization または Enterprise 所有者は、アクセスを管理する organization で Copilot Business が有効になっていることを確認します。
- Organization のメンバーは、https://github.com/settings/copilot の個人用設定ページに移動し、[Ask admin for access] をクリックします。
- Organization 所有者は、organization の [Requests from members] ページで要求をレビューし、承認します。 「GitHub Copilot Business のリクエストを Organization で管理する」を参照してください。
関係するユーザーがすぐに Copilot にアクセスできるように、要求を定期的に確認するプロセスを設定する必要があります。
ユーザーは、Copilot Business が有効になっていない organization からアクセスを要求することもできます。 この場合、organization 所有者は、organization の Copilot を有効にすることを Enterprise 所有者に依頼するよう求められます。
アプローチ 2: API と統合する
より合理的なアプローチとして、GitHub の API と統合することでセルフサービス プロセスを設定できます。 このアプローチの利点は、既存のツールにプロセスを組み込むことができること、手動の承認プロセスを必要とせずにユーザーが即時にアクセスできるようになるオプションがあることです。
Copilot ライセンスの管理方法によって、以下のいずれかのエンドポイントを使用することができます。
-
**組織レベルの割り当てについては**、[組織のCopilotサブスクリプションにユーザーを追加するエンドポイント](/rest/copilot/copilot-user-management#add-users-to-the-copilot-subscription-for-an-organization)を使用してください。 - エンタープライズ レベルでの 直接ユーザー割り当て (Copilot Business でのみ使用可能) のためには、エンタープライズ向けの Copilot サブスクリプションにユーザーを追加する エンドポイントを使用します。
たとえば、GitHub Actions ワークフローの API 呼び出しは次のようになります。この organization と選択されたユーザー名は、ワークフロー トリガーのコンテキストによって提供されます。
const { Octokit } = require("@octokit/action");
const octokit = new Octokit();
const response = await octokit.request('POST /orgs/{org}/copilot/billing/selected_users', {
org: context.repo.owner,
selected_usernames: [context.payload.sender.login],
headers: {
'X-GitHub-Api-Version': '2022-11-28'
}
})
実装例
- GitHub 内でプロセス全体を作成し、ユーザーがアクセスを要求する issue を作成してから、GitHub Actions ワークフローを使って API を呼び出すことができます。 このアプローチのデモについては、microsoft/GitHubCopilotLicenseAssignment リポジトリを参照してください。 これは GitHub Support でカバーされていない外部の例であることに注意してください。
- 会社の内部 Web サイト上のユーザーのプロフィールに [Request access] ボタンを追加すると、ユーザーの GitHub ユーザー名が API に渡されます。 アクセスを即時に許可するか、最初にユーザーを検証すること (特定のチームのメンバーシップをチェックするなど) ができます。
参考資料
-
[AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company) -
[AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/reminding-inactive-users) -
[AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/analyzing-usage-over-time-with-the-copilot-metrics-api) - 「Copilot Business の要求の管理」