Android 设备上 Microsoft Entra 基于证书的身份验证

Microsoft基于证书的身份验证受设备上预配的证书和外部安全密钥(如 YubiKeys)的支持。

先决条件

  • Android 版本必须是 Android 5.0(Lollipop)或更高版本。
  • 使用最新 MSAL 库的 Microsoft 第一方应用或 Microsoft Authenticator 可以执行 CBA。
  • 使用最新的 MSAL 库或与 Microsoft Authenticator 集成的第三方应用程序可以执行 CBA。

使用设备上的证书进行 CBA

客户可以使用自己选择的移动设备管理(MDM)在设备上预配证书。 最终用户必须先将设备注册到 MDM 并获取设备上预配的证书。 在设备上预配证书后,用户可以使用 CBA 进行身份验证。

在 Android 上的Microsoft应用上测试 YubiKey 的步骤:

  1. 打开 Outlook。
  2. 选择“添加帐户”并输入你的用户主体名称 (UPN)。
  3. 单击“继续” 。
  4. 选择“ 使用证书”或“智能卡”。
  5. 在对话框中选择 设备上的证书 。**
  6. 此时会显示证书选取器。
  7. 选择与用户帐户关联的证书。 单击“继续” 。
  8. 如果身份验证成功,则允许用户访问 Outlook 资源。

使用硬件安全密钥中证书进行 CBA

可以在硬件安全密钥等外部设备中预配证书并使用 PIN 来保护私钥访问。 Microsoft Entra ID 支持使用 YubiKey 进行 CBA。

硬件安全密钥中的证书的优势

带有证书的安全密钥:

  • 具有安全密钥的漫游性质,允许用户在不同的设备上使用相同的证书。
  • 使用 PIN 保护硬件,这使得它们具有防钓鱼性。
  • 使用 PIN 提供多重身份验证作为访问证书私钥的第二个因素。
  • 满足在单独的设备上进行 MFA 的行业要求。
  • 帮助将来验证可以存储多个凭据的位置,包括 Fast Identity Online 2 (FIDO2) 密钥。

在 Android 移动设备上使用 YubiKey 进行 Microsoft Entra CBA

Android 需要中间件应用程序才能使用证书支持智能卡或安全密钥。 为了支持具有 Microsoft Entra CBA 功能的 YubiKeys,YubiKey Android SDK 已集成到 Microsoft 代理代码中,可以通过最新的 Microsoft 身份验证库(MSAL)进行利用。

由于在 Android 移动设备上使用 YubiKey 进行 Microsoft Entra CBA 是通过最新的 MSAL 实现的,因此不需要 YubiKey Authenticator 应用即可获得 Android 支持。

在 Android 上的Microsoft应用上测试 YubiKey 的步骤:

  1. 安装 Microsoft Authenticator。
  2. 如果 YubiKey 具有 USB-C,请打开 Outlook 并插入 YubiKey。
  3. 选择“添加帐户”并输入你的用户主体名称 (UPN)。
  4. 单击“ 继续”,当系统要求访问 YubiKey 的权限时,单击“ 确定”。
  5. 选择“ 使用证书”或“智能卡”。
  6. 如果您正在使用支持 NFC 的 Yubikey,请将 Yubikey 放置到设备背面。
  7. 此时会显示自定义证书选取器。
  8. 选择与用户帐户关联的证书,然后单击“ 继续”。
  9. 输入 PIN 以访问 YubiKey,然后选择“ 解锁”。
  10. 如果要将 Yubikey 与 NFC 配合使用,请再次将 Yubikey 按住手机背面以验证 PIN。
  11. 身份验证成功后,可以访问 Outlook。

注释

对于流畅的 CBA 流,请在打开应用程序后立即插入 YubiKey,并在选择“ 使用证书或智能卡”链接之前接受 YubiKey 的同意对话框。 如果只想体验单个连接,请考虑让用户使用 USB 而不是 NFC 插入 YubiKey,只需在登录开始时完成一次。

对 Exchange ActiveSync 客户端的支持

支持 Android 5.0(Lollipop)或更高版本上的某些 Exchange ActiveSync 应用程序。 要确定电子邮件应用程序是否支持 Microsoft Entra CBA,请联系应用程序开发人员。

支持的Microsoft Entra 用例

Microsoft移动应用程序支持

应用程序 支持
Azure 信息保护应用
Company Portal
Microsoft Teams
Office(移动)
OneNote(微软笔记应用)
OneDrive
展望
Power BI
Skype for Business
Word/Excel/PowerPoint
Yammer
支持个人资料登录的 Edge 浏览器
托管主屏幕

浏览器

操作系统 设备端 Chrome 证书 Chrome 智能卡/安全密钥 设备端 Safari 证书 Safari 智能卡/安全密钥 设备端 Microsoft Edge 证书 Edge 智能卡/安全密钥
安卓

注释

虽然不支持 Edge 作为浏览器,但 Edge 作为配置文件(用于帐户登录)则是支持 Android 上的 CBA 的 MSAL 应用。

操作系统

操作系统 设备端证书/派生 PIV 智能卡/安全密钥
安卓 仅限支持的供应商

安全密钥提供商

提供者 安卓
YubiKey

排查硬件安全密钥中的证书问题

如果用户在 Android 设备和 YubiKey 上都有证书,会发生什么情况?

  • 如果用户在 Android 设备和 YubiKey 上都有证书,那么如果在用户单击使用证书或智能卡之前插入 YubiKey,用户将会看到 YubiKey 中的证书。
  • 如果用户单击“ 使用证书”或“智能卡”之前未插入 YubiKey,系统会要求用户在设备或物理智能卡上的证书之间进行选择。 如果用户在 设备上选择“证书”,则用户将在设备上显示证书。 如果用户选择物理智能卡上的证书,请插入或将 YubiKey 靠在背面,用户将可以看到 YubiKey 中的证书。

我的 YubiKey 在错误键入 PIN 三次后被锁定。 如何解决问题?

  • 用户应会看到一个对话框,告知尝试输入 PIN 的次数过多。 在后续尝试选择“使用证书或智能卡”时,也会弹出此对话框。
  • 用户应联系管理员重置 YubiKey PIN。

我已安装了Microsoft身份验证器,但仍看不到使用 YubiKey 执行基于证书的身份验证的选项。

在安装 Microsoft Authenticator 之前,请卸载公司门户,并在Microsoft Authenticator 安装后安装它。

Microsoft Entra CBA 是否通过 NFC 支持 YubiKey?

Microsoft Entra CBA 支持将 YubiKey 与 USB 和 NFC 配合使用。

此问题的原因与证书缓存有关。 解决方法是,单击“取消并重启登录流”将允许用户选择新的证书并成功登录。

使用 YubiKey 进行的 Microsoft Entra CBA 失败。 哪些信息有助于调试问题?

  1. 打开Microsoft Authenticator 应用,单击右上角的三个点图标,然后选择“ 发送反馈”。
  2. 单击 “遇到问题?”
  3. 对于“选择一个选项”,请选择“添加或登录帐户”
  4. 描述要添加的任何详细信息。
  5. 单击右上角的发送箭头。 请注意出现的对话框中提供的代码。

后续步骤