教學課程:Microsoft Entra SSO 與 GitHub Enterprise 伺服器的整合
在本教學課程中,您將了解如何整合 GitHub Enterprise 伺服器與 Microsoft Entra ID。 GitHub Enterprise 伺服器與 Microsoft Entra ID 整合時,您可以:
- 在 Microsoft Entra ID 中控制誰可以存取 GitHub Enterprise 伺服器。
- 讓您的使用者可以使用其 Microsoft Entra 帳戶自動登入 GitHub Enterprise 伺服器。
- 在一個集中式位置管理您的帳戶。
必要條件
若要開始使用,您需要下列項目:
- Microsoft Entra 訂用帳戶。 如果您沒有訂用帳戶,可以取得免費帳戶。
- Github Enterprise 伺服器,準備好進行初始化。
- 除了雲端應用程式管理員之外,應用程式管理員也可以在 Microsoft Entra ID 中新增或管理應用程式。 如需詳細資訊,請參閱 Azure 內建角色。
案例描述
在本教學課程中,您會在測試環境中設定並測試 Microsoft Entra SSO。
- Github Enterprise 伺服器支援由 SP 和 IDP 起始的 SSO。
- Github Enterprise 伺服器支援 Just In Time 使用者佈建。
- Github Enterprise 伺服器支援 Just In Time 自動使用者佈建。
從資源庫新增 Github Enterprise 伺服器
若要設定將 GitHub Enterprise 伺服器整合至 Microsoft Entra ID,您必須從資源庫將 GitHub Enterprise 伺服器新增至受控 SaaS 應用程式清單。
- 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 [身分識別]> [應用程式]> [企業應用程式]> [新增應用程式]。
- 在 [從資源庫新增] 區段的搜尋方塊中,輸入 Github Enterprise 伺服器。
- 從結果面板中選取 [Github Enterprise 伺服器],然後新增應用程式。 將應用程式新增至您的租用戶時,請稍候幾秒鐘。
或者,您也可以使用企業應用程式組態精靈。 在此精靈中,您可以將應用程式新增至租用戶、將使用者/群組新增至應用程式、指派角色,以及逐步進行 SSO 設定。 深入了解 Microsoft 365 精靈。
設定及測試適用於 GitHub Enterprise 伺服器的 Microsoft Entra SSO
使用名稱為 B.Simon 的測試使用者,設定及測試 Microsoft Entra SSO,以及搭配運作的 GitHub Enterprise 伺服器。 為確保 SSO 能正常執行,您必須在 Microsoft Entra 使用者與 GitHub Enterprise 伺服器中的相關使用者之間建立連結關聯性。
若要對 GitHub Enterprise 伺服器帳戶設定並測試 Microsoft Entra SSO,請執行下列步驟:
- 設定 Microsoft Entra SSO - 讓使用者能夠使用此功能。
- 建立 Microsoft Entra 測試使用者 - 以使用 B.Simon 測試 Microsoft Entra 單一登入。
- 指派 Microsoft Entra 測試使用者 - 讓 B.Simon 使用 Microsoft Entra 單一登入。
- 設定 GitHub Enterprise 伺服器 SSO - 在應用程式端設定單一登入設定。
- 建立 GitHub Enterprise 測試使用者 - 使 Gradle Enterprise 中對應的 B.Simon 連結到該使用者在 Microsoft Entra 中的代表項目。
- 測試 SSO - 確認組態是否正常運作。
設定 Microsoft Entra SSO
遵循下列步驟來啟用 Microsoft Entra SSO。
以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別]>[應用程式]>[企業應用程式]>[GitHub Enterprise 伺服器]>[單一登入]。
在 [選取單一登入方法] 頁面上,選取 [SAML]。
在 [以 SAML 設定單一登入] 頁面上,按一下 [基本 SAML 設定] 的鉛筆圖示,以編輯設定。
在 [基本 SAML 設定] 區段上,如果您想要以 IDP 起始模式設定應用程式,請執行下列步驟:
a. 在 [識別碼 (實體識別碼)] 文字方塊中,使用下列模式輸入 URL:
https://<YOUR-GITHUB-ENTERPRISE-SERVER-HOSTNAME>
b. 在 [回覆 URL] 文字方塊中,使用下列模式來輸入 URL:
https://<YOUR-GITHUB-ENTERPRISE-SERVER-HOSTNAME>/saml/consume
如果您想要以 SP 起始模式設定應用程式,請按一下 [設定其他 URL],然後執行下列步驟:
在 [登入 URL] 文字方塊中,使用下列模式輸入 URL:
https://<YOUR-GITHUB-ENTERPRISE-SERVER-HOSTNAME>/sso
注意
這些都不是真正的值。 請使用實際的「識別碼」、「回覆 URL」和「登入 URL」更新這些值。 請連絡 Github Enterprise 伺服器用戶端支援小組以取得這些值。 您也可以參考 [基本 SAML 設定] 區段所示的模式。
Github Enterprise 伺服器應用程式需要特定格式的 SAML 判斷提示,要求您加入自訂屬性對應到您的 SAML 權杖屬性組態。 下列螢幕擷取畫面顯示預設屬性的清單。
編輯 [使用者屬性與宣告]。
按一下 [新增宣告],然後在文字方塊中輸入 administrator 作為名稱 (administrator 值區分大小寫)。
展開 [宣告條件],然後從 [使用者類型] 選取 [成員]。
按一下 [選取群組],並搜尋您想要包含此宣告的群組,其中的成員應為 GHES 的管理員。
針對 [來源] 選取 [屬性],並對 [值] 輸入 true (無引號)。
按一下 [檔案] 。
注意
若要了解如何新增宣告的指示,請遵循連結。
在 [使用 SAML 設定單一登入] 頁面上的 [SAML 簽署憑證] 區段中,尋找 [憑證 (Base64)],然後選取 [下載] 以下載憑證並儲存在電腦上。
在 [設定 Github Enterprise 伺服器] 區段上,根據您的需求複製適當的 URL。
建立 Microsoft Entra 測試使用者
在本節中,您將建立名為 B.Simon 的測試使用者。
- 以至少是使用者管理員的身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 [身分識別]>[使用者]>[所有使用者]。
- 選取畫面頂端的 [新增使用者]> [建立新使用者]。
- 在 [使用者] 屬性中,執行下列步驟:
- 在 [顯示名稱] 欄位中,輸入
B.Simon
。 - 在 [使用者主體名稱] 欄位中,輸入 username@companydomain.extension。 例如:
B.Simon@contoso.com
。 - 選取 [顯示密碼] 核取方塊,然後記下 [密碼] 方塊中顯示的值。
- 選取 [檢閱 + 建立]。
- 在 [顯示名稱] 欄位中,輸入
- 選取 建立。
指派 Microsoft Entra 測試使用者
在本節中,您會將 GitHub Enterprise 伺服器的存取權授給 B.Simon,讓她能夠使用單一登入。
- 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 [身分識別]>[應用程式]>[企業應用程式]>[GitHub Enterprise 伺服器]。
- 在應用程式概觀頁面中,選取 [使用者和群組]。
- 選取 [新增使用者/群組],然後在 [新增指派] 對話方塊中選取 [使用者和群組]。
- 在 [使用者和群組] 對話方塊中,從 [使用者] 列表中選取 [B.Simon],然後按一下畫面底部的 [選取] 按鈕。
- 如果您預期將角色指派給使用者,則可以從 [選取角色] 下拉式清單中選取該角色。 如果未為此應用程式設定任何角色,您會看到已選取 [預設存取權] 角色。
- 在 [新增指派] 對話方塊中,按一下 [指派] 按鈕。
設定 Github Enterprise 伺服器 SSO
若要在 Github Enterprise 伺服器端設定 SSO,您必須遵循這裡說明的指示。
建立 GitHub Enterprise 伺服器測試使用者
本節會在 Github Enterprise 伺服器中建立名為 B.Simon 的使用者。 Github Enterprise 伺服器支援依預設啟用的 Just-In-Time 使用者佈建。 本節中沒有適用於您的動作項目。 如果 Github Enterprise 伺服器中還沒有任何使用者存在,在驗證之後就會建立新的使用者。
Github Enterprise 伺服器也支援自動使用者佈建,您可以在這裡找到更多如何設定自動使用者佈建的詳細資料。
測試 SSO
在本節中,您會使用下列選項來測試您的 Microsoft Entra 單一登入設定。
SP 起始:
按一下 [測試此應用程式],這會重新導向至您可以在其中起始登入流程的 GitHub Enterprise 伺服器登入 URL。
直接移至 Github Enterprise 伺服器登入 URL,然後從該處起始登入流程。
IDP 起始:
- 按一下 [測試此應用程式],您應該會自動登入您已設定 SSO 的 GitHub Enterprise 伺服器。
您也可以使用 Microsoft「我的應用程式」,以任何模式測試應用程式。 當您在 [我的應用程式] 中按一下 GitHub Enterprise 伺服器磚,如果是在 SP 模式中設定,系統會將您重新導向至應用程式登入頁面來起始登入流程,而如果是在 IDP 模式中設定,則應該會自動登入您已設定 SSO 的 Github Enterprise 伺服器。 如需詳細資訊,請參閱 Microsoft Entra 我的應用程式。
下一步
設定 Github Enterprise 伺服器後,您可以強制執行工作階段控制項,以即時防止組織的敏感資料遭到外洩和滲透。 工作階段控制項會從條件式存取延伸。 了解如何使用適用於雲端的 Microsoft Defender 應用程式來強制執行工作階段控制項。