共用方式為


教學課程:將 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 整合至 Microsoft Entra ID 中,則必須從資源庫將 GitHub 新增至受控 SaaS 應用程式清單。

  1. 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心
  2. 瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [新增應用程式]
  3. 在 [從資源庫新增] 區段的搜尋方塊中,輸入 GitHub
  4. 從 [結果] 面板中選取 [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,請執行下列步驟:

  1. 設定 Microsoft Entra SSO - 讓使用者能夠使用此功能。
    1. 建立 Microsoft Entra 測試使用者 - 以使用 B.Simon 測試 Microsoft Entra 單一登入。
    2. 指派 Microsoft Entra 測試使用者 - 讓 B.Simon 使用 Microsoft Entra 單一登入。
  2. 設定 GitHub SSO - 在應用程式端設定單一登入設定。
    1. 建立 GitHub 測試使用者 - 使 GitHub 中對應的 B.Simon 連結到該使用者在 Microsoft Entra 中的代表項目。
  3. 測試 SSO - 確認組態是否正常運作。

設定 Microsoft Entra SSO

遵循下列步驟來啟用 Microsoft Entra SSO。

  1. 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心

  2. 瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [GitHub] > [單一登入]

  3. 在 [選取單一登入方法] 頁面上,選取 [SAML]

  4. 在 [以 SAML 設定單一登入] 頁面上,按一下 [基本 SAML 設定] 的鉛筆圖示,以編輯設定。

    編輯基本 SAML 組態

  5. 在 [基本 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 管理] 區段來擷取這些值。

  6. GitHub 應用程式需要特定格式的 SAML 判斷提示,因此您必須將自訂屬性對應加入 SAML Token 屬性組態。 下列螢幕快照顯示預設屬性的清單,而 唯一使用者標識碼(名稱標識符) 則與 user.userprincipalname 對應。 GitHub 應用程式要求唯一的使用者識別碼 (名稱識別碼) 需與 user.mail 相對應,因此您必須按一下 [編輯] 圖示以編輯屬性對應,並變更屬性對應。

    顯示 [使用者屬性] 區段的螢幕擷取畫面,其中已選取 [編輯] 圖示。

  7. 在 [以 SAML 設定單一登入] 頁面的 [SAML 簽署憑證] 區段中,按一下 [下載],以依據您的需求從指定選項下載 [憑證 (Base64)],並儲存在您的電腦上。

    憑證下載連結

  8. 在 [設定 GitHub] 區段上,依據您的需求複製適當的 URL。

    複製組態 URL

建立 Microsoft Entra 測試使用者

在本節中,您將建立名為 B.Simon 的測試使用者。

  1. 以至少是使用者管理員的身分登入 Microsoft Entra 系統管理中心
  2. 瀏覽至 [身分識別]>[使用者]>[所有使用者]。
  3. 在畫面頂端選取 [新增使用者]>[建立新使用者]
  4. 在 [使用者] 屬性中,執行下列步驟:
    1. 在 [顯示名稱] 欄位中輸入 B.Simon
    2. 在 [使用者主體名稱] 欄位中輸入 username@companydomain.extension。 例如: B.Simon@contoso.com
    3. 選取 [顯示密碼] 核取方塊,然後記下 [密碼] 方塊中顯示的值。
    4. 選取 [檢閱 + 建立]
  5. 選取 [建立]

指派 Microsoft Entra 測試使用者

在本節中,您會透過授與 B.Simon 存取 GitHub 的權限,允許其使用單一登入。

  1. 以至少 雲端應用程式系統管理員 的身分登入 Microsoft Entra 系統管理中心

  2. 瀏覽至 [身分識別] > [應用程式] > [企業應用程式] > [GitHub]

  3. 在應用程式的 [概觀] 頁面中,尋找 [管理] 區段,然後選取 [使用者和群組]

  4. 選取 [新增使用者],然後在 [新增指派] 對話方塊中選取 [使用者和群組]

  5. 在 [使用者和群組] 對話方塊中,從 [使用者] 列表中選取 [B.Simon],然後按一下畫面底部的 [選取] 按鈕。

  6. 如果您預期將角色指派給使用者,則可以從 [選取角色] 下拉式清單中選取該角色。 如果未為此應用程式設定任何角色,您會看到已選取 [預設存取權] 角色。

    使用者角色

  7. 在 [新增指派] 對話方塊中,按一下 [指派] 按鈕。

設定 GitHub SSO

  1. 在不同的 Web 瀏覽器視窗中,以系統管理員身分登入您的 GitHub 組織網站。

  2. 瀏覽至 [設定],然後按一下 [安全性]

    顯示 GitHub [組織設定] 功能表的螢幕擷取畫面,其中已選取 [安全性]。

  3. 勾選 [啟用 SAML 驗證] 方塊,以顯示單一登入設定欄位,請執行下列步驟:

    顯示 [SAML 單一登入] 區段的螢幕擷取畫面,其中醒目提示 [啟用 SAML 驗證] 和 URL 文字方塊。

    a. 複製 [單一登入 URL] 值,並將此值貼至 [基本 SAML 組態] 中的 [登入 URL] 文字輸入框內。

    b. 複製 [判斷提示取用者服務 URL] 值,並將此值貼至 [基本 SAML 組態] 中的 [回覆 URL] 文字輸入框內。

  4. 設定下列欄位:

    顯示 [登入 URL]、[簽發者] 和 [公開憑證] 文字方塊的螢幕擷取畫面。

    a. 在 [登入 URL] 文字輸入框中,貼上您之前複製的 [登入 URL] 值。

    b. 在 [簽發者] 文字輸入框中,貼上您之前複製的 [Microsoft Entra 識別碼] 值。

    c. 在記事本中開啟從 Azure 入口網站下載的憑證,將內容貼至 [公開憑證] 文字方塊。

    d. 按一下 [編輯] 圖示以編輯 [簽章方法] 和 [摘要方法],將 RSA-SHA1SHA1 改為 RSA-SHA256SHA256,如下所示。

    e. 更新預設 URL 中的判斷提示取用者服務 URL (回覆 URL),讓 GitHub 中的 URL 符合 Azure 應用程式註冊中的 URL。

    顯示圖片的螢幕擷取畫面。

  5. 按一下 [測試 SAML 組態],確認 SSO 期間沒有驗證失敗或錯誤。

    顯示 [設定] 的螢幕擷取畫面。

  6. 按一下 [儲存]

注意

GitHub 中的單一登入會向 GitHub 中的特定組織驗證,而不會取代 GitHub 本身的驗證。 因此,如果使用者的 github.com 工作階段已過期,系統可能會在單一登入程序進行期間,要求您使用 GitHub 的識別碼/密碼進行驗證。

建立 GitHub 測試使用者

本節的目標是在 GitHub 中建立名為 Britta Simon 的使用者。 GitHub 支援自動使用者佈建,該功能預設為啟用。 您可以在這裡找到關於如何設定自動使用者佈建的更多詳細資料。

如果您需要手動建立使用者,請執行下列步驟:

  1. 以系統管理員身分登入您的 GitHub 公司網站。

  2. 按一下 [人員]

    顯示已選取人員之 GitHub 網站的螢幕擷取畫面。

  3. 按一下 [邀請成員]

    顯示 [邀請使用者] 的螢幕擷取畫面。

  4. 在 [邀請成員] 對話方塊頁面上,執行下列步驟:

    a. 在 [電子郵件] 文字方塊中,輸入 Britta Simon 帳戶的電子郵件地址。

    顯示 [邀請人員] 的螢幕擷取畫面。

    b. 按一下 [傳送邀請]

    顯示 [邀請成員] 對話方塊頁面的螢幕擷取畫面,其中已選取 [成員] 和 [傳送邀請] 按鈕。

    注意

    Microsoft Entra 帳戶的持有者將收到一封電子郵件,並依照連結在啟用其帳戶前進行確認。

測試 SSO

在本節中,您會使用下列選項來測試您的 Microsoft Entra 單一登入設定。

  • 請按一下 [測試此應用程式],重新導向至可用於起始登入流程的 GitHub 登入 URL。

  • 直接移至 GitHub 登入 URL,然後從該處起始登入流程。

  • 您可以使用 Microsoft 我的應用程式。 當您按一下「我的應用程式」中的 GitHub 圖格時,將會重新導向至 GitHub 登入 URL。 如需「我的應用程式」的詳細資訊,請參閱我的應用程式簡介

下一步

設定 GitHub 後,您可以強制執行工作階段控制項,以即時防止組織的敏感資料遭到外洩和滲透。 工作階段控制項會從條件式存取延伸。 了解如何使用適用於雲端的 Microsoft Defender 應用程式來強制執行工作階段控制項