教學課程:將 Microsoft Entra SSO 與 GitHub Enterprise Cloud Organization 整合
在本教學課程中,您將瞭解如何整合 GitHub Enterprise Cloud Organization 與 Microsoft Entra ID。 當您將 GitHub Enterprise Cloud Organization 與 Microsoft Entra ID 整合後,您可以:
- 在 Microsoft Entra ID 中控制可存取 GitHub Enterprise Cloud Organization 的人員。
- 在單一集中位置管理 GitHub Enterprise Cloud Organization 的存取權。
必要條件
若要開始使用,您需要下列項目:
- Microsoft Entra 訂用帳戶。 如果您沒有訂用帳戶,可以取得免費帳戶。
- 在 GitHub Enterprise 雲端中建立的 GitHub 組織,需使用 GitHub Enterprise 的計費方案。
案例描述
在本教學課程中,您會在測試環境中設定及測試 Microsoft Entra 單一登入。
GitHub 支援 SP 起始的 SSO。
GitHub 支援自動使用者佈建 (組織邀請)。
從資源庫新增 GitHub
若要設定將 GitHub 整合至 Microsoft Entra ID 中,則必須從資源庫將 GitHub 新增至受控 SaaS 應用程式清單。
- 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [新增應用程式]。
- 在 [從資源庫新增] 區段的搜尋方塊中,輸入 GitHub。
- 從 [結果] 面板中選取 [GitHub Enterprise Cloud - Organization],然後新增應用程式。 將應用程式新增至您的租用戶時,請稍候幾秒鐘。
或者,您也可以使用企業應用程式組態精靈。 在此精靈中,您可以將應用程式新增至租用戶、將使用者/群組新增至應用程式、指派角色,以及逐步進行 SSO 設定。 深入了解 Microsoft 365 精靈。
設定及測試適用於 GitHub 的 Microsoft Entra SSO
以名為 B.Simon 的測試使用者,設定及測試與 GitHub 搭配執行的 Microsoft Entra SSO。 為確保 SSO 能正常執行,您必須在 Microsoft Entra 使用者與 GitHub 中的相關使用者之間建立連結關聯性。
若要設定及測試與 GitHub 搭配執行的 Microsoft Entra SSO,請執行下列步驟:
- 設定 Microsoft Entra SSO - 讓使用者能夠使用此功能。
- 建立 Microsoft Entra 測試使用者 - 以使用 B.Simon 測試 Microsoft Entra 單一登入。
- 指派 Microsoft Entra 測試使用者 - 讓 B.Simon 使用 Microsoft Entra 單一登入。
- 設定 GitHub SSO - 在應用程式端設定單一登入設定。
- 建立 GitHub 測試使用者 - 使 GitHub 中對應的 B.Simon 連結到該使用者在 Microsoft Entra 中的代表項目。
- 測試 SSO - 確認組態是否正常運作。
設定 Microsoft Entra SSO
遵循下列步驟來啟用 Microsoft Entra SSO。
以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [GitHub] > [單一登入]。
在 [選取單一登入方法] 頁面上,選取 [SAML]。
在 [以 SAML 設定單一登入] 頁面上,按一下 [基本 SAML 設定] 的鉛筆圖示,以編輯設定。
在 [基本 SAML 組態] 區段上,輸入下列欄位的值:
a. 在 [識別碼 (實體識別碼)] 文字方塊中,使用下列模式輸入 URL:
https://github.com/orgs/<Organization ID>
b. 在 [回覆 URL] 文字方塊中,使用下列模式來輸入 URL:
https://github.com/orgs/<Organization ID>/saml/consume
c. 在 [登入 URL] 文字方塊中,使用下列模式輸入 URL:
https://github.com/orgs/<Organization ID>/sso
注意
請注意這些不是真正的值。 您必須使用實際的「識別碼」、「回覆 URL」及「單一登入 URL」更新這些值。 在此建議您在 [識別碼] 中使用唯一的字串值。 移至 [GitHub 管理] 區段來擷取這些值。
GitHub 應用程式需要特定格式的 SAML 判斷提示,因此您必須將自訂屬性對應加入 SAML Token 屬性組態。 下列螢幕快照顯示預設屬性的清單,而 唯一使用者標識碼(名稱標識符) 則與 user.userprincipalname 對應。 GitHub 應用程式要求唯一的使用者識別碼 (名稱識別碼) 需與 user.mail 相對應,因此您必須按一下 [編輯] 圖示以編輯屬性對應,並變更屬性對應。
在 [以 SAML 設定單一登入] 頁面的 [SAML 簽署憑證] 區段中,按一下 [下載],以依據您的需求從指定選項下載 [憑證 (Base64)],並儲存在您的電腦上。
在 [設定 GitHub] 區段上,依據您的需求複製適當的 URL。
建立 Microsoft Entra 測試使用者
在本節中,您將建立名為 B.Simon 的測試使用者。
- 以至少是使用者管理員的身分登入 Microsoft Entra 系統管理中心。
- 瀏覽至 [身分識別]>[使用者]>[所有使用者]。
- 在畫面頂端選取 [新增使用者]>[建立新使用者]。
- 在 [使用者] 屬性中,執行下列步驟:
- 在 [顯示名稱] 欄位中輸入
B.Simon
。 - 在 [使用者主體名稱] 欄位中輸入 username@companydomain.extension。 例如:
B.Simon@contoso.com
。 - 選取 [顯示密碼] 核取方塊,然後記下 [密碼] 方塊中顯示的值。
- 選取 [檢閱 + 建立]。
- 在 [顯示名稱] 欄位中輸入
- 選取 [建立]。
指派 Microsoft Entra 測試使用者
在本節中,您會透過授與 B.Simon 存取 GitHub 的權限,允許其使用單一登入。
以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心。
瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [GitHub]。
在應用程式的 [概觀] 頁面中,尋找 [管理] 區段,然後選取 [使用者和群組]。
選取 [新增使用者],然後在 [新增指派] 對話方塊中選取 [使用者和群組]。
在 [使用者和群組] 對話方塊中,從 [使用者] 列表中選取 [B.Simon],然後按一下畫面底部的 [選取] 按鈕。
如果您預期將角色指派給使用者,則可以從 [選取角色] 下拉式清單中選取該角色。 如果未為此應用程式設定任何角色,您會看到已選取 [預設存取權] 角色。
在 [新增指派] 對話方塊中,按一下 [指派] 按鈕。
設定 GitHub SSO
在不同的 Web 瀏覽器視窗中,以系統管理員身分登入您的 GitHub 組織網站。
瀏覽至 [設定],然後按一下 [安全性]。
勾選 [啟用 SAML 驗證] 方塊,以顯示單一登入設定欄位,請執行下列步驟:
a. 複製 [單一登入 URL] 值,並將此值貼至 [基本 SAML 組態] 中的 [登入 URL] 文字輸入框內。
b. 複製 [判斷提示取用者服務 URL] 值,並將此值貼至 [基本 SAML 組態] 中的 [回覆 URL] 文字輸入框內。
設定下列欄位:
a. 在 [登入 URL] 文字輸入框中,貼上您之前複製的 [登入 URL] 值。
b. 在 [簽發者] 文字輸入框中,貼上您之前複製的 [Microsoft Entra 識別碼] 值。
c. 在記事本中開啟從 Azure 入口網站下載的憑證,將內容貼至 [公開憑證] 文字方塊。
d. 按一下 [編輯] 圖示以編輯 [簽章方法] 和 [摘要方法],將 RSA-SHA1 和 SHA1 改為 RSA-SHA256 和 SHA256,如下所示。
e. 更新預設 URL 中的判斷提示取用者服務 URL (回覆 URL),讓 GitHub 中的 URL 符合 Azure 應用程式註冊中的 URL。
按一下 [測試 SAML 組態],確認 SSO 期間沒有驗證失敗或錯誤。
按一下 [儲存]
注意
GitHub 中的單一登入會向 GitHub 中的特定組織驗證,而不會取代 GitHub 本身的驗證。 因此,如果使用者的 github.com 工作階段已過期,系統可能會在單一登入程序進行期間,要求您使用 GitHub 的識別碼/密碼進行驗證。
建立 GitHub 測試使用者
本節的目標是在 GitHub 中建立名為 Britta Simon 的使用者。 GitHub 支援自動使用者佈建,該功能預設為啟用。 您可以在這裡找到關於如何設定自動使用者佈建的更多詳細資料。
如果您需要手動建立使用者,請執行下列步驟:
以系統管理員身分登入您的 GitHub 公司網站。
按一下 [人員] 。
按一下 [邀請成員]。
在 [邀請成員] 對話方塊頁面上,執行下列步驟:
a. 在 [電子郵件] 文字方塊中,輸入 Britta Simon 帳戶的電子郵件地址。
b. 按一下 [傳送邀請]。
注意
Microsoft Entra 帳戶的持有者將收到一封電子郵件,並依照連結在啟用其帳戶前進行確認。
測試 SSO
在本節中,您會使用下列選項來測試您的 Microsoft Entra 單一登入設定。
請按一下 [測試此應用程式],重新導向至可用於起始登入流程的 GitHub 登入 URL。
直接移至 GitHub 登入 URL,然後從該處起始登入流程。
您可以使用 Microsoft 我的應用程式。 當您按一下「我的應用程式」中的 GitHub 圖格時,將會重新導向至 GitHub 登入 URL。 如需「我的應用程式」的詳細資訊,請參閱我的應用程式簡介。
下一步
設定 GitHub 後,您可以強制執行工作階段控制項,以即時防止組織的敏感資料遭到外洩和滲透。 工作階段控制項會從條件式存取延伸。 了解如何使用適用於雲端的 Microsoft Defender 應用程式來強制執行工作階段控制項。