共用方式為


教學課程:針對標頭式和 LDAP 單一登入設定 F5 BIG-IP 簡單按鈕

在本文中,您可以使用 F5 BIG-IP 簡易按鈕引導式設定 16.1,瞭解如何使用 Microsoft Entra ID 來保護標頭和 LDAP 型應用程式。 將 BIG-IP 與 Microsoft Entra ID 整合可提供許多優點:

若要深入瞭解優點,請參閱 F5 BIG-IP 和 Microsoft Entra 整合

案例描述

此案例著重於傳統舊版應用程式,使用來自LDAP目錄屬性的 HTTP 授權標頭 來管理受保護內容的存取權。

由於該應用程式為舊版,所以缺少可支援與 Microsoft Entra ID 直接整合的新式通訊協定。 您可以將應用程式現代化,但成本高昂、需要規劃,而且會帶來潛在停機時間的風險。 您可以改為使用 F5 BIG-IP 應用程式傳遞控制器 (ADC),透過通訊協定轉換來橋接舊版應用程式與新式識別碼控制平面之間的差距。

讓應用程式擁有 BIG-IP 可使服務與 Microsoft Entra 預先驗證和標頭型 SSO 重疊,改善應用程式的整體安全性狀態。

案例架構

適用於此案例的安全混合式存取解決方案具有:

  • 應用程式 - BIG-IP 已發布的服務受到 Microsoft Entra ID 安全混合式存取(SHA)的保護
  • Microsoft Entra ID - 安全性判斷提示標記語言 (SAML) 識別提供者 (IdP) 會驗證使用者認證、條件式存取和 SAML 型 SSO 到 BIG-IP。 Microsoft Entra ID 透過 SSO 向 BIG-IP 提供必要的工作階段屬性。
  • HR 系統 - 以 LDAP 為基礎的員工資料庫作為應用程式許可權的真相來源
  • BIG-IP - 作為應用程式的反向代理和 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 ID 預先對使用者進行驗證,並套用強制執行的條件式存取原則
  4. 使用者會重新導向至 BIG-IP (SAML SP),並使用已發行的 SAML 權杖來執行 SSO
  5. BIG-IP 向 LDAP 型 HR 系統要求更多屬性
  6. BIG-IP 會將 Microsoft Entra ID 和 HR 系統屬性插入,作為應用程式要求中的標頭
  7. 應用程式會使用擴充的工作階段權限來授與存取權

必要條件

您不需要先前有 BIG-IP 體驗,但您需要:

  • Azure 免費帳戶或較高層級的訂用帳戶
  • 在 Azure 中執行 BIG-IP 或部署 BIG-IP Virtual Edition(VE)
  • 下列任一個 F5 BIG-IP 授權:
    • F5 BIG-IP® Best 套件組合
    • F5 BIG-IP Access Policy Manager™ (APM) 獨立授權
    • BIG-IP F5 BIG-IP® 本機流量管理員™ (LTM) 上的 F5 BIG-IP 存取原則管理員™ (APM) 附加元件授權
    • 90 天 BIG-IP 產品 免費試用
  • 從內部部署目錄同步使用者身分識別到 Microsoft Entra ID
  • 下列角色其中之一:雲端應用程式管理員或應用程式管理員。
  • 透過 HTTPS 發佈服務的 SSL Web 憑證 ,或在測試時使用預設 BIG-IP 憑證
  • 標頭型應用程式,或 設定簡單的 IIS 標頭應用程式 進行測試
  • 支援 LDAP的 使用者目錄,例如 Windows Active Directory 輕量型目錄服務 (AD LDS)、OpenLDAP 等等。

BIG-IP 設定

本教學課程使用引導式設定 16.1 搭配簡易按鈕範本。 使用 [簡易] 按鈕時,系統管理員不會在 Microsoft Entra ID 與 BIG-IP 之間來回切換,以啟用 SHA 服務。 部署和原則管理會在 APM 引導式設定精靈與 Microsoft Graph 之間進行處理。 BIG-IP APM 與 Microsoft Entra ID 之間的這項整合可確保應用程式支援身分識別同盟、SSO 和 Microsoft Entra 條件式存取,以減少系統管理額外負荷。

注意

將本指南中的範例字串或值取代為您環境的字串或值。

註冊簡單按鈕

用戶端或服務在存取 Microsoft Graph 之前,必須先通過 Microsoft身分識別平臺的信任。

第一個步驟會建立租用戶應用程式註冊,以授權 輕鬆按鈕 存取 Graph。 透過這些權限,BIG-IP 可以推送組態,以建立SAML SP 實例與已發行應用程式的之間的信任,並將 Microsoft Entra ID 作為 SAML IdP。

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

  2. 流覽至 Entra ID>應用程式註冊>新增註冊

  3. 輸入應用程式的顯示名稱。 例如,F5 BIG-IP 簡單按鈕。

  4. 指定誰可以使用應用程式 > [僅此組織目錄中的帳戶]

  5. 選取 [註冊]。

  6. 瀏覽至 API 許可權 ,並授權下列Microsoft Graph 應用程式權限

    • Application.Read.All(應用程式.讀取.全部)
    • Application.ReadWrite.All
    • Application.ReadWrite.OwnedBy
    • Directory.Read.All (允許讀取所有目錄的權限)
    • Group.Read.All (群組.讀取.全部)
    • 身份高風險使用者讀取全部
    • 讀取所有政策 (Policy.Read.All)
    • 政策.讀寫.應用程式設定
    • 策略.讀取寫入.條件式存取
    • 使用者.Read.All
  7. 為您的組織授與管理員同意。

  8. [憑證與密碼] 上,產生新的 客戶端密碼。 記下此祕密。

  9. 概觀 上,記下 用戶端 ID租用戶 ID

設定 [簡易] 按鈕

啟動 APM 引導式配置 以開啟 一鍵式 範本。

  1. 瀏覽至 [存取]>[引導式設定]>[Microsoft 整合],然後選取 [Microsoft Entra 應用程式]

  2. 檢閱步驟清單,然後選取 [下一步]

  3. 若要發佈您的應用程式,請遵循下列步驟。

    引導式設定上設定流程的螢幕快照。

組態屬性

[設定屬性] 索引標籤會建立 BIG-IP 應用程式設定和 SSO 物件。 [Azure 服務帳戶詳細資料] 區段代表您稍早在 Microsoft Entra 租用戶中註冊的用戶端,作為應用程式。 這些設定可讓 BIG-IP OAuth 用戶端在租用戶中註冊 SAML SP,並使用您要手動設定的 SSO 屬性。 簡單按鈕會為每個針對 SHA 發佈並啟用的 BIG-IP 服務執行此動作。

這其中有些設定是全域的,因而可重複用來發佈更多應用程式,以減少部署時間和精力。

  1. 輸入唯一的 組態名稱 ,讓系統管理員可以區分簡易按鈕組態。
  2. 啟用 [單一登入 (SSO) 和 HTTP 標頭]
  3. 輸入您在租戶中註冊簡易按鈕客戶端時記下的 租戶標識碼客戶端識別碼客戶端密碼
  4. 確認 BIG-IP 可以連線至您的租用戶。
  5. 選取 [下一步]

服務提供者

服務提供者設定定義透過受 SHA 保護的應用程式 SAML SP 執行個體屬性。

  1. 輸入 Host,這是要保護之應用程式的公用完整功能變數名稱 (FQDN)。

  2. 輸入 [實體標識碼],Microsoft Entra ID 使用此識別碼來識別要求權杖的 SAML SP。 使用可選的 安全性設定 來指定 Microsoft Entra ID 是否加密發行的 SAML 斷言。 加密 Microsoft Entra ID 與 BIG-IP APM 之間的判斷提示,可確保內容權杖無法攔截,也無法危害個人或公司資料。

  3. 從 [判斷提示解密私密金鑰] 清單中,選取 [新建]

    [安全性設定] 上 [判斷提示解密私鑰] 底下的 [建立新] 選項螢幕快照。

  4. 選取 [確定]。 [匯入 SSL 憑證和金鑰] 對話方塊會在新的索引標籤中開啟。

  5. 選取 [PKCS 12 (IIS)] 以入您的憑證和私密金鑰。 佈建之後,關閉瀏覽器索引標籤以返回主要索引標籤。

    匯入類型、憑證和金鑰名稱、憑證金鑰來源和密碼項目的螢幕快照

  6. 核取 [啟用加密的判斷提示]

  7. 如果您已啟用加密,從 [判斷提示解密私密金鑰] 清單中選取您的憑證。 BIG-IP APM 會使用此憑證私密金鑰來解密Microsoft Entra 判斷提示。

  8. 如果您已啟用加密,從 [判斷提示解密憑證] 清單中選取您的憑證。 BIG-IP 會將此憑證上傳至 Microsoft Entra ID,將發行的 SAML 判斷提示加密。

    「安全性設定」中「斷言解密私鑰」和「斷言解密憑證」項目的螢幕快照。

Microsoft Entra 識別碼

本節包含可讓您在 Microsoft Entra 租用戶中手動設定新 BIG-IP SAML 應用程式的屬性。 [簡易按鈕] 具有適用於 Oracle PeopleSoft、Oracle E-business Suite、Oracle JD Edwards、SAP ERP 的應用程式範本,以及適用於其他應用程式的 SHA 範本。

在此案例中,選取 [F5 BIG-IP APM Microsoft Entra ID Integration > Add]。

Azure 設定

  1. 輸入應用程式的 顯示名稱,由 BIG-IP 在您的 Microsoft Entra 租使用者中建立,以及使用者在 MyApps 入口 上看到的圖示。

  2. 請勿填寫 登入 URL(可選)

  3. 若要找出您匯入的憑證,請選取簽署密鑰簽署憑證旁的 [重新整理] 圖示。

  4. 在 [簽署金鑰複雜密碼] 中,輸入憑證密碼。

  5. 啟用 簽署選項(選擇性),以確保 BIG-IP 接受由 Microsoft Entra ID 簽署的令牌和宣告。

    SAML 簽署憑證中的簽署金鑰、簽署憑證和簽署金鑰口令條目的螢幕快照。

  6. 使用者和使用者群組 會從您的 Microsoft Entra 租戶中動態查詢,並授權存取應用程式。 新增用於測試的使用者或群組,否則存取會被拒絕。

    [使用者和使用者群組] 上 [新增] 選項的螢幕快照。

使用者屬性與宣告

使用者進行驗證時,Microsoft Entra ID 會發出 SAML 權杖,其中包含一組可唯一識別使用者的預設宣告和屬性。 [使用者屬性與宣告] 索引標籤會顯示新應用程式需要發出的預設宣告。 其也可讓您設定更多宣告。

針對此範例,包含一個以上的屬性:

  1. 宣告名稱輸入employeeid

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

    [用戶屬性及宣告] 中 [其他宣告] 下的 employeeid 值的截圖。

其他使用者屬性

在 [其他使用者屬性] 索引標籤上,您可以針對分散式系統 (例如 Oracle、SAP 及其他需要將屬性儲存於其他目錄的 JAVA 型實作) 啟用工作階段增強功能。 從 LDAP 來源擷取的屬性可以插入,作為其他 SSO 標頭,以根據角色、合作夥伴識別碼等來控制存取權限。

  1. 啟用 [進階設定] 選項。

  2. 核取 [LDAP 屬性] 核取方塊。

  3. 在 [選擇驗證伺服器] 中,選取 [ 新建]。

  4. 視您的設定而定,請選取 [使用集區] 或 [直接] 伺服器連接模式以提供目標 LDAP 服務的 [伺服器位址]。 如果使用單一 LDAP 伺服器,則請選取 [直接]

  5. 針對 [服務埠 ] 輸入 389、636(安全),或 LDAP 服務使用的另一個埠。

  6. 針對 基本搜尋 DN,請輸入包含用於LDAP服務查詢的APM驗證帳戶的目標位置的辨別名稱。

    LDAP 伺服器屬性條目在[其他使用者屬性]上的螢幕快照。

  7. 針對 [搜尋 DN ] 輸入位置的辨別名稱,其中包含 APM 透過 LDAP 查詢的使用者帳戶物件。

  8. 將這兩個成員資格選項設定為 [無],並新增必須從 LDAP 目錄傳回的使用者物件屬性名稱。 在此案例中: eventroles

    LDAP 查詢屬性項目的螢幕快照。

條件式存取原則

條件式存取原則會在 Microsoft Entra 預先驗證後強制執行,以根據裝置、應用程式、位置和風險訊號來控制存取。

[ 可用的原則 ] 檢視會列出不包含使用者動作的條件式存取原則。

[ 選取的原則 ] 檢視會顯示以所有資源為目標的原則。 這些原則無法取消選取或移至「可用的原則」清單,因為這些會在租用戶層級強制執行。

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

  1. 在 [ 可用的原則] 列表中,選取原則。

  2. 選取向右箭號,然後將其移至 [選取的原則] 清單。

    注意

    選取的原則已核取 [包含] 或 [排除] 選項。 如果同時核取這兩個選項,則不會強制執行選取的原則。

    [條件式存取原則] 中 [選擇的原則] 下的 [已排除原則] 螢幕快照。

    注意

    當您一開始選取此索引標籤時,會列舉政策清單一次。使用 [ 重新整理 ] 按鈕手動強制精靈查詢您的租戶。 部署應用程式時會出現此按鈕。

虛擬伺服器屬性

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

  1. 輸入 目的地位址,BIG-IP 可用來接收用戶端流量的可用IPv4/IPv6 位址。 DNS 中應該會有對應的記錄,讓用戶端能夠將 BIG-IP 已發佈應用程式的外部 URL 解析為此 IP,而非應用程式。 使用測試 PC localhost DNS 進行測試是可接受的。

  2. 針對 [服務連接埠] 輸入 443 和 HTTPS。

  3. 勾選 啟用重新導向埠,然後輸入 重新導向埠 以將傳入的 HTTP 用戶端流量重新導向至 HTTPS。

  4. 用戶端 SSL 設定檔會啟用 HTTPS 的虛擬伺服器,因此用戶端連線會透過傳輸層安全性 (TLS) 加密。 選取您建立的 用戶端 SSL 設定檔 ,或在測試時保留預設值。

    [虛擬伺服器屬性] 中 [一般屬性] 下的 [目的地位址]、[服務埠] 和 [常見項目] 的螢幕截圖。

集區屬性

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

  1. 從 [選取集區] 中選擇。 建立新集區,或選取一個。

  2. 選擇 [負載平衡方法],例如循環配置資源。

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

    [集區屬性] 上[應用程式集區]底下的 [IP 位址/節點名稱]和[連接埠條目]螢幕快照。

注意

我們的後端應用程式位於 HTTP 連接埠 80 上。 如果您使用的是 HTTPS,請切換至 443。

單一登入和 HTTP 標頭

啟用 SSO 可讓使用者存取 BIG-IP 已發佈的服務,而不需輸入認證。 [簡單按鈕精靈] 支援 Kerberos、OAuth 持有人和 HTTP 授權標頭以進行 SSO。

使用下列清單來設定選項。

  • 標頭作業: 插入

  • 標頭名稱: upn

  • 標頭值: %{session.saml.last.identity}

  • 標頭作業: 插入

  • 標頭名稱: employeeid

  • 標頭值: %{session.saml.last.attr.name.employeeid}

  • 標頭作業: 插入

  • 標頭名稱: eventroles

  • 標頭值: %{session.ldap.last.attr.eventroles}

    SSO 標頭和 HTTP 標頭下 SSO 標頭項目的螢幕快照。

注意

大括弧內的 APM 工作階段變數會區分大小寫。 例如,如果您輸入 OrclGUID,且 Microsoft Entra 屬性名稱為 orclguid,就會發生屬性對應失敗。

工作階段管理設定

BIG-IP 工作階段管理設定會定義使用者工作階段終止或允許其繼續的條件、使用者和 IP 位址的限制,以及對應的使用者資訊。 如需這些設定的詳細資訊,請參閱 F5 文章 K18390492:安全性 | BIG-IP APM 作業指南

未涵蓋的內容是單一登出 (SLO) 功能,可確保在使用者登出時終止 IdP、BIG-IP 和使用者代理程式之間的工作階段。當您的 [簡易] 按鈕在您的 Microsoft Entra 租用戶中具現化 SAML 應用程式時,它會將 APM SLO 端點填入登出 URL。 從 Microsoft Entra 我的應用程式入口網站起始的 IdP 起始登出會終止 BIG-IP 與用戶端之間的工作階段。

已發佈應用程式的 SAML 同盟中繼資料會從您的租用戶匯入,該資料向 APM 提供適用於 Microsoft Entra ID 的 SAML 登出端點。 此動作可確保 SP 起始的登出會終止用戶端與 Microsoft Entra ID 之間的工作階段。 APM 需要知道使用者何時登出應用程式。

如果使用 BIG-IP Webtop 入口網站來存取已發佈的應用程式,則 APM 會處理登出程序,以呼叫 Microsoft Entra 登出端點。 但是,請考慮不使用 BIG-IP Webtop 入口網站的情況。 使用者無法指示 APM 進行登出。即使使用者登出應用程式,BIG-IP 也毫無警示。 因此,請考慮由 SP 起始的登出,以確保工作階段安全地終止。 您可以將 SLO 函式新增至應用程式 [登出] 按鈕,以便將用戶端重新導向至 Microsoft Entra SAML 或 BIG-IP 登出端點。 您租使用者的 SAML 註銷端點 URL 位於 應用程式註冊 > 端點中。

如果您無法對應用程式進行變更,則考慮讓 BIG-IP 接聽應用程式登出呼叫,並在偵測到要求時讓其觸發 SLO。 請參閱 Oracle PeopleSoft SLO 指引 ,以瞭解 iRules BIG-IP。 如需使用 BIG-IP iRules 的詳細資訊,請參閱:

摘要

這最後一個步驟提供您的設定明細。

選取 [部署] 以認可設定,並確認應用程式位於企業應用程式的租用戶清單中。

您的應用程式是透過 SHA 發行和存取的,可透過 URL 或 Microsoft 應用程式入口網站。 為了提高安全性,使用此模式的組織可以封鎖對應用程式的直接存取。 此動作會強制透過 BIG-IP 的嚴格路徑。

下一步

從瀏覽器,在 Microsoft MyApps 入口網站 中,連線到應用程式外部 URL,或選取應用程式圖示。 向 Microsoft Entra ID 進行驗證之後,系統會將您重新導向至應用程式的 BIG-IP 虛擬伺服器,並透過 SSO 登入。

為了提高安全性,使用此模式的組織可以封鎖對應用程式的直接存取。 此動作會強制透過 BIG-IP 的嚴格路徑。

進階部署

引導式設定範本缺乏達成特定需求的彈性。

在 BIG-IP 中,您可以停用引導式設定 嚴格管理模式。 雖然您大部分的設定都是透過精靈型範本自動進行,但您接著可以手動變更設定。

針對您的應用程式設定,您可以流覽至 [ 存取 > 引導式 設定],然後選取數據列最右邊的小 掛鎖 圖示。

掛鎖選項的螢幕快照。

此時,無法再透過精靈 UI 進行變更,但會解除鎖定與應用程式已發佈執行個體相關聯的所有 BIG-IP 物件,以進行直接管理。

注意

重新啟用 strict 模式並部署設定,會覆寫在引導式設定 UI 之外執行的任何設定。 我們建議用於生產服務的進階設定方法。

疑難排解

BIG-IP 記錄

BIG-IP 記錄有助於隔離與連線能力、SSO、原則違規或變數對應設定錯誤有關的問題。

若要進行疑難排解,您可以提高記錄詳細資訊層級。

  1. 導覽至 [存取原則] > [概觀] > [事件記錄檔] > [設定]
  2. 選取已發佈應用程式的資料列,然後選取 [編輯] > [存取系統記錄檔]
  3. 從 SSO 清單中,選取 [ 偵錯],然後選取 [確定]。

重現您的問題,然後檢查記錄,但在完成時還原此設定。 詳細資訊模式會產生大量資料。

BIG-IP 錯誤頁面

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

  1. 導覽至 [存取] > [概觀] > [存取報告]
  2. 執行過去一小時的報告,以查看記錄是否提供任何線索。
  3. 使用您會話中的 檢視變數 連結,來瞭解 APM 是否從 Microsoft Entra ID 收到預期的認證宣告。

後端要求

如果未出現錯誤頁面,則問題可能與後端要求有關,或與從 BIG-IP 到應用程式的 SSO 有關。

  1. 導覽至 [存取原則] > [概觀] > [作用中工作階段],然後選取作用中工作階段的連結。
  2. 若要協助查明問題根本原因,請使用 檢視變數 連結,特別是在 BIG-IP APM 無法從 Microsoft Entra ID 或其他來源取得正確屬性時。

驗證 APM 服務帳戶

若要驗證 LDAP 查詢的 APM 服務帳戶,請由 BIG-IP Bash 殼層中使用下列命令。 確認使用者物件的驗證和查詢。

ldapsearch -xLLL -H 'ldap://192.168.0.58' -b "CN=partners,dc=contoso,dc=lds" -s sub -D "CN=f5-apm,CN=partners,DC=contoso,DC=lds" -w 'P@55w0rd!' "(cn=testuser)"

如需詳細資訊,請參閱 F5 文章 K11072:設定 Active Directory 的 LDAP 遠端驗證。 您可以使用 BIG-IP 參考數據表來協助診斷 AskF5 檔 LDAP 查詢中的 LDAP 相關問題。