在 Android 上使用 Microsoft Entra 基于证书的联合身份验证

Android 设备可以使用基于证书的身份验证(CBA),在连接到 Microsoft Entra ID 时使用设备上的客户端证书进行身份验证。

  • Office 移动应用程序,例如 Microsoft Outlook 和 Microsoft Word
  • Exchange ActiveSync (EAS) 客户端

配置此功能无需在移动设备上的某些邮件和Microsoft Office 应用程序中输入用户名和密码组合。

Microsoft 移动应用程序支持

应用程序 支持
Azure 信息保护应用 检查标记表示对此应用程序的支持
Intune 公司门户 检查标记表示对此应用程序的支持
Microsoft Teams 检查标记表示对此应用程序的支持
OneNote(微软笔记应用) 检查标记表示对此应用程序的支持
OneDrive 检查标记表示对此应用程序的支持
展望 检查标记表示对此应用程序的支持
Power BI 检查标记表示对此应用程序的支持
Skype for Business 检查标记表示对此应用程序的支持
Word/Excel/PowerPoint 检查标记表示对此应用程序的支持
Yammer 检查标记表示对此应用程序的支持

实现要求

设备 OS 版本必须是 Android 5.0(Lollipop)及更高版本。

必须配置联合服务器。

若要Microsoft Entra ID 来吊销客户端证书,AD FS 令牌必须具有以下声明:

  • http://schemas.microsoft.com/ws/2008/06/identity/claims/<serialnumber> (客户端证书的序列号)
  • http://schemas.microsoft.com/2012/12/certificatecontext/field/<issuer> (客户端证书颁发者的字符串)

Microsoft Entra ID 将这些声明添加到刷新令牌(如果这些声明在 AD FS 令牌或任何其他 SAML 令牌中可用)。 需要验证刷新令牌时,此信息用于验证撤销状态。

最佳做法是,应使用以下信息更新组织的 AD FS 错误页:

  • 在 Android 上安装 Microsoft Authenticator 的要求。
  • 有关如何获取用户证书的说明。

有关详细信息,请参阅 自定义 AD FS 登录页

启用了新式身份验证的 Office 应用在请求中向 Microsoft Entra ID 发送“prompt=login”。 默认情况下,Microsoft Entra ID 将请求中的“prompt=login”转换为 AD FS 作为“wauth=usernamepassworduri”(要求 AD FS 执行 U/P 身份验证)和“wfresh=0”(要求 AD FS 忽略 SSO 状态并执行新的身份验证)。 如果要为这些应用启用基于证书的身份验证,则需要修改默认Microsoft Entra 行为。 将联合域设置中的“PromptLoginBehavior”设置为“Disabled”。 可以使用 New-MgDomainFederationConfiguration 执行此任务:

New-MgDomainFederationConfiguration -DomainId <domain> -PromptLoginBehavior "disabled"

Exchange ActiveSync 客户端支持

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

后续步骤

如果要在环境中配置基于证书的身份验证,请参阅 Android 上的基于证书的身份验证入门 ,获取相关说明。