教學課程:為標頭型和LDAP單一登錄設定 F5 BIG-IP Easy Button

在本文中,您可以使用 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 重疊,以改善應用程式的整體安全性狀態。

案例架構

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

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

必要條件

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

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. 以至少雲端應用程式 管理員 istrator 身分登入 Microsoft Entra 系統管理中心

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

  3. 輸入應用程式的顯示名稱。 例如,F5 BIG-IP Easy Button。

  4. 指定誰只能使用此組織目錄中的應用程式>帳戶。

  5. 選取註冊

  6. 瀏覽至 API 許可權 ,並授權下列 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
  7. 授與貴組織的系統管理員同意。

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

  9. 在 [概觀] 上,記下用戶端標識符租用戶標識符

設定簡易按鈕

起始 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. 選取 [下一步]。

    [組態屬性] 上 [一般屬性] 和 [Azure 服務帳戶詳細數據] 的項目螢幕快照。

服務提供者

服務提供者設定會定義透過 SHA 保護之應用程式的 SAML SP 實例屬性。

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

  2. 輸入 實體標識碼,Microsoft Entra ID 用來識別要求令牌的 SAML SP。

    服務提供者上主機和實體標識碼項目的螢幕快照。

使用選擇性的 Security 設定 來指定 Microsoft Entra ID 是否加密發行的 SAML 判斷提示。 加密 Microsoft Entra ID 與 BIG-IP APM 之間的判斷提示,可確保無法攔截內容令牌,也無法危害個人或公司數據。

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

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

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

  3. 選取 PKCS 12 (IIS) 以匯入您的憑證和私鑰。 布建之後,關閉瀏覽器索引標籤以返回主要索引標籤。

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

  4. 核取 [啟用加密判斷提示]。

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

  6. 如果您已啟用加密,請從 [ 判斷提示解密憑證] 列表中選取您的憑證 。 BIG-IP 會將此憑證上傳至 Microsoft Entra ID,以加密所簽發的 SAML 判斷提示。

    安全性 設定 上的判斷提示解密私鑰和判斷提示解密憑證項目的螢幕快照。

Microsoft Entra ID

本節包含屬性,可讓您在 Microsoft Entra 租使用者中手動設定新的 BIG-IP SAML 應用程式。 Easy Button 具有適用於 Oracle 人員 Soft、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. 根據您的設定,選取 [使用集區] 或 [直接伺服器] 連線 ion 模式來提供目標 LDAP 服務的 [伺服器位址]。 如果使用單一 LDAP 伺服器,請選取 [ 直接]。

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

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

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

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

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

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

條件式存取原則

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

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

[ 選取的原則 ] 檢視會顯示以所有雲端應用程式為目標的原則。 這些原則無法取消選取或移至 [可用的原則] 列表,因為它們會在租用戶層級強制執行。

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

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

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

    注意

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

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

    注意

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

虛擬伺服器屬性

虛擬伺服器是 BIG-IP 數據平面物件,由虛擬 IP 位址代表,接聽應用程式用戶端要求。 在根據原則導向之前,系統會根據與虛擬伺服器相關聯的APM配置檔處理和評估已接收的流量。

  1. 輸入目的地位址,這是 BIG-IP 可用來接收用戶端流量的可用 IPv4/IPv6 位址。 功能變數名稱伺服器 (DNS) 中應該有對應的記錄,可讓用戶端將 BIG-IP 已發布應用程式的外部 URL 解析為此 IP,而不是應用程式。 使用測試計算機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 已發布的服務,而不需要輸入認證。 簡易按鈕精靈支援 SSO 的 Kerberos、OAuth Bearer 和 HTTP 授權標頭。

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

  • 標頭作業: 插入

  • 標頭名稱: 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和使用者代理程式之間的會話在使用者註銷時終止。當 Easy Button 在您的 Microsoft Entra 租使用者中具現化 SAML 應用程式時,它會使用 APM SLO 端點填入註銷 URL。 從 Microsoft Entra 我的應用程式 入口網站起始的 IdP 起始登出會終止 BIG-IP 與客戶端之間的會話。

已發佈應用程式的 SAML 同盟元數據會從您的租用戶匯入,其會提供 APM 與 Microsoft Entra ID 的 SAML 註銷端點。 此動作可確保SP起始的註銷會終止用戶端與 Microsoft Entra識別符之間的會話。 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 人員 Soft SLO 指導方針,以瞭解 BIG-IP iRules。 如需使用 BIG-IP iRules 的詳細資訊,請參閱:

摘要

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

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

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

下一步

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

請參閱下列螢幕快照,以取得我們標頭型應用程式中插入標頭的輸出。

[我的事件上的伺服器變數] 底下的輸出值的螢幕快照。

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

進階部署

引導式組態範本缺乏達到特定需求的彈性。

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

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

掛鎖選項的螢幕快照。

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

注意

重新啟用嚴格模式並部署組態會覆寫在引導式設定 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 相關問題。