適用於 Android 的 Intune App SDK - 規劃整合

Android 版 Microsoft Intune App SDK 可讓您將Intune應用程式保護原則 (也稱為 MAM 原則) 納入原生 Java/Kotlin Android 應用程式。 Intune 管理的應用程式是與 Intune App SDK 整合的應用程式。 當 Intune 主動管理應用程式時,Intune 系統管理員可以輕鬆地將應用程式保護原則部署到 Intune 管理的應用程式。

階段 1:規劃整合

本指南適用於希望在其現有 Android 應用程式內新增 Microsoft Intune 應用程式保護原則支援的 Android 開發人員。

階段目標

  • 了解哪些應用程式保護原則設定適用於 Android,以及這些原則如何在應用程式內運作。
  • 瞭解 SDK 整合過程中的關鍵決策點,並規劃應用程式的整合。
  • 了解整合 SDK 的應用程式需求。
  • 建立測試 Intune 租用戶並設定 Android 應用程式防護原則。

了解 MAM

開始將 Intune 應用程式 SDK 整合至 Android 應用程式之前,請花一點時間熟悉 Microsoft Intune 的行動應用程式管理解決方案:

注意事項

某些 Android 應用程式保護原則設定需要特定程式碼以支援。 如需詳細資訊,請參閱 階段 7:應用程式參與功能

SDK 整合的關鍵決策

我需要向 Microsoft 身分識別平台註冊我的應用程式嗎?

是,所有與 Intune SDK 整合的應用程式都必須向 Microsoft 身分識別平台註冊。 請遵循快速入門中的步驟:在 Microsoft 身分識別平台中註冊應用程式 - Microsoft 身分識別平台

我可以存取應用程式的原始程式碼嗎?

如果您無法存取應用程式的原始程式碼,且只能存取 .apk 或 .aab 格式的編譯應用程式,您將無法將 SDK 整合至您的應用程式。 不過,您的應用程式可能仍與 Intune 應用程式防護原則相容。 如需詳細資訊,請參閱 Android 版 App Wrapping Tool

我的應用程式是否應該整合 Microsoft 驗證程式庫 (MSAL) ?

請參閱 Microsoft 驗證程式庫 (MSAL) 概觀 ,以判斷您的應用程式是否需要整合 MSAL。 大部分應用程式必須先整合 MSAL,才能整合 Intune SDK。

只有當下列所有條件成立時,您的應用程式才能跳過整合 MSAL:

  • 您的應用程式沒有或不需要互動式登入和登出終端使用者體驗。
  • 您的應用程式不支援多個帳戶同時登入。
  • 您的應用程式不需要支援非 Intune 帳戶。
  • 您的應用程式不會授與受條件式存取所保護之任何資源的存取權。

如果您的應用程式符合 上述所有條件 且未整合 MSAL,它仍然可以受到應用程式保護原則的保護,儘管沒有未受管理使用的選項。 如需詳細資訊,請參閱預設註冊。

如需整合 MSAL 的指示,以及應用程式內身分識別案例的其他詳細資料,請參閱階段 2:MSAL 先決條件

我的應用程式是單一身分識別還是多重身分識別?

如果沒有 Intune 應用程式保護原則支援,您的應用程式如何處理使用者驗證和帳戶?

  • 您的應用程式目前是否只允許登入單一帳戶? 您的應用程式是否在允許其他帳戶登入之前明確強制登入的帳戶登出,並刪除先前帳戶的資料? 如果是,您的應用程式是 單一身分識別

  • 即使已有其他帳戶登入,您的應用程式目前是否允許第二個帳戶登入? 您的應用程式是否在共用畫面上顯示多個帳戶的資料? 您的應用程式是否儲存多個帳戶的資料? 您的應用程式是否允許使用者在不同的登入帳戶之間切換? 如果是,您的應用程式是 多重身分識別 ,且您必須遵循 階段 5:多重身分識別此區段對您的應用程式而言是必填欄位。

即使您的應用程式是多重識別,也請依序遵循本整合指南。 最初作為單一身分進行整合和測試將有助於確保正確整合並防止公司資料最終不受保護的錯誤。

我的應用程式是否有或需要應用程式組態設定?

Android 支援適用於在 Android 企業版管理模式下部署的應用程式的特定 應用程式管理設定 。 系統管理員可以在 Microsoft Intune 系統管理中心受控 Android 企業版裝置設定這些應用程式設定原則

不論裝置管理模式為何,Intune 也支援套用至 SDK 整合型應用程式的應用程式設定。 系統管理員可以在 Microsoft Intune 系統管理中心受管理應用程式設定這些應用程式設定原則

Intune App SDK 支援這兩種類型的應用程式設定,並提供單一 API 來從這兩個通道存取設定。 如果您的應用程式已或將支援上述任一類型的應用程式設定,您必須遵循階段 6:應用程式組態

我的應用程式是否需要為資料輸入和輸出定義精細保護?

如果您的應用程式允許使用者將資料儲存至雲端服務或開啟雲端服務或裝置位置,則必須進行變更以支援增強的資料傳輸原則。 請參閱第 7 階段:應用程式參與功能關於限制應用程式與裝置或雲端儲存位置之間資料傳輸的原則

我的應用程式是否顯示包含使用者特定資訊的通知?

多重身分識別應用程式必須變更程式碼,才能正確遵守通知原則。 單一身分識別應用程式可能會想要變更程式碼,以便此通知原則不會封鎖其應用程式的 100% 通知。 請參閱第 7 階段:應用程式參與功能關於限制通知內內容的原則

我的應用程式是否支援 Android 的備份與還原功能?

Android 支援 備份與還原 功能,以便在使用者升級到新裝置或重新安裝您的應用程式時,為使用者保留資料和個人化功能。

Intune 也支援 SDK 整合應用程式的備份和還原功能,以確保公司資料不會透過還原外洩。

如果您的應用程式支援此功能,則必須在還原期間變更程式碼以保護公司資料。 請參閱第 7 階段中的備份資料保護原則:應用程式參與功能

我的應用程式是否有應該受到條件式存取保護的資源?

條件式存取 (CA) 是一項Microsoft Entra ID功能,可用來控制Microsoft Entra資源的存取權。 Intune 系統管理員可以定義 CA 規則,只允許從 Intune 管理的裝置或應用程式存取資源。

Intune 支援兩種類型的 CA:以裝置為基礎的 CA以應用程式為基礎的 CA,也稱為應用程式保護 CA。 以裝置為基礎的 CA 會封鎖受保護資源的存取,直到整個裝置都由 Intune 管理為止。 應用程式型 CA 會封鎖受保護資源的存取權,直到特定應用程式由 Intune 應用程式保護原則管理為止。

如果您的應用程式取得任何 Microsoft Entra 存取權杖,並存取可受 CA 保護的資源,您必須遵循階段 7:應用程式參與功能中的支援應用程式保護 CA

我的應用程式是否有需要跨 Intune App SDK 顯示的 UI 保留的獨特主題?

根據預設,Intune App SDK 會根據預設主題顯示原則強制執行 UI 元件。

覆寫預設佈景主題的功能是裝飾性的,且是選擇性的。 請參閱在階段 7:應用程式參與功能提供自訂佈景主題

需求

公司入口網站應用程式

適用於 Android 的 Intune 應用程式 SDK 依賴裝置上公司入口網站應用程式的狀態來啟用應用程式防護原則。 公司入口網站會從 Intune 服務擷取應用程式防護原則。 當 SDK 整合應用程式初始化時,它會載入原則和程式碼,以從公司入口網站強制執行該原則。

注意事項

當公司入口網站應用程式不在裝置上時,整合式 SDK 應用程式的行為與不支援 Intune 應用程式保護原則的一般應用程式相同。 即使公司入口網站應用程式位於裝置上,當使用者不是應用程式保護原則的目標時,整合式 SDK 應用程式的行為也會與正常應用程式相同。

使用者不需要登入甚至啟動公司入口網站應用程式,應用程式保護原則就能正常運作。

Android 版本

注意事項

確定您的應用程式符合 Google Play 需求

SDK 完全支援 Android API 28 (Android 9.0) 到 Android API 36 (Android 16) 。 若要將 Android API 36 (Android 16) 定為目標,您必須使用 Intune App SDK v12.0.0 或更新版本。

Android 8.0 - 8.1 (API 26 到 27) 支援有限。 Android API 26 (Android 8.0) 以下不支援 公司入口網站 應用程式。 Android API 28 (Android 9.0) 以下不支援應用程式保護原則。

如果您的應用程式宣告minSdkVersion為低於 API 28 (Android 9.0) 的 API 層級,Intune App SDK 將不會封鎖未受應用程式保護原則針對的使用者的應用程式使用。

遙測

適用於 Android 的 Intune App SDK 不會控制來自您應用程式的資料收集。 公司入口網站應用程式預設會記錄系統產生的資料。 此資料會傳送至 Microsoft Intune。 根據 Microsoft 原則,Intune 不會收集任何個人資料。

提示

如果使用者選擇不傳送此資料,他們必須在公司入口網站應用程式的 [設定] 底下關閉遙測。 若要深入了解,請參閱 關閉 Microsoft 使用狀況資料收集

建立測試 Android 應用程式防護原則

示範租用戶設定

如果您還沒有公司的租用戶,您可以建立使用或不使用預生成數據的演示租用戶。 您必須註冊為 Microsoft 合作夥伴 才能存取 Microsoft CDX。 若要建立新帳戶:

  1. 瀏覽至 Microsoft CDX 租用戶建立網站,然後建立 Microsoft 365 企業版租用戶。
  2. 設定Intune以 (MDM) 啟用行動裝置管理。
  3. 建立使用者
  4. 建立群組
  5. 指派適當的授權以進行測試。

應用程式防護原則設定

在 Microsoft Intune 系統管理中心建立並指派應用程式防護原則。 除了建立應用程式保護原則之外,您也可以在 Intune 中建立並指派應用程式設定原則

在您自己的應用程式中測試應用程式保護原則設定之前,請先熟悉這些設定在其他 SDK 整合應用程式中的行為方式。

提示

如果您的應用程式未列在 Microsoft Intune 系統管理中心,您可以選取 [其他應用程式] 選項並在文字方塊中提供套件名稱,以使用原則來鎖定該應用程式。 您必須以應用程式防護原則來鎖定應用程式,並將該原則部署到使用者,才能成功測試您的整合。 即使已設定目標並部署原則,您的應用程式在成功整合 SDK 之前,也不會正確執行原則。

結束準則

  • 您是否熟悉不同的應用程式保護原則設定在 Android 應用程式中的行為方式?
  • 您是否已檢閱應用程式,並規劃了 MSAL、條件式存取、多重身分識別、應用程式組態和所有其他 SDK 功能的應用程式整合?
  • 您是否已在測試租用戶中建立 Android 應用程式保護原則?

常見問題集

為什麼 Android 上的應用程式保護原則需要公司入口網站應用程式?

Android 公司入口網站會代表裝置上所有已啟用 MAM 的應用程式,從 Intune 服務擷取並保存應用程式保護原則。 啟用 MAM 的應用程式初始化時,會從公司入口網站匯入強制執行這些原則設定的原則詳細資料和程式碼。 公司入口網站也包含程式碼,以減少向使用者顯示的驗證提示數目。 最後,公司入口網站會收集系統資料以改善 Intune 服務;如需詳細資訊,請參閱遙測

注意事項

此應用程式防護原則的公司入口網站功能是 Android 特有。

當使用不受支援裝置的使用者設定應用程式保護原則為目標時,會發生什麼情況?

在不受 Intune 應用程式保護原則支援的 Android 裝置上的使用者體驗,Intune 應用程式保護原則會視裝置的 Android OS 版本而定:

Android 作業系統版本 Google Play 行為 MAM 應用程式行為
Android 8.0 以下版本 將無法從 Google Play 下載公司入口網站應用程式。 已安裝公司入口網站的裝置將無法更新至新版本的公司入口網站。 MAM 功能不會遭到普遍封鎖。 不過,由於 SDK 整合型應用程式隨新版 SDK 一起提供,因此以 MAM 為目標的使用者將無法進入這些應用程式,因為他們無法更新公司入口網站。 當具有 MAM 原則目標且先前已登入應用程式的使用者啟動這類應用程式時,系統會提示他們升級公司入口網站。 使用者可以透過從應用程式中移除以 MAM 為目標的帳戶來緩解此行為。 如果使用者解除安裝公司入口網站,其帳戶會自動從應用程式中移除,但無法使用以 MAM 為目標的帳戶重新登入。
Android 8.x 可以從 Google Play 下載公司入口網站應用程式。 已安裝公司入口網站的裝置仍然可以更新至新版本的公司入口網站。 MAM 功能不會主動封鎖。 不過,Android 8.x 不受支援,且 MAM 功能可能無法如預期般運作。

什麼是應用程式包裝工具?

Android 應用程式開發人員有多種方式可將 Intune 功能整合至其應用程式。 除了本指南介紹的 SDK 之外,開發人員還可以使用適用於 Android 的 App Wrapping Tool。 如需 SDK 和應用程式包裝工具之間的詳細比較,請參閱為 應用程式保護原則準備企業營運應用程式

後續步驟

完成上述所有 結束準則 之後,請繼續進行 階段 2:MSAL 先決條件