チュートリアル: Microsoft Entra SSO と GitHub Enterprise Cloud - Enterprise アカウントの統合

このチュートリアルでは、GitHub Enterprise Cloud - Enterprise アカウントとの Microsoft Entra SAML の統合を設定する方法について説明します。 GitHub Enterprise Cloud - Enterprise アカウントを Microsoft Entra ID と統合すると、次のことができます。

  • GitHub Enterprise アカウントと Enterprise アカウント内の任意の組織にアクセスできるユーザーを Microsoft Entra ID で制御する。

前提条件

開始するには、次が必要です。

  • Microsoft Entra サブスクリプション。 サブスクリプションがない場合は、無料アカウントを取得できます。
  • GitHub Enterprise Account
  • Enterprise Account オーナーである GitHub ユーザー アカウント。

シナリオの説明

このチュートリアルでは、GitHub Enterprise Account の SAML 統合を構成し、Enterprise Account オーナーとエンタープライズ/組織メンバーの認証とアクセスをテストします。

注意

GitHub の Enterprise Cloud - Enterprise Account アプリケーションでは、 SCIM の自動プロビジョニングの有効化はサポートされていません。 GitHub Enterprise Cloud 環境のプロビジョニングを設定する必要がある場合は、SAML を組織レベルで構成し、GitHub Enterprise Cloud - Organization Microsoft Entra アプリケーションを代わりに使用する必要があります。 Enterprise Managed Users (EMU) に対して有効になっているエンタープライズの SAML と SCIM のプロビジョニング統合を設定する場合は、SAML/プロビジョニング統合用の GitHub Enterprise Managed User Microsoft Entra アプリケーションを使用するか、OIDC/プロビジョニング統合用の GitHub Enterprise Managed User (OIDC) Microsoft Entra アプリケーションを使用する必要があります。

  • GitHub Enterprise Cloud - Enterprise Account では、SP Initiated SSO および IDP Initiated SSO がサポートされます。

Microsoft Entra ID への GitHub Enterprise Cloud - Enterprise アカウントの統合を構成するには、ギャラリーからマネージド SaaS アプリの一覧に GitHub Enterprise Cloud - Enterprise アカウントを追加する必要があります。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[新しいアプリケーション] に移動します。
  3. [ギャラリーから追加する] セクションで、検索ボックスに「GitHub Enterprise Cloud - Enterprise Account」と入力します。
  4. 結果のパネルから [GitHub Enterprise Cloud - Enterprise Account] を選択し、アプリを追加します。 お使いのテナントにアプリが追加されるのを数秒待機します。

または、Enterprise App Configuration ウィザードを使用することもできます。 このウィザードでは、テナントへのアプリケーションの追加、アプリへのユーザーとグループの追加、ロールの割り当てができるほか、SSO の構成も行うことができます。 Microsoft 365 ウィザードの詳細をご覧ください。

GitHub Enterprise Cloud - Enterprise アカウントの Microsoft Entra SSO の構成とテスト

B.Simon というテスト ユーザーを使って、GitHub Enterprise Cloud - Enterprise アカウントに対する Microsoft Entra SSO を構成してテストします。 SSO が機能するには、Microsoft Entra ユーザーと GitHub Enterprise Cloud - Enterprise アカウントの関連ユーザーとの間にリンク関係を確立する必要があります。

GitHub Enterprise Cloud - Enterprise アカウントに対して Microsoft Entra SSO を構成してテストするには、次の手順を実行します。

  1. Microsoft Entra SSO を構成する - ユーザーがこの機能を使用できるようにします。
    1. Microsoft Entra テスト ユーザーを作成する - B.Simon を使って Microsoft Entra シングル サインオンをテストします。
    2. GitHub アプリに Microsoft Entra ユーザーとテスト ユーザー アカウントを割り当てる - 自分のユーザー アカウントとテスト ユーザー B.Simon が Microsoft Entra シングル サインオンを使用できるようにします。
  2. Enterprise Account とその組織の SAML の有効化とテスト - アプリケーション側でシングル サインオン設定を構成します。
    1. 別の Enterprise Account オーナーまたは組織メンバー アカウントを使用した SSO のテスト - 構成が機能するかどうかを確認します。

Microsoft Entra SSO の構成

次の手順に従って Microsoft Entra SSO を有効にします。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。

  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[GitHub Enterprise Cloud - Enterprise Account]>[シングル サインオン] の順に移動します。

  3. [シングル サインオン方式の選択] ページで、 [SAML] を選択します。

  4. [SAML によるシングル サインオンのセットアップ] ページで、 [基本的な SAML 構成] の鉛筆アイコンをクリックして設定を編集します。

    Edit Basic SAML Configuration

  5. [基本的な SAML 構成] セクションで、次の手順を実行します。

    a. [識別子 (エンティティ ID)] ボックスに、次のパターンを使用して URL を入力します。https://github.com/enterprises/<ENTERPRISE-SLUG>

    b. [応答 URL] ボックスに、https://github.com/enterprises/<ENTERPRISE-SLUG>/saml/consume のパターンを使用して URL を入力します

  6. SP 開始モードでアプリケーションを構成する場合は、次の手順を実行します。

    [サインオン URL] ボックスに、次のパターンを使用して URL を入力します。https://github.com/enterprises/<ENTERPRISE-SLUG>/sso

    注意

    <ENTERPRISE-SLUG> は、GitHub Enterprise Account の実際の名前に置き換えます。

  7. [SAML でシングル サインオンをセットアップします] ページの [SAML 署名証明書] セクションで、 [証明書 (Base64)] を見つけて、 [ダウンロード] を選択し、証明書をダウンロードして、お使いのコンピューターに保存します。

    The Certificate download link

  8. [GitHub Enterprise Cloud - Enterprise Account のセットアップ] セクションで、要件に基づいて適切な URL をコピーします。

    Copy configuration URLs

Microsoft Entra テスト ユーザーを作成する

このセクションでは、Azure portal 内で B.Simon というテスト ユーザーを作成します。

  1. Microsoft Entra 管理センターユーザー管理者以上でサインインしてください。
  2. [ID]>[ユーザー]>[すべてのユーザー] の順に移動します。
  3. 画面の上部で [新しいユーザー]>[新しいユーザーの作成] を選択します。
  4. [ユーザー] プロパティで、以下の手順を実行します。
    1. "表示名" フィールドに「B.Simon」と入力します。
    2. [ユーザー プリンシパル名] フィールドに「username@companydomain.extension」と入力します。 たとえば、「 B.Simon@contoso.com 」のように入力します。
    3. [パスワードを表示] チェック ボックスをオンにし、 [パスワード] ボックスに表示された値を書き留めます。
    4. [Review + create](レビュー + 作成) を選択します。
  5. [作成] を選択します。

GitHub アプリへの Microsoft Entra ユーザーとテスト ユーザー アカウントの割り当て

このセクションでは、B.Simon と自分のユーザー アカウントに GitHub Enterprise Cloud - Enterprise Account へのアクセスを許可して、Azure シングル サインオンを使用できるようにします。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[GitHub Enterprise Cloud - Enterprise Account] の順に移動します。
  3. アプリの概要ページで、 [管理] セクションを見つけて、 [ユーザーとグループ] を選択します。
  4. [ユーザーの追加] を選択し、 [割り当ての追加] ダイアログで [ユーザーとグループ] を選択します。
  5. [ユーザーとグループ] ダイアログの [ユーザー] の一覧から [B.Simon] と自分のユーザー アカウントを選択し、画面の下部にある [選択] ボタンをクリックします。
  6. ユーザーにロールが割り当てられることが想定される場合は、 [ロールの選択] ドロップダウンからそれを選択できます。 このアプリに対してロールが設定されていない場合は、[既定のアクセス] ロールが選択されていることを確認します。
  7. [割り当ての追加] ダイアログで、 [割り当て] をクリックします。

Enterprise Account とその組織の SAML の有効化とテスト

GitHub Enterprise Cloud - Enterprise Account 側でシングル サインオンを構成するには、この GitHub ドキュメントに記載されている手順に従います。

  1. Enterprise Account オーナーであるユーザー アカウントを使用して GitHub.com にサインインします。
  2. アプリの Login URL フィールドの値をコピーし、GitHub Enterprise Account の SAML 設定の Sign on URL フィールドに貼り付けます。
  3. アプリの Azure AD Identifier フィールドの値をコピーし、GitHub Enterprise Account の SAML 設定の Issuer フィールドに貼り付けます。
  4. 上記の手順でダウンロードした証明書 (Base64) ファイルの内容を Azure portal からコピーし、GitHub Enterprise Account の SAML 設定の適切なフィールドに貼り付けます。
  5. Test SAML configuration をクリックし、GitHub Enterprise アカウントから Microsoft Entra ID に正常に認証できることを確認します。
  6. テストが成功したら、設定を保存します。
  7. 初めて GitHub Enterprise アカウントから SAML 経由で認証を行うと、サインインした GitHub ユーザー アカウントを Microsoft Entra ユーザー アカウントに関連付ける "リンクされた外部 ID" が GitHub Enterprise アカウントに作成されます。

GitHub Enterprise Account に対して SAML SSO を有効にすると、その Enterprise Account によって所有されているすべての組織に対して SAML SSO が既定で有効になります。 すべてのメンバーは、自分がメンバーである組織にアクセスするには、SAML SSO を使用して認証するよう求められます。また、エンタープライズ所有者は、Enterprise Account にアクセスするときに SAML SSO を使用して認証するよう求められます。

別の Enterprise Account オーナーまたは組織メンバー アカウントを使用した SSO のテスト

GitHub Enterprise アカウントに対して SAML 統合を設定すると (これは Enterprise アカウント内の GitHub 組織にも適用されます)、Microsoft Entra ID 内でアプリに割り当てられている他の Enterprise アカウント所有者は、GitHub Enterprise アカウントの URL (https://github.com/enterprises/<enterprise account>) に移動し、SAML を介して認証し、GitHub Enterprise アカウントのポリシーと設定にアクセスできます。

Enterprise Account 内の組織の組織所有者は、GitHub 組織に参加するようユーザーを招待することができます。 組織所有者アカウントを使用して GitHub.com にサインインし、記事内の手順に従って B.Simon を組織に招待します。 B.Simon の GitHub ユーザー アカウントがまだ存在しない場合は作成する必要があります。

B.Simon テスト ユーザー アカウントを使用して、Enterprise Account で GitHub 組織のアクセスをテストするには:

  1. Enterprise Account 内の組織に B.Simon を組織所有者として招待します。
  2. B.Simon の Microsoft Entra ユーザー アカウントにリンクするユーザー アカウントを使用して、GitHub.com にサインインします。
  3. B.Simon ユーザー アカウントを使って Microsoft Entra ID にサインインします。
  4. GitHub 組織に移動します。 SAML を介して認証するよう求めるメッセージがユーザーに表示されます。 SAML 認証が成功すると、B.Simon は組織のリソースにアクセスできるようになります。

次のステップ

GitHub Enterprise Cloud - Enterprise Account を構成したら、組織の機密データを流出と侵入からリアルタイムで保護するセッション制御を適用することができます。 セッション制御は、条件付きアクセスを拡張したものです。 Microsoft Defender for Cloud Apps でセッション制御を強制する方法をご覧ください。