在成功完成組態設定的情況下,造訪 AD FS 聯盟應用程式 Web 入口網站的使用者可以選取其驗證方法。您可以透過設定 AD FS,讓桌面平台使用者由 AD FS 驗證,並將行動裝置使用者重新導向至 Omnissa Access 進行驗證,以此自動化這項選擇。
依照下列程序實作行動裝置信任 (MainUseCases.md)。透過此使用案例,您可以搭配 Workspace ONE UEM,運用 Omnissa Access 所提供的獨特行動裝置管理功能。桌面平台使用者可以繼續使用其慣用的現有 AD FS 驗證工作流程。
此使用案例適用於透過應用程式入口網站 (例如 Office 365 的 portal.office.com) 直接登入 AD FS 聯盟應用程式的使用者。當使用者以此方式啟動 SP 起始流程時,AD FS 會根據使用者的裝置類型,將驗證要求路由至適當的身分識別提供者。
- 如果使用者從桌上型電腦登入,AD FS 會作為身分識別提供者處理驗證要求。對桌面平台使用者而言,登入體驗維持不變,仍使用其熟悉的 AD FS 認證登入應用程式。
- 如果使用者從行動裝置登入,AD FS 會將驗證要求轉送至 Omnissa Access,作為受信任的身分識別提供者 (或宣告提供者)。Omnissa Access 會驗證使用者的認證,而 Workspace ONE UEM 則會根據現行的裝置狀態原則,管理使用者對該應用程式的存取。
**附註:**下列程序會使用 AD FS Web 主題來執行 HRD 頁面,而該頁面中包含行動裝置重新導向程式碼。若您的信賴憑證者僅包含單一宣告提供者,則 HRD 頁面 (以及其中的程式碼) 不會執行。
如需關於 SP 起始驗證流程的詳細資訊,請參閱 IdP 起始與 SP 起始驗證流程。
先決條件
依照將 AD FS 聯盟應用程式與 Workspace ONE Intelligent Hub 整合一節中的程序進行操作。
程序
-
以完整系統管理員權限登入 AD FS 伺服器。
-
以管理員身分執行 PowerShell。
-
輸入下列 cmdlet 以建立工作資料夾。
mkdir c:\myscripts -
匯出預設 AD FS Web 主題。
Export-AdfsWebTheme –Name "Default" –DirectoryPath c:\myscripts![[命令] 視窗的螢幕擷取畫面,其中顯示 [匯出命令] 詳細資料 [命令] 視窗的螢幕擷取畫面,其中顯示 [匯出命令] 詳細資料](images/GUID-AA995F9B-B36F-4597-923E-2BA26EB3EE5C-low.png)
匯出 cmdlet 會在
c:\myscripts\script資料夾中建立onload.js檔。若要根據使用者裝置類型指定驗證選項,請修改此 JavaScript 檔案。 -
在 Notepad++ 等文字編輯器中開啟
C:\myscripts\script\onload.js,並將下列 JavaScript 程式碼新增至檔案開頭。依下列說明替換程式碼中的預留位置值。
預留位置值 AD FS 4.0 替換值 AD FS 3.0 替換值 {AccessTenant} Omnissa Access 服務的完整網域名稱 (FQDN) Omnissa Access 服務的 FQDN {AD FS claims provider} 'AD Authority' 'http://{ADFSdomain}/adfs/services/trust' (其中 {ADFSdomain} 是 AD FS 伺服器的 FQDN) var myCheckHRD = document.getElementById('hrdArea'); if (myCheckHRD) { // redirect mobile traffic to Workspace ONE if (navigator.userAgent.match(/iPad|iPhone|Android|Windows Phone/i) != null) { HRD.selection('https://{AccessTenant}/SAAS/API/1.0/GET/metadata/idp.xml'); } // ADDITIONAL LOGIC FOR iPadOS AND iOS 13 iPad DEVICES else if (navigator.userAgent.match(/Macintosh/i) != null) { if(navigator.maxTouchPoints > 2) { HRD.selection('https://{AccessTenant}/SAAS/API/1.0/GET/metadata/idp.xml'); } else { HRD.selection('{AD FS claims provider}'); } } // else authenticate with local AD claims provider else { HRD.selection('{AD FS claims provider}'); } // hide HRD selector from user var hrdui = document.getElementById("bySelection"); hrdui.style.display = "none"; }
此程式碼會將 Omnissa Access 服務指定為從行動裝置登入之使用者的驗證選項,並將 AD FS 指定為從其他所有裝置登入之使用者的驗證選項。同時,也會指示 AD FS 自動路由驗證要求,而不再提示使用者進行選擇。
**附註:**從 iOS 13 起,Apple iPad 裝置的預設使用者代理程式會顯示為 macOS,而非 iPad。所有仰賴使用者代理程式資訊來判斷裝置類型的服務都必須更新。此 JavaScript 程式碼已包含額外邏輯,以因應 Apple 目前的 iOS 產品 (包括 iPadOS)。Apple 未來版本可能變更「ADDITIONAL LOGIC for iPadOS and iOS 13 iPad DEVICES」的行為;若行為有所變更,此程式碼指令碼可能也需要相應調整以反映該變更。
-
將更新後的
onload.js檔案放入c:\myscripts\script資料夾中,並加以覆寫原有檔案。接下來,建立一個參考此更新後
onload.js檔案的 AD FS Web 主題,以自訂 AD FS 登入頁面。 -
在 PowerShell 中,建立 AD FS Web 主題。
New-AdfsWebTheme –Name "WS1ACCESS" –SourceName "Default" -
匯入更新的
onload.js檔案。Set-AdfsWebTheme -TargetName WS1ACCESS -AdditionalFileResource @{Uri='/adfs/portal/script/onload.js';path="c:\myscripts\script\onload.js"} -
啟用新的 Web 主題。
若要將個別 AD FS 應用程式的行動流量重新導向至行動裝置:
Set-AdfsRelyingPartyWebTheme -TargetRelyingPartyName "Microsoft Office 365 Identity Platform" -SourceWebThemeName "WS1ACCESS"若要將所有 AD FS 應用程式的行動流量重新導向至行動裝置:
Set-AdfsWebConfig -ActiveThemeName "WS1ACCESS" -
若要儲存變更,請重新啟動 AD FS 服務。
Restart-Service adfssrv**附註:**若要還原為預設的 AD FS Web 主題,請輸入下列 cmdlet:
Set-AdfsWebConfig -ActiveThemeName "Default"iOS 版 AD FS 驗證序列

Android 版 AD FS 驗證序列

此頁面對您有幫助嗎?