Intune适用于 Android 的应用 SDK - 了解 MSAL 先决条件
Microsoft Intune App SDK for Android 允许将Intune应用保护策略 (也称为 APP 或 MAM 策略) 合并到本机 Java/Kotlin Android 应用中。 Intune托管的应用程序是与 Intune App SDK 集成的应用程序。 当Intune主动管理应用时,Intune管理员可以轻松地将应用保护策略部署到Intune托管的应用。
注意
本指南分为几个不同的阶段。 首先查看 第 1 阶段:规划集成。
阶段 2:MSAL 先决条件
阶段Goals
- 使用 Microsoft Entra ID 注册应用程序。
- 将 MSAL 集成到 Android 应用程序中。
- 验证应用程序是否可以获取授予对受保护资源的访问权限的令牌。
背景
Microsoft身份验证库 (MSAL) 支持Microsoft Entra ID和Microsoft帐户,使应用程序能够使用 Microsoft 云。
MSAL 不特定于Intune。 Intune依赖于Microsoft Entra ID;所有Intune用户帐户都是Microsoft Entra帐户。 因此,集成 Intune App SDK 的绝大多数 Android 应用程序都需要将 MSAL 集成作为先决条件。
SDK 指南的这一阶段概述了 MSAL 集成过程,因为它与Intune相关;完整遵循链接的 MSAL 指南。
为了简化Intune应用 SDK 集成过程,强烈建议 Android 应用开发人员在下载 Intune 应用 SDK 之前完全集成并测试 MSAL。Intune应用 SDK 集成过程确实需要围绕 MSAL 令牌获取进行代码更改。 如果已确认应用的原始令牌获取实现按预期工作,则测试特定于Intune的令牌获取更改会更容易。
若要了解有关Microsoft Entra ID的详细信息,请参阅什么是Microsoft Entra ID?
若要了解有关 MSAL 的详细信息,请参阅 MSAL Wiki 和 MSAL 库列表。
将应用程序注册到 Microsoft Entra ID
在将 MSAL 集成到 Android 应用程序之前,所有应用都需要注册到 Microsoft 标识平台。 按照快速入门:在 Microsoft 标识平台 - Microsoft 标识平台 中注册应用中的步骤操作。 这会为应用程序生成 客户端 ID 。
接下来,按照说明向应用授予对Intune移动应用管理服务的访问权限。
(MSAL) 配置Microsoft身份验证库
首先,阅读 GitHub 上的 MSAL 存储库中的 MSAL 集成指南,特别是 使用 MSAL 的部分。
本指南介绍如何:
- 将 MSAL 作为依赖项添加到 Android 应用程序。
- 创建 MSAL 配置文件。
- 配置应用程序的
AndroidManifest.xml
。 - 添加代码以获取令牌。
中转身份验证
单一登录 (SSO) 允许用户仅输入一次凭据,并让这些凭据自动跨应用程序工作。 MSAL 可以跨应用套件启用 SSO;通过使用代理应用程序 (Microsoft Authenticator 或 Microsoft Intune 公司门户) ,可以跨整个设备扩展 SSO。 条件访问还需要中转身份验证。 有关中转身份验证的更多详细信息,请参阅 使用 MSAL 在 Android 上启用跨应用 SSO 。
本指南假定你在应用程序 () 按照上述链接中的步骤启用中转身份验证,特别是 为代理生成重定向 URI ,并将 MSAL 配置为使用中转站 进行配置,并 验证中转站集成 进行测试。
如果未在应用程序中启用中转身份验证,请特别注意特定于Intune MSAL 配置。
Intune特定的 MSAL 环境配置
默认情况下,Intune将从Microsoft Entra公共环境中请求令牌。 如果应用程序需要非默认环境(例如主权云),则必须将以下设置添加到应用程序的 AndroidManifest.xml
。
设置后,输入的Microsoft Entra颁发机构将为应用程序颁发令牌。
这可确保正确强制实施Intune的身份验证策略。
<meta-data
android:name="com.microsoft.intune.mam.aad.Authority"
android:value="https://AAD authority/" />
警告
大多数应用不应设置 Authority 参数。 此外,未集成 MSAL 的应用程序 不得 在清单中包含此属性。
有关非Intune特定 MSAL 配置选项的详细信息,请参阅 Android Microsoft 身份验证库配置文件。
有关主权云的更多详细信息,请参阅 在国家云环境中使用 MSAL。
退出条件
- 是否已将 MSAL 集成到应用程序中?
- 是否通过生成重定向 URI 并在 MSAL 配置文件中设置它来启用代理身份验证?
- 是否在 中配置了Intune特定的 MSAL 设置
AndroidManifest.xml
? - 是否测试了中转身份验证、确认已将工作帐户添加到 Android 帐户管理器,并测试了其他 Microsoft 365 应用的 SSO?
- 如果实现了条件访问,是否同时测试了基于设备的 CA 和基于应用的 CA 来验证 CA 实现?
常见问题
ADAL 呢?
Microsoft以前的身份验证库, Azure Active Directory 身份验证库 (ADAL) 已 弃用。
如果应用程序已集成 ADAL,请参阅 更新应用程序以使用Microsoft身份验证库 (MSAL) 。 若要将应用从 ADAL 迁移到 MSAL,请参阅 将 Android ADAL 迁移到 MSAL 和 ADAL 与 MSAL 之间的差异。
建议在集成 Intune 应用 SDK 之前从 ADAL 迁移到 MSAL。
后续步骤
完成上述所有退出条件后,请继续学习第 3 阶段:使用 MAM 入门。