この記事の目的は、GitHub Enterprise Cloud 組織メンバーシップのプロビジョニングを自動化するために GitHub と Microsoft Entra ID で実行する必要がある手順を示することです。
注
Microsoft Entra のプロビジョニング統合は、GitHub Enterprise 請求プランに登録しているGitHub Enterprise Cloudのお客様が利用できる、GitHub SCIM APIに依存しています。
前提条件
この記事で説明するシナリオでは、次の項目が既にあることを前提としています。
- アクティブなサブスクリプションを持つ Microsoft Entra ユーザー アカウント。 アカウントをまだお持ちでない場合は、 無料でアカウントを作成できます。
- 次のいずれかのロール:
- GitHub Enterprise Cloud で作成された GitHub 組織。GitHub Enterprise の課金プランが必要です
- 組織への Admin アクセス許可がある GitHub のユーザー アカウント
- GitHub Enterprise Cloud 組織用に構成された SAML
- ここで説明するように、組織に OAuth アクセスが提供されていることを確認します
- 1 つの組織に対する SCIM のプロビジョニングは、組織レベルで SSO が有効になっている場合のみサポートされます
注
この統合は、Microsoft Entra 米国政府クラウド環境から利用することもできます。 このアプリケーションは、Microsoft Entra 米国政府クラウドのアプリケーション ギャラリーにあり、パブリック クラウドの場合と同じように構成できます。
GitHub へのユーザーの割り当て
Microsoft Entra ID では、選択されたアプリへのアクセスが付与されるユーザーを決定する際に "割り当て" という概念が使用されます。 自動ユーザー アカウント プロビジョニングのコンテキストでは、Microsoft Entra ID 内のアプリケーションに "割り当て済み" のユーザーとグループのみが同期されます。
プロビジョニング サービスを構成して有効にする前に、GitHub 組織へのアクセスが必要なユーザーを表す Microsoft Entra ID 内のユーザーやグループを決定しておく必要があります。 決定し終えたら、次の手順に従ってこれらのユーザーを割り当てることができます。
詳細については、「 エンタープライズ アプリにユーザーまたはグループを割り当てる」を参照してください。
ユーザーを GitHub に割り当てる際の重要なヒント
GitHub に Microsoft Entra ユーザーを 1 人だけ割り当てて、プロビジョニングの構成をテストすることをお勧めします。 後でユーザーやグループを追加で割り当てられます。
GitHub にユーザーを割り当てるときは、割り当てダイアログで ユーザー ロールまたは別の有効なアプリケーション固有ロール (使用可能な場合) を選択する必要があります。 既定のアクセス ロールはプロビジョニングには機能せず、これらのユーザーはスキップされます。
GitHub へのユーザー プロビジョニングの構成
このセクションでは、Microsoft Entra ID を GitHub の SCIM プロビジョニング API に接続して、GitHub 組織メンバーシップのプロビジョニングを自動化する方法について説明します。 OAuth アプリを活用するこの統合は、Microsoft Entra ID でのユーザーとグループの割り当てに基づいて、GitHub Enterprise Cloud 組織へのメンバーのアクセスを自動的に追加、管理、および削除します。 ユーザーが SCIM を介して GitHub 組織にプロビジョニングされると、ユーザーのメール アドレスに電子メールの招待が送信されます。
Microsoft Entra ID で GitHub への自動ユーザー アカウント プロビジョニングを構成する
Microsoft Entra 管理センターに、少なくともクラウド アプリケーション管理者としてサインインします。
Entra ID>エンタープライズ アプリにアクセスします。
シングル サインオンのために GitHub を既に構成している場合は、検索フィールドで GitHub のインスタンスを検索します。
GitHub のインスタンスを選択し、[プロビジョニング] タブ を 選択します。
[プロビジョニング モード] を[自動] に設定します。
Azure portal でテナント URL を 入力し、[ テスト接続 ] を選択して、Microsoft Entra ID が GitHub 組織に接続できることを確認します。 接続に失敗した場合は、GitHub アカウントに管理者アクセス許可があり、 テナント URL が正しく入力されていることを確認してから、もう一度 "承認" 手順を試してください (ルールによって テナント URL を 構成できます:
https://api.github.com/scim/v2/organizations/<Organization_name>
、GitHub アカウントの下に組織を見つけることができます: 設定>Organizations)。[ 管理者資格情報 ] セクションで、[ 承認] を選択します。 これで、ブラウザーの新しいウィンドウで GitHub 承認ダイアログが開きます。 アクセスの承認が承認されていることを確認する必要があることに注意してください。 ここで説明する指示に従います。
新しいウィンドウで、Admin アカウントを使用して GitHub にサインインします。 結果の承認ダイアログで、プロビジョニングを有効にする GitHub 組織を選択し、[ 承認] を選択します。 終わったら Azure Portal に戻り、プロビジョニング構成を完了します。
プロビジョニング エラー通知を受信するユーザーまたはグループのメール アドレスを [ 通知メール ] フィールドに入力し、[エラーが発生したときに電子メール通知を送信する] チェック ボックスをオンにします。
[保存] を選択します。
[マッピング] セクションで、[ Microsoft Entra ユーザーを GitHub に同期する] を選択します。
[ 属性マッピング ] セクションで、Microsoft Entra ID から GitHub に同期されるユーザー属性を確認します。 [照合プロパティ] として選択されている属性は、更新操作のために GitHub のユーザー アカウントとの照合に使用されます。 エラーが発生する可能性があるため、[プロビジョニング] セクションの他の既定の属性に対して [照合の優先順位 ] 設定 を 有効にしないでください。 [ 保存] を 選択して変更をコミットします。
GitHub の Microsoft Entra プロビジョニング サービスを有効にするには、[設定] セクションで [プロビジョニングの状態] を [オン] に変更します。
[保存] を選択します。
これにより、[ユーザーとグループ] セクションで GitHub に割り当てたユーザーやグループの初期同期が開始されます。 初期同期は後続の同期よりも実行に時間がかかります。後続の同期は、サービスが実行されている限り約 40 分ごとに実行されます。 [ 同期の詳細 ] セクションを使用すると、進行状況を監視し、リンクをクリックしてプロビジョニング アクティビティ ログを取得できます。このログには、プロビジョニング サービスによって実行されたすべてのアクションが記載されています。
Microsoft Entra プロビジョニング ログを読み取る方法の詳細については、「 自動ユーザー アカウント プロビジョニングに関するレポート」を参照してください。