Share via


在您所開發的行動應用程式中支援單一登錄和應用程式保護原則

單一登錄 (SSO) 是 Microsoft 身分識別平台 和 Microsoft Entra 識別碼的重要供應專案,為應用程式的使用者提供簡單且安全的登入。 此外,應用程式保護原則 (APP) 也支援可保護用戶數據安全的重要安全策略。 這些功能可一起啟用應用程式數據的安全使用者登入和管理。

本文說明 SSO 和 APP 為何很重要,並提供建置支援這些功能的行動應用程式的高階指引。 這適用於手機和平板電腦應用程式。 如果您是想要跨組織 Microsoft Entra 租使用者部署 SSO 的 IT 系統管理員,請參閱規劃 單一登錄部署的指引

關於單一登錄和應用程式保護原則

單一登錄 (SSO) 可讓使用者登入一次,並取得其他應用程式的存取權,而不需要重新輸入認證。 這可讓存取應用程式變得更容易,並不需要使用者記住冗長的使用者名稱和密碼清單。 在您的應用程式中實作它可讓您更輕鬆地存取和使用您的應用程式。

此外,在您的應用程式中啟用單一登錄可解除鎖定新式驗證隨附的新驗證機制,例如 無密碼登入。 使用者名稱和密碼是針對應用程式最熱門的攻擊媒介之一,而且啟用 SSO 可讓您強制執行條件式存取或無密碼登入來降低此風險,以新增額外的安全性或依賴更安全的驗證機制。 最後,啟用單一登錄也會啟用 單一註銷。在將用於共用裝置的工作應用程式這類情況下,這非常有用。

應用程式防護 原則 (APP) 可確保組織的數據保持安全且包含。 它們可讓公司管理及保護應用程式內的數據,並允許控制誰可以存取應用程式及其數據。 實作應用程式保護原則可讓應用程式將用戶連線到受條件式存取原則保護的資源,並安全地將數據傳送至其他受保護的應用程式。 應用程式保護原則解除鎖定的案例包括要求 PIN 開啟應用程式、控制應用程式之間的數據共用,以及防止公司應用程式數據儲存到個人儲存位置。

實作單一登錄

我們建議使用下列專案,讓您的應用程式能夠利用單一登錄。

使用 Microsoft 驗證連結庫 (MSAL)

在應用程式中實作單一登入的最佳方式是使用 Microsoft 驗證連結庫 (MSAL) 。 藉由使用 MSAL,您可以使用最少的程式代碼和 API 呼叫,將驗證新增至應用程式、取得 Microsoft 身分識別平台 的完整功能,並讓 Microsoft 處理安全驗證解決方案的維護。 根據預設,MSAL 會新增應用程式的 SSO 支援。 此外,如果您也打算實作應用程式保護原則,則使用 MSAL 是必要條件。

注意

您可以設定 MSAL 使用內嵌 Web 檢視。 這可防止單一登錄。 使用預設行為(也就是系統網頁瀏覽器)以確保 SSO 能夠運作。

針對 iOS 應用程式,我們有一個 快速入門 ,說明如何使用 MSAL 設定登入,以及 針對各種 SSO 案例設定 MSAL 的指引。

針對Android應用程式,我們有一個快速入門,說明如何使用MSAL設定登入,以及如何使用MSAL在Android上啟用跨應用程式 SSO 的指引

使用系統網頁瀏覽器

互動式驗證需要網頁瀏覽器。 對於使用 MSAL 以外的新式驗證連結庫的行動應用程式(也就是其他 OpenID 連線 或 SAML 連結庫),或如果您實作自己的驗證程式碼,您應該使用系統瀏覽器作為驗證介面來啟用 SSO。

Google 有在 Android 應用程式中執行這項操作的指引: Chrome 自定義索引卷標 - Google Chrome

Apple 有在 iOS 應用程式中執行這項操作的指引: 透過 Web 服務驗證使用者 |Apple Developer 檔

提示

Apple 裝置的 SSO 外掛程式允許使用 Intune 在受管理裝置上使用內嵌 Web 檢視的 iOS 應用程式 SSO。 我們建議 MSAL 和系統瀏覽器作為針對所有使用者啟用 SSO 的應用程式開發最佳選項,但在某些情況下不允許 SSO。

啟用應用程式保護原則

若要開啟應用程式保護原則,請使用 Microsoft 驗證連結庫 (MSAL) 。 MSAL 是 Microsoft 身分識別平台 的驗證和授權連結庫,且已開發 Intune SDK 以與其搭配運作。

此外,您必須使用訊息代理程式應用程式進行驗證。 訊息代理程式要求應用程式提供應用程式和裝置資訊,以確保應用程式合規性。 iOS 使用者將使用 Microsoft Authenticator 應用程式,而 Android 使用者將使用 Microsoft Authenticator 應用程式或 公司入口網站 應用程式進行代理驗證。 根據預設,MSAL 會使用訊息代理程式作為完成驗證要求的第一個選項,因此在使用 MSAL 現成的 MSAL 時,會自動為您的應用程式啟用驗證。

最後, 將 Intune SDK 新增至您的應用程式,以啟用應用程式保護原則。 大部分的 SDK 都遵循攔截模型,並會自動套用應用程式保護原則,以判斷應用程式是否允許採取動作。 您也可以手動呼叫 API,以告知應用程式是否有特定動作的限制。