Azure Active Directory certificate-based authentication on Android
Android devices can use certificate-based authentication (CBA) to authenticate to Azure Active Directory using a client certificate on their device when connecting to:
- Office mobile applications such as Microsoft Outlook and Microsoft Word
- Exchange ActiveSync (EAS) clients
Configuring this feature eliminates the need to enter a username and password combination into certain mail and Microsoft Office applications on your mobile device.
This topic provides you with the requirements and the supported scenarios for configuring CBA on an iOS(Android) device for users of tenants in Office 365 Enterprise, Business, Education, US Government, China, and Germany plans.
This feature is available in preview in Office 365 US Government Defense and Federal plans.
Microsoft mobile applications support
|Azure Information Protection app|
|Intune Company Portal|
|Skype for Business|
|Word / Excel / PowerPoint|
The device OS version must be Android 5.0 (Lollipop) and above.
A federation server must be configured.
For Azure Active Directory to revoke a client certificate, the ADFS token must have the following claims:
http://schemas.microsoft.com/ws/2008/06/identity/claims/<serialnumber>(The serial number of the client certificate)
http://schemas.microsoft.com/2012/12/certificatecontext/field/<issuer>(The string for the issuer of the client certificate)
Azure Active Directory adds these claims to the refresh token if they are available in the ADFS token (or any other SAML token). When the refresh token needs to be validated, this information is used to check the revocation.
As a best practice, you should update your organization's ADFS error pages with the following information:
- The requirement for installing the Microsoft Authenticator on Android.
- Instructions on how to get a user certificate.
For more information, see Customizing the AD FS Sign-in Pages.
Some Office apps (with modern authentication enabled) send ‘prompt=login’ to Azure AD in their request. By default, Azure AD translates ‘prompt=login’ in the request to ADFS as ‘wauth=usernamepassworduri’ (asks ADFS to do U/P Auth) and ‘wfresh=0’ (asks ADFS to ignore SSO state and do a fresh authentication). If you want to enable certificate-based authentication for these apps, you need to modify the default Azure AD behavior. Set the ‘PromptLoginBehavior’ in your federated domain settings to ‘Disabled‘. You can use the MSOLDomainFederationSettings cmdlet to perform this task:
Set-MSOLDomainFederationSettings -domainname <domain> -PromptLoginBehavior Disabled
Exchange ActiveSync clients support
Certain Exchange ActiveSync applications on Android 5.0 (Lollipop) or later are supported. To determine if your email application does support this feature, contact your application developer.
If you want to configure certificate-based authentication in your environment, see Get started with certificate-based authentication on Android for instructions.