教學課程:針對標頭型 SSO 設定 F5 的 BIG-IP 簡易按鈕

瞭解如何使用 F5 BIG-IP 簡易按鈕引導式設定 v16.1,使用 Microsoft Entra ID 來保護標頭型應用程式。

將 BIG-IP 與 Microsoft Entra ID 整合可提供許多優點,包括:

深入了解:

案例說明

此案例涵蓋使用 HTTP 授權標頭來管理受保護內容存取權的舊版應用程式。 舊版缺少新式通訊協定,可支援直接與 Microsoft Entra ID 整合。 現代化成本高昂、耗時,並帶來停機時間風險。 請改用 F5 BIG-IP 應用程式傳遞控制器 (ADC),透過通訊協定轉換來橋接舊版應用程式與新式識別碼控制平面之間的差距。

應用程式前面的 BIG-IP 得以使用 Microsoft Entra 預先驗證和標頭型 SSO 來重疊服務。 此設定可改善整體應用程式安全性態勢。

注意

組織可以使用 Microsoft Entra 應用程式 Proxy 來遠端存取此應用程式類型。 深入瞭解:透過 Microsoft Entra 應用程式 Proxy 遠端存取內部部署的應用程式

案例架構

SHA 解決方案包含:

  • 應用程式 - 由 Microsoft Entra SHA 保護的 BIG-IP 已發佈服務
  • Microsoft Entra ID - 安全性聲明標記語言 (SAML) 識別提供者 (IdP) 會驗證使用者認證、條件式存取,以及對 BIG-IP 的 SAML 型 SSO。 Microsoft Entra ID 透過 SSO 向 BIG-IP 提供工作階段屬性。
  • BIG-IP - 反向 Proxy 和 SAML 服務提供者 (SP) 至應用程式,將驗證委派給 SAML IdP,再對後端應用程式執行標頭式 SSO。

在此案例,SHA 支援由 SP 和 IdP 起始的流程。 下圖說明 SP 起始的流程。

設定與 SP 起始流程的圖表。

  1. 使用者會連線到應用程式端點 (BIG-IP)。
  2. BIG-IP APM 存取原則會將使用者重新導向至 Microsoft Entra ID (SAML IdP)。
  3. Microsoft Entra 會預先驗證使用者,並套用條件式存取原則。
  4. 使用者會重新導向至 BIG-IP (SAML SP),並使用已發行的 SAML 權杖來執行 SSO。
  5. BIG-IP 會在應用程式要求中插入 Microsoft Entra 屬性作為標頭。
  6. 應用程式會授權要求並回傳酬載。

必要條件

針對此案例,您需要:

BIG-IP 設定

本教學課程使用引導式設定 v16.1 搭配簡易按鈕範本。 使用「簡易按鈕」,管理員便無需再來回切換,啟用適用於 SHA 的服務。 引導式設定精靈和 Microsoft Graph 會處理部署和原則管理。 BIG-IP APM 和 Microsoft Entra 整合可確保應用程式支援身分識別同盟、SSO 及條件式存取。

注意

請以環境中的字串或值取代範例字串或值。

註冊簡易按鈕

提示

本文中的步驟可能會依據您開始的入口網站而稍有不同。

在用戶端或服務存取 Microsoft Graph 之前,Microsoft 身分識別平台必須予以信任。

深入瞭解:快速入門:向 Microsoft 身分識別平台註冊應用程式

建立租用戶應用程式註冊,為簡易按鈕授權存取圖表。 有了這些權限,BIG-IP 會推送組態,建立SAML SP 實例與已發行應用程式的之間的信任,並將 Microsoft Entra ID 作為 SAML IdP。

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

  2. 瀏覽至 [身分識別]>[應用程式]>[應用程式註冊]>[新增註冊]

  3. 在 [管理] 下,選取 [應用程式註冊 > 新增註冊]

  4. 輸入應用程式 [名稱]

  5. 指定誰使用應用程式。

  6. 選取 [僅此組織目錄中的帳戶]

  7. 選取 [註冊]

  8. 瀏覽至 [API 權限]

  9. 授權下列 Microsoft Graph [應用程式權限]:

    • Application.Read.All
    • Application.ReadWrite.All
    • Application.ReadWrite.OwnedBy
    • Directory.Read.All
    • Group.Read.All
    • IdentityRiskyUser.Read.All
    • Policy.Read.All
    • Policy.ReadWrite.ApplicationConfiguration
    • Policy.ReadWrite.ConditionalAccess
    • User.Read.All
  10. 為您的組織授與管理員同意。

  11. 在 [憑證與密碼],產生新的 [用戶端密碼]。 記下用戶端密碼。

  12. 概觀,記下用戶端識別碼和租用戶識別碼。

設定 [簡易按鈕]

  1. 啟動 APM 引導式設定。

  2. 啟動 [簡易按鈕]範本。

  3. 瀏覽至 [存取 > 引導式設定]

  4. 選取 [Microsoft 整合]

  5. 選取 [Microsoft Entra 應用程式]

  6. 審核設定步驟。

  7. 選取 [下一步]

  8. 使用說明的步驟排序來發佈您的應用程式。

    發行排序的圖表。

組態屬性

使用 [設定屬性] 索引標籤來建立 BIG-IP 應用程式設定和 SSO 物件。 Azure 服務帳戶詳細資料代表您在 Microsoft Entra 租用戶中註冊的用戶端。 使用 BIG-IP OAuth 用戶端的設定,使用 SSO 屬性在租用戶中註冊 SAML SP。 簡易按鈕會為針對 SHA 發佈並啟用的 BIG-IP 服務執行此操作。

您可以重複使用設定來發佈更多應用程式。

  1. 輸入 [設定名稱]
  2. 針對單一登入 (SSO) 和 HTTP 標頭,選取 [開啟]
  3. 針對租用戶識別碼用戶端識別碼客戶端密碼輸入您注意到的內容。
  4. 確認 BIG-IP 連線至您的租用戶。
  5. 選取 [下一步]

服務提供者

在「服務提供者設定」,定義受 SHA 保護應用程式的 SAML SP 執行個體設定。

  1. 輸入主機,即應用程式公共 FQDN。

  2. 輸入實體識別碼,Microsoft Entra ID 使用此識別碼來識別要求權杖的 SAML SP。

  3. (選用)在「安全性設定」,選取 [啟用加密判斷提示],啟用 Microsoft Entra ID 來加密已核發的 SAML 判斷提示。 Microsoft Entra ID 和 BIG-IP APM 加密判斷提示有助於確保不會攔截內容權杖,也不會發生個人或公司資料遭入侵。

  4. 安全性設定,從 [判斷提示解密私密金鑰] 清單,選取 [新建]

    判斷解密金鑰清單中的「新建」選項的螢幕擷取畫面。

  5. 選取 [確定]

  6. [匯入 SSL 憑證和金鑰] 對話方塊隨即出現。

  7. 針對匯入類型,請選取 [PKCS 12 (IIS)]。 這個操作會匯入憑證和私密金鑰。

  8. 針對憑證和密鑰名稱,選取 [新增],然後輸入內容。

  9. 輸入 [密碼]

  10. 選取 [匯入]

  11. 關閉瀏覽器索引標籤以返回主要索引標籤。

「SSL 憑證金鑰來源」選取項目和項目的螢幕擷取畫面。

  1. 針對啟用加密判斷提示,核取此方塊。
  2. 如果已啟用加密,從 [判斷提示解密私密金鑰] 清單中選取憑證。 BIG-IP APM 會使用此憑證私密金鑰來解密Microsoft Entra 判斷提示。
  3. 如果已啟用加密,從 [判斷提示解密憑證] 清單中選取憑證。 BIG-IP 會將此憑證上傳至 Microsoft Entra ID,將發行的 SAML 判斷提示加密。

安全性設定兩個項目和一個選項的螢幕擷取畫面。

Microsoft Entra ID

使用下列指示,在您的 Microsoft Entra 租用戶中設定新的 BIG-IP SAML 應用程式。 Easy Button 具有 Oracle PeopleSoft、Oracle E-Business Suite、Oracle JD Edwards、SAP ERP 及一般 SHA 範本的應用程式範本。

  1. Azure 設定,[設定屬性]下,選取 [F5 BIG-IP APM Microsoft Entra ID Integration]
  2. 選取 [新增]

Azure 設定

  1. 在 Microsoft Entra 租用戶中輸入 [顯示名稱] BIG-IP 建立的應用程式。 使用者在 Microsoft 我的應用程式上看到名稱以及顯示圖示。

  2. 略過 [登入 URL(選擇性)]

  3. 簽署金鑰簽署憑證旁,選取 [重新整理] 以找出您匯入的憑證。

  4. 簽署金鑰複雜密碼,請輸入憑證密碼。

  5. (選用)啟用簽署選項,確保 BIG-IP 接受由 Microsoft Entra ID 簽署的權杖和宣告。

    Azure 設定的螢幕擷取畫面:新增簽署憑證資訊

  6. 動態查詢使用者和使用者群組的輸入。

    重要

    新增用於測試的使用者或群組,否則所有存取會被拒絕。 在使用者和使用者群組,選取 [+ 新增]

    「使用者和使用者群組」中「新增」選項的螢幕擷取畫面。

使用者屬性與宣告

當使用者進行驗證時,Microsoft Entra ID 發出 SAML 權杖,其中包含識別使用者的宣告和屬性。 使用者屬性和宣告 索引標籤具有應用程式的預設宣告。 使用索引標籤來設定更多宣告。

包含一個以上的屬性:

  1. 針對標頭名稱,輸入 [employeeid]

  2. 針對來源屬性,輸入 [user.employeeid]

    「其他宣告」之值的螢幕擷取畫面。

其他使用者屬性

其他使用者屬性 索引標籤中,啟用工作階段增強。 針對需要將屬性儲存在其他目錄中的分散式系統,例如 Oracle、SAP 及其他 JAVA 實作使用此功能。 從輕量型目錄存取通訊協定 (LDAP) 來源擷取的屬性會插入為更多 SSO 標頭。 此動作可協助根據角色、合作夥伴識別碼等來控制存取。

注意

這項功能與 Microsoft Entra ID 沒有關聯。 它是屬性來源。 

條件式存取原則

條件式存取原則會根據裝置、應用程式、位置及風險訊號來控制存取。

  • 可用的原則,尋找沒有使用者動作的條件式存取原則
  • 選取的原則,尋找雲端應用程式原則
    • 您無法取消選取這些原則,或將其移至 [可用的原則],因為這些會在租用戶層級強制執行

選取要套用至所發佈應用程式的原則:

  1. 條件式存取原則 索引標籤的 [可用的原則] 清單中,選取原則。
  2. 選取 [向右鍵],然後將其移至 [選取的原則] 清單。

注意

您可以選取原則 [包含] 或 [排除] 選項。 如果同時選取這兩個選項,則取消強制執行該原則。

在「選取的原則」中選取「排除」選項的螢幕擷取畫面。

注意

當您選取 [條件式存取原則] 索引標籤時,會出現原則清單。選取 [重新整理],精靈會查詢租用戶。 部署應用程式後會顯示 [重新整理]。

虛擬伺服器屬性

虛擬伺服器是一種以虛擬 IP 位址表示的 BIG-IP 資料平面物件。 伺服器會接聽用戶端對應用程式的要求。 收到的流量都會根據與虛擬伺服器相關聯的 APM 設定檔進行處理和評估。 流量會根據原則進行導向。

  1. 針對目的地位址,輸入 IPv4 或 IPv6 位址 BIG-IP 用來接收用戶端流量。 請確定網域名稱伺服器 (DNS) 中的對應記錄,讓用戶端能夠將 BIG-IP 已發佈應用程式的外部 URL 解析為 IP。 您可以使用電腦的 localhost DNS 進行測試。

  2. 針對 [服務連接埠],輸入 [443],然後選取 [HTTPS]

  3. 核取 [啟用重新導向轉接連接埠] 方塊。

  4. 輸入 [重新導向連接埠] 的值。 此選項會將傳入的 HTTP 用戶端流量重新導向至 HTTPS。

  5. 選取您建立的用戶端 SSL 設定檔,或保留預設值進行測試。 用戶端 SSL 設定檔會啟用適用 HTTPS 的虛擬伺服器,因此可以透過 TLS 加密用戶端連線。

    「目的地位址、服務連接埠和虛擬伺服器屬性」上所選設定檔的螢幕擷取畫面。

集區屬性

應用程式集區 索引標籤會將受 BIG-IP 保護的服務呈現為一個集區,其中包含一或多部應用程式伺服器。

  1. 針對選取集區,請選取 [新建],或選取另一個。

  2. 針對負載平衡方法,選取 [循環配置資源]

  3. 針對集區伺服器 選取節點,或針對裝載標頭式應用程式的伺服器選取指定 IP 位址和連接埠。

    「集區屬性」上「IP 位址或節點名稱和連接埠」輸入的螢幕擷取畫面。

    注意

    Microsoft 後端應用程式位於 HTTP 連接埠 80 上。 如果您選取 [HTTPS],請使用 [443]

單一登入和 HTTP 標頭

透過 SSO,使用者不需要輸入認證即可存取 BIG-IP 已發佈的服務。 「簡易按鈕精靈」支援 Kerberos、OAuth 持有人和 HTTP 授權標頭以進行 SSO。

  1. 單一登入和 HTTP 標頭,[SSO 標頭]中,針對 [標頭作業],選取 [插入]

  2. 針對標頭名稱,請使用 [upn]

  3. 針對標頭值,請使用 [%{session.saml.last.identity}

  4. 針對標頭作業,選取 [插入]

  5. 針對標頭名稱,使用 [employeeid]

  6. 對於標頭值,使用 [%{session.saml.last.attr.name.employeeid}]

    SSO 標頭的項目和選取項目的螢幕擷取畫面。

    注意

    大括弧內的 APM 工作階段變數會區分大小寫。 不一致會導致屬性對應失敗。

工作階段管理

使用 BIG-IP 工作階段管理設定來定義使用者工作階段終止或接續的條件。

若要深入瞭解,請移至 support.f5.com,參閱K18390492:安全性 | BIG-IP APM 操作指南

單一登出 (SLO) 可確保當使用者登出時終止 IdP、BIG-IP 及使用者代理程式工作階段。當「簡易按鈕」在您的 Microsoft Entra 租用戶中具現化 SAML 應用程式時,它會將 APM SLO 端點填入登出 URL。 從我的應用程式起始的 IdP 起始登出會終止 BIG-IP 和用戶端工作階段。

深入瞭解:請參閱我的應用程式

已發佈應用程式的 SAML 同盟中繼資料會從租用戶匯入。 此匯入為 APM 提供 Microsoft Entra ID 的 SAML 登出端點。 此操作可確保 SP 起始的登出會終止用戶端和 Microsoft Entra 工作階段。 確定 APM 知道使用者何時登出。

如果 BIG-IP Webtop 入口網站存取已發佈的應用程式,則 eAPM 會處理登出以呼叫 Microsoft Entra 登出端點。 如果未使用 BIG-IP Webtop 入口網站,使用者就無法指示 APM 登出。如果使用者登出應用程式,BIG-IP 也毫無警示。 因此,請確定 SP 起始的登出會安全地終止工作階段。 將 SLO 函式新增至應用程式 [登出] 按鈕,然後,用戶端會重新導向至 Microsoft Entra SAML 或 BIG-IP 登出端點。 若要找出租用戶的 SAML 登出端點 URL,請移至 [應用程式註冊 > 端點]

若無法變更應用程式,讓 BIG-IP 得以接聽應用程式登出呼叫並觸發 SLO。

深入了解:

部署

部署提供設定的明細。

  1. 若要認可設定,請選取 [部署]
  2. 確認企業應用程式租用戶清單中的應用程式。
  3. 這個應用程式透過 SHA 及其 URL 或在 Microsoft 應用程式入口網站上發行和存取。

測試

  1. 在瀏覽器,連線到應用程式外部 URL,或選取 [我的應用程式] 上的應用程式圖示。
  2. 對 Microsoft Entra ID 進行驗證。
  3. 系統會重新導向至應用程式的 BIG-IP 虛擬伺服器,並透過 SSO 登入。

下列螢幕擷取畫面為插入標頭型應用程式的標頭輸出。

「伺服器變數」下的 UPN、員工識別碼及事件角色螢幕擷取畫面。

注意

您可以封鎖對應用程式的直接存取,藉此強制執行透過 BIG-IP 的路徑。

進階部署

在某些情況下,引導式設定範本缺乏靈活性。

深入瞭解:教學課程:針對標頭型 SSO 設定 F5 BIG-IP 的存取原則管理員

在 BIG-IP 中,您可以停用引導式設定嚴格的管理模式。 然後,手動變更組態,不過大部分的組態都是使用精靈範本自動化的。

  1. 若要停用 strict 模式,請瀏覽至 [存取 > 引導式設定]

  2. 在應用程式設定的資料列上,選取 [掛鎖] 圖示。

  3. 與應用程式已發行執行個體相關聯的 BIG-IP 物件會解除鎖定以進行管理。 無法再使用精靈進行變更。

    掛鎖圖示的螢幕擷取畫面。

    注意

    如果您重新啟用 strict 模式並部署設定,此操作會覆寫不在引導式設定中的設定。 我們建議用於生產服務的進階設定。

疑難排解

進行疑難排解時,請使用下列指引。

記錄詳細程度

BIG-IP 記錄有助於找出連線能力、SSO、原則或設定錯誤的變數對應問題。 若要進行疑難排解,請增加記錄詳細資訊。

  1. 瀏覽至 [存取原則 > 概觀]
  2. 選取 [事件記錄]
  3. 選取 [設定]
  4. 選取已發佈應用程式的資料列
  5. 選取 [編輯]
  6. 選取 [存取系統記錄]
  7. 從 SSO 清單中,選取 [偵錯]
  8. 選取 [確定]
  9. 重現問題。
  10. 檢查記錄。

注意

在完成後還原這項功能。 詳細資訊模式會產生過多的資料。

BIG-IP 錯誤訊息

如果 BIG-IP 錯誤訊息出現在 Microsoft Entra 預先驗證之後,則問題可能與 Microsoft Entra ID 與 BIG-IP SSO 有關。

  1. 瀏覽至 [存取原則 > 概觀]
  2. 選取 [存取報告]
  3. 執行過去一小時的報告。
  4. 檢閱記錄以取得線索。

針對工作階段使用 [檢視工作階段] 變數連結,協助瞭解 APM 是否收到預期的 Microsoft Entra 宣告。

沒有 BIG-IP 錯誤訊息

如果沒有出現 BIG-IP 錯誤訊息,則問題可能與後端要求或 BIG-IP 至應用程式的 SSO 有關。

  1. 瀏覽至 [存取原則 > 概觀]
  2. 選取 [作用中工作階段]
  3. 選取使用中工作階段連結。

使用 [檢視變數]連結來協助判斷 SSO 問題,特別是當 BIG-IP APM 未取得正確的屬性時。

深入了解: